<?xml version="1.0"?> | |
<XPath xmlns:bar="http://example.org/bar" xmlns:baz="http://example.org/baz" xmlns:foo="http://example.org/foo" xml:lang="en-ie"> | |
(//. | //@* | //namespace::*) | |
[ | |
<!-- only text, elements, or directly-used namespace nodes but not foo:Something --> | |
ancestor-or-self::bar:Something and | |
not (self::foo:Something) and | |
(self::text() or | |
(namespace-uri() != "") or | |
(string(self::node()) = namespace-uri(parent::node()))) | |
] | |
</XPath> |