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:

> ------------------------------
> ENTITIES: DOM VERSUS XDM
> ------------------------------
> 
> This XML document uses an entity:
> 
>     <root>
>         hello if A &lt; B then ... world
>     </root>
> 
> DOM and XDM represent entities differently: 
> 
>    - A DOM tree will have a node for the entity, as evidenced by 
>      the fact that the DOM API has a method for accessing entities [4]. 
>      Here is a graphic I created to show the DOM tree of the XML document:

To cite again from [4]: "Moreover, the XML processor may completely 
expand references to entities while building the structure model, 
instead of providing EntityReference objects".

That is also my experience of the DOM implementations in browsers like 
Mozilla, Opera or Safari, the following Javascript sample

var doc = new DOMParser().parseFromString([
   '<!DOCTYPE root [',
   '<!ENTITY foo "<bar>foobar</bar>">]>',
   '<root>&foo;</root>'
].join('\r\n'), 'application/xml');
var root = doc.documentElement;
root.childNodes.length + '; ' + root.firstChild.nodeType + '; ' + 
root.firstChild.nodeName

outputs "1; 1; bar" so the parser has resolved the entity reference and 
put the "bar" element as the child of the "root" element into the DOM tree.


-- 

	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