ok, I found an error in my second xpath expression. After getting the list of elements having a uid attribute, I used "//[EMAIL PROTECTED] = myuid]" on it. That started searching for elements at the root again, what I wanted to avoid.
Now I'm using "[EMAIL PROTECTED] = myuid]" instead, what also doesn't work properly. The problem is, that in XPath::findChildren, a tester is used to check all child elements of the context node if the element's names match (since I'm using a *, all elements match). It uses child = context->getFirstChild() to get the first element, and then child = child->nextSibling() to iterate thru the elements. But this nextSibling() returns the next sibling in the original document, not the next element in the nodeset! so only the two products are found (because they're siblings in the document) but not the articles (which would be in the nodeset, but are children of the products in the document) is there a workaround for this problem? bye King Nak -- View this message in context: http://www.nabble.com/Evaluating-XPath-on-NodeSet-tf2119970.html#a5848092 Sent from the Xalan - C - Users forum at Nabble.com.