=>(\.//)?(((child::)?((\i\c*:)?(\i\c*|\*)))|\.)(/(((child::)?((\i\c*:)?(\i\c*|\*)))|\.))*(\|(\.//)?(((child::)?((\i\c*:)?(\i\c*|\*)))|\.)(/(((child::)?((\i\c*:)?(\i\c*|\*)))|\.))*)* a a12/b312/b312/b312/b312/b312/b312/b312/b312/b312/b312/b312/b3 * a|b .//a:b a/b/c a/*/b a:*/b:*/c:* child::a/child::b:* child::a/child::b:*|a/*/b|.//a:b 1 1ab a:1 @a ancestor::a # # the previous regexp from the Schemas for Schemas was broken # here is the fixed one: # http://lists.w3.org/Archives/Public/www-xml-schema-comments/2002AprJun/0005.html # =>(\.//)?(((child::)?(([\i-[:]][\c-[:]]*:)?([\i-[:]][\c-[:]]*|\*)))|\.)(/(((child::)?(([\i-[:]][\c-[:]]*:)?([\i-[:]][\c-[:]]*|\*)))|\.))*(\|(\.//)?(((child::)?(([\i-[:]][\c-[:]]*:)?([\i-[:]][\c-[:]]*|\*)))|\.)(/(((child::)?(([\i-[:]][\c-[:]]*:)?([\i-[:]][\c-[:]]*|\*)))|\.))*)* a a12/b312/b312/b312/b312/b312/b312/b312/b312/b312/b312/b312/b3 * a|b .//a:b a/b/c a/*/b a:*/b:*/c:* child::a/child::b:* child::a/child::b:*|a/*/b|.//a:b 1 1ab a:1 @a ancestor::a