OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] The subsetting has begun

[ Lists Home | Date Index | Thread Index ]

On Wednesday 26 February 2003 19:00, K. Ari Krupnikov wrote:

> <!DOCTYPE A [
>   <!ATTLIST D id ID #IMPLIED>
>   <!ATTLIST D ref IDREF #IMPLIED>
> ]>
> <A>
>   <B>
>     <D id="d1">
>       <any> children D might have, just to make it more interesting</any>
>     </D>
>   </B>
>   <C>
>     <D ref="d1"/>
>   </C>
> </A>

Ah, but that's implementing a form of pointer on top of the underlying tree 
structure by nominating a part of the tree - that, otherwise, would mean 
nothing but that 'id' equalled 'd1' - and giving it some semantics.

Yet again, unless your program explicitly went to the effort of matching up 
the id references itself, any parser would still show the D within B and the 
D within C to be different elements. Even in XPath, they are different. The 
DTD declares that the second D is linked to the first in some way, but 
doesn't say that this is supposed to be an identity constraint, so it still 
doesn't make it a DAG, it merely potentially *suggests* a DAG viewpoint of 
the tree :-)

It would be a DAG if, instead of the second D, you could write:

<?xml-ptr d1?>

...with <?xml-ptr?> being defined as being substituted for the element whose 
ID is d1 during parsing.

But anyway! I'm splitting hairs and have been doing so all day! Stop baiting 
me! :-)

ABS

-- 
A city is like a large, complex, rabbit
 - ARP




 

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

Copyright 2001 XML.org. This site is hosted by OASIS