Thanks, Liam. No, not homework, just me futzing about. I'll experiment a bit more -- and thanks for the suggestion.
-Thufir
On 2019-10-07 12:25 a.m., Liam R. E. Quin wrote:
On Sun, 2019-10-06 at 21:28 -0700, thufir wrote:
Do these have the same meaning? Might there be a subtle distinction, or might they be read differently but functionally identical?
Are we doing your homework? :-) :-)
//* is the same as /descendant-or-self::* //book means, search the whole database to find "book" elements.
/*/book meeans make a list of all children of the top-level node, and find book elements that are children of items in that list.
So, given <boy><reading><a><book> </book></a></reading></boy> //book will find one node, and /*/book won't find any.
They're equally efficient, at least as used above?
They are doing different things. To measure efficiency, use a much larger database than the XQuery use cases example :)
You may find Priscilla Walmsley's XQuery book helpful in learning XPath version 3.
Best,
Liam