[Home] [By Thread] [By Date] [Recent Entries]

  • From: "Beck, Jeff (NIH/NLM/NCBI) [E]" <beck@n...>
  • To: Dimitre Novatchev <dnovatchev@g...>, Nicholas Sushkin<nsushkin@o...>, "xml-dev@l..." <xml-dev@l...>
  • Date: Wed, 8 Sep 2010 16:29:30 -0400

>> 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" <dnovatchev@g...> 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()))
> 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member