So apparently when libxml2 evaluates an XPath expression that is
relative it searches everywhere in the tree, as if the expression
started with "//". For instance

~/tmp$ cat test.xml
<?xml version="1.0"?>
<x>
        <y>Test</y>
</x>
~/tmp$ xmllint --xpath y test.xml
<y>Test</y>

My understanding of XPath says that "y" matches all the child elements
of the context node named y. Since the context is the root, this
should match no elements. What's going on here?

PS this came up because of an XMLStarlet bug report:
http://sourceforge.net/tracker/index.php?func=detail&aid=3527850&group_id=66612&atid=515106
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
xml@gnome.org
https://mail.gnome.org/mailman/listinfo/xml

Reply via email to