Re: [xml-dev] Holographic XML

From
Beck, Jeff (NIH/NLM/NCBI) [E] <>
To
Dimitre Novatchev <>, Nicholas Sushkin <>, "" <>
Date
2010-09-08T20:29:30Z
ID
<>
Thread
Re: [xml-dev] Holographic XML
>> In XPath, each
>> element can be addressed with two coordinates, the first being the element
>> path (/document/book/title/chapter), the second being the position ([5])
> 
> Just the pair:
> 
> (count(ancestor::node()), count(preceding::node()))
> 

But, no two nodes should be able to have the same number of
preceding::node()

So why do you need the pair? Why not just count(preceding::node()))?



On 9/8/10 4:20 PM, "Dimitre Novatchev" <> wrote:

>> XML structures can be addressed with XPath. XPath model is essentially two-
>> dimensional, as it has orthogonal depth and breadth dimensions.
> 
> Correct.
> 
>> Depth is the
>> nesting of elements
> 
> Correct.
> 
>> and breadth is the number of siblings.
> 
> Wrong.
> 
> You can easily find more than one element at a given depth and having
> the same number of (total, preceding or following) siblings.
> 
> One way to express the breadth dimension correctly is :
> 
>   count(preceding::node())
> 
> Do note: this is the count of *all preceding nodes*, not just the
> count of all preceding siblings.
> 
> 
>> In XPath, each
>> element can be addressed with two coordinates, the first being the element
>> path (/document/book/title/chapter), the second being the position ([5])
> 
> Just the pair:
> 
> (count(ancestor::node()), count(preceding::node()))
>