On Sunday, June 28, 2015 at 5:02:19 PM UTC-4, Denis McMahon wrote: > On Sun, 28 Jun 2015 09:46:36 +0200, Stefan Behnel wrote: > > > Denis McMahon schrieb am 26.06.2015 um 09:44: > >> xml data is an unordered list, and are trying to assign an order to it. > >> > >> If the xml data was ordered, either each tag would be different, or > >> each tag would have an attribute specifying a sequence number. > > > > XML is not unordered. The document order is well defined and entirely > > obvious from the data. Whether this order is relevant and has a meaning > > or not is, however, not part of XML itself but is left to the semantics > > of the specific document format at hand. Meaning, XML document formats > > can choose to ignore that order and define it as irrelevant. That > > doesn't mean it's not there for a given document, but it may mean that a > > re-transmission of the same document would be allowed to use a different > > order without changing the information. > > > > This property applies to pretty much all structured data formats and not > > just XML, by the way, also to CSV and other tabular formats. > > The point I am trying to make to OP is that the following two XML > fragments define the same data: > > <things> > <thing>string 1</thing> > <thing>string 2</thing> > <thing>string 3</thing> > </things> > > and: > > <things> > <thing>string 3</thing> > <thing>string 2</thing> > <thing>string 1</thing> > </things> > > Each <thing> is just a member of the collection things, the xml does not > contain sufficient information to state that <things> is an ordered > collection containing a specific sequence of <thing>.
You are right that XML does not specify that <things> is an ordered collection. But XML does preserve the order of the children. There are many XML schema that rely on XML's order-preserving nature. > > Mechanisms such as node.firstChild and node.getChild(x) are all very well > for manipulating the xml, but any specific ordering of the original data > should be carried out by using an appropriate attribute of the ordered > data elements at the point where the xml representation is created. > > -- > Denis McMahon, denismfmcma...@gmail.com -- https://mail.python.org/mailman/listinfo/python-list