- From: Joseph M. Reagle Jr. <reagle@w3.org>
- Date: Wed, 07 Mar 2001 15:18:06 -0500
- To: "IETF/W3C XML-DSig WG" <w3c-ietf-xmldsig@w3.org>
As already mentioned, the definition of ds:KeyInfo uses a (1,unbounded) choices over mandatory elements to emulate an unordered set of optional elements. On hindsight this appears to be a bad choice for a couple reasons. First, it can make derivations difficult as the optionality can not be easily constrained since it is "simulated." Second, I thought an unordered list was preferable but now it seems preferable to know when you are going to see these elements (e.g., what's the point of having these things in a random order, particularly elements from an external namespace). Third, with our present approach of using choice, I can't think of a way to constrain KeyValue to occurring once. (See examples below of how this can be expressed). The only down side is that this sort of structure permits and empty KeyInfo, which Merlin just suggested a fix for given use of "choice." Any thoughts? __ <element name="KeyInfo" type="ds:KeyInfoType"/> <complexType name="KeyInfoType" mixed="true"> <sequence> <element ref="ds:KeyName" minOccurs="0" maxOccurs="unbounded"/> <element ref="ds:KeyValue" minOccurs="0" maxOccurs="1"/> <element ref="ds:RetrievalMethod" minOccurs="0" maxOccurs="unbounded"/> <element ref="ds:MgmtData" minOccurs="0" maxOccurs="unbounded"/> <element ref="ds:PGPData" minOccurs="0" maxOccurs="unbounded"/> <element ref="ds:SPKIData" minOccurs="0" maxOccurs="unbounded"/> <element ref="ds:X509Data" minOccurs="0" maxOccurs="unbounded"/> <any processContents="lax" namespace="##other" minOccurs="0" maxOccurs="unbounded"/> <!-- (0,unbounded) elements from (0,unbounded) namespaces --> </sequence> <attribute name="Id" type="ID" use="optional"/> </complexType> <!ELEMENT KeyInfo (#PCDATA|KeyName*|KeyValue?|RetrievalMethod*| X509Data*|PGPData*|SPKIData*|MgmtData* %KeyInfo.ANY;) > <!ATTLIST KeyInfo Id ID #IMPLIED > [1] http://lists.w3.org/Archives/Public/w3c-ietf-xmldsig/2001JanMar/0122.html __ Joseph Reagle Jr. http://www.w3.org/People/Reagle/ W3C Policy Analyst mailto:reagle@w3.org IETF/W3C XML-Signature Co-Chair http://www.w3.org/Signature W3C XML Encryption Chair http://www.w3.org/Encryption/2001/
Received on Wednesday, 7 March 2001 15:21:14 UTC