Lists Home |
Date Index |
John Cowan wrote:
> > It would have been wise if the WXS designers had noted existing
> > standards and used "SET" rather than "SEQUENCE" when defining WXS...
> There's a reason behind that: the schema-centric viewpoint on
> this point is opposed to the data-centric viewpoint. In
> general, if a schema says that the order is prescribed (a
> sequence), that means that there is no significance in the
> order. On the other hand, if the schema does not prescribe
> an order, then there is typically significance in the
> ordering that actually appears in the data. WXS takes a
> schema-centric viewpoint; ASN.1 takes a data-centric one.
Not so when translating a WXS schema into ASN.1 by using X.694.
**Roughly speaking**, WXS "sequence"s are mapped to ASN.1 SEQUENCEs, while
WXS "all"s are mapped to ASN.1 SEQUENCEs plus explicit information about the
order. The order is made a part of the abstract type definition and so is
made available to the ASN.1 application.
An ASN.1 SET is very different from a WXS "all". While an "all" can be
considered as a variable-order sequence (note that I am not saying
"unordered"), a SET is inherently unordered at the abstract syntax level, so
its encodings may even be ordered, since the order has no significance.
This is exactly what happens in canonical encoding rules such as DER: since
the order of the components of a SET (or SET OF) does not matter, the order
is made *fixed* in the encodings. In other words, since the order carries
no information for a SET, it is "pure entropy" that is removed from
canonical encodings. ASN.1 does not have, per se, an equivalent of "all",
that is why X.694 maps "all"s in the way I said above.
> In politics, obedience and support John Cowan
> are the same thing. --Hannah Arendt http://www.ccil.org/~cowan
> The xml-dev list is sponsored by XML.org
> <http://www.xml.org>, an initiative of OASIS
The list archives are at http://lists.xml.org/archives/xml-dev/
To subscribe or unsubscribe from this list use the subscription