XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[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

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 &lt; 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]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS