[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] DOM versus XDM: Differences in handling CDATA sections,entities, and concurrency
- From: Martin Honnen <Martin.Honnen@gmx.de>
- To: "Costello, Roger L." <costello@mitre.org>
- Date: Fri, 12 Nov 2010 18:04:10 +0100
Costello, Roger L. wrote:
> My understanding is that an XML document is first processed by an XML
> parser, which creates an in-memory tree representation of the XML
> document. Then, an application such as an XML Schema validator or an
> XSLT processor operates on the in-memory tree representation. Here is
> a simple graphic I created to show this:
>
> http://www.xfront.com/DOM-versus-XDM/How-an-XML-document-is-processed.gif
There are XML parsers respectively parser approaches that don't create a
tree model at all, like the SAX push parser approach or like the
XmlReader pull parser approach in the .NET framework. Even validation
works with those approaches without the need for a tree.
> It is my understanding that the in-memory model created by different
> XML parsers may be different, depending on whether the XML parser
> creates a DOM or XDM in-memory model.
There are far more tree models than those two, in the .NET world there
is the LINQ to XML tree model (implemented by
System.Xml.Linq.XDocument/XElement/XNode) for instance, in the Java
world there is JDOM, XOM.
> Here are two places where differences arise:
>
> - CDATA sections - Entities
The W3C DOM and the W3C XQuery/XSLT/XPath model have more differences,
for instance the DOM has DocumentType nodes
http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-412266927.
> As mentioned, there are two ways to model XML documents:
>
> - Document Object Model (DOM) [1]
>
> - XML Data Model (XDM) [2]
There are more, I named a few.
> ------------------------------ ENTITIES: DOM VERSUS XDM
> ------------------------------
>
> This XML document uses an entity:
>
> <root> hello if A < B then ... world </root>
I don't see an entity, I see an entity reference.
--
Martin Honnen
http://msmvps.com/blogs/martin_honnen/
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]