|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XPath brain teaser
At 08:56 PM 8/26/2003, Richard Tobin wrote:
> >This is easier to understand if you think of it in terms of set construction
> >and iterators. The two expressions with abbreviations eliminated are:
> >
> >/descendant-or-self::node()/para[1]
> >/descendant::para[1]
>
>You might ask why // means the first of these, rather than the more
>obvious second. The answer (I think) is precisely so that expressions
>like //para[1] will mean what they do; it's more common to want to
>treat the first paragraph in each section specially than the first
>paragraph in the while document.
Another reason is that we wanted the definition of // to work for both
elements and attributes:
//@id
//para
The expanded definition of // works for both these cases. It's rather hard
to think of anything based on the XPath axes that does this any better.
Jonathan
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








