[Bug 7031] XSD 1.1 doesn't support conversion of xs:sequence to xs:all because xs:all can't contain groups references

http://www.w3.org/Bugs/Public/show_bug.cgi?id=7031


Noah Mendelsohn <noah_mendelsohn@us.ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |noah_mendelsohn@us.ibm.com




--- Comment #4 from Noah Mendelsohn <noah_mendelsohn@us.ibm.com>  2009-07-13 19:06:34 ---
To avoid confusion, let me say first that I have no problem at all with the
direction adopted by the working group with respect to bug 7031.  This comment
is provided just in case it is of interest.

>From the original bug report:

> Many of us expect that, when 1.1. is available,
> perhaps the majority of Schemas will be converted
> to use xs:all in place of xs:sequence, since the
> imposition of sequencing into "data-oriented" XML
> is usually a purely technical device that feels
> "unnatural" to users.


Yes, but do note that the order of elements in an XML infoset is significant,
at least in principle, regardless of what the schema says.  So, if you write a
content model:

<all>
  <element ref="a"/>
  <element ref="b"/>
</all>

That says that both:

   <a/> <b/>

and

   <b/> <a/>

are valid.  It does NOT say that both of those two documents should be treated
as meaning the same thing.  The elements in an XML infoset are considered
ordered, whether or not validation is performed.

This is among the reasons that certain data-oriented applications of XML force
a canonical order in cases where, to the application, the order of the "fields"
is truly not significant.

The fact that XSD has limitations in support of <all> is indeed another reason,
and I infer that those working on FpML have made the (reasonable) decision that
it would be convenient to allow all possible XML orderings in cases where
multiple fields are to be specified.  The proposed change to XSD will indeed
likely be useful when such a choice is made, but at the XML level, the order of
the elements will remain significant.

Some years ago, the XSD working group got a request, from the Query working
group I think, to invent an xsd:annotation that could be used to signal ("I
know XML considers the order of these elements to be significant, but trust me,
it isn't.")  The intention was to signal to database mapping software that,
yes, the obvious mapping to a relational database, in which column order is not
maintained, is appropriate.  The Schema working group did a bit of work on
specifying such an attribute (see: http://www.w3.org/XML/Group/2000/11/lc200),
but by the time progress was made the requirement seemed to have gone away, and
the work was dropped.  To research the history of this, I suggest searching the
schema interest group mailing list with the string "LC-200", which is a
reference to the issue name under which this was discussed.  

Again, this comment is intended to fill in some background, not to question the
proposed direction of the working group with respect to bug 7031.

Noah


-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Monday, 13 July 2009 19:06:44 UTC