Lists Home |
Date Index |
Elliotte Harold wrote:
> There are many different possible tree models for XML. The deeper you
> look the more differences you find between DOM, the XML Infoset, XPath
> 1.0, XPath 2.0, and other tree-based data models. But it doesn't stop
> there. There are non-tree-based models of XML documents, and these may
> also be profitably used in the right circumstances. XML is defined
> such that it is possible to represent a well-formed document as a
> tree. It is by no means necessary to do so.
Well, the thread is on XML-aware programming languages, and every such
thing needs to define a data model.
No language designer can seriously claim that his language is the right
one for all circumstances.
But, to process XML in a program, you can never do without the tree view.
> SAX exposes probably the most popular non-tree model, but it's hardly
> the only one. Indeed there are non-event, non-tree models as well. Some
Aha, event-based and in which order are the events called?
> people have shredded XML documents into relational tables. That works
> too. None of these models are more correct than any of the others.
> It's simply a question of which is most useful for the problem at hand
> given the available tools.
But tools bring you only this far, and a programming language is
providing more coherence than using a set of ill-matching tools. At
least that is the assumption under which to design an XML aware
programming language, and I find it valid.