<?xml version=“1.0”?> <XPath xmlns:bar=“example.org/bar” xmlns:baz=“example.org/baz” xmlns:foo=“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>