xml - has - xpath select node with child node value

XPath to get all child elements except one with specific name? (2)

How do I target all elements in a document except a particular element name?

For example I want to exclude the terminate elements. They can occur throughout the document.

     <terminate attr="1" />
         The brown fox jumps over the fence. 

I've tried using the not(..) operator without success likely because I'm using it wrong.

And frankly trying to Google 'not' is tough!

If you are using XPath 2.0 you can use

/root/* except /root/terminate

Which does what you would expect. It matches for nodes that exist in the first sequence but not the second.

XPath 2.0 Specification - except operator

The following xpath should work


Also, i think you can do it with this as well