1<?xml version="1.0"?>
2<XPath xmlns:bar="http://example.org/bar" xmlns:baz="http://example.org/baz" xmlns:foo="http://example.org/foo" xml:lang="en-ie">
3    (//. | //@* | //namespace::*)
4    [
5              <!-- only text, elements, or directly-used namespace nodes but not foo:Something -->
6              ancestor-or-self::bar:Something  and
7              not (self::foo:Something)  and
8              (self::text()  or
9               (namespace-uri() != "")  or
10               (string(self::node()) = namespace-uri(parent::node())))
11    ]
12</XPath>
13