1Regexp: (\.//)?(((child::)?((\i\c*:)?(\i\c*|\*)))|\.)(/(((child::)?((\i\c*:)?(\i\c*|\*)))|\.))*(\|(\.//)?(((child::)?((\i\c*:)?(\i\c*|\*)))|\.)(/(((child::)?((\i\c*:)?(\i\c*|\*)))|\.))*)*
2a: Ok
3a12/b312/b312/b312/b312/b312/b312/b312/b312/b312/b312/b312/b3: Ok
4*: Ok
5a|b: Ok
6.//a:b: Ok
7a/b/c: Ok
8a/*/b: Ok
9a:*/b:*/c:*: Ok
10child::a/child::b:*: Ok
11child::a/child::b:*|a/*/b|.//a:b: Ok
121: Fail
131ab: Fail
14a:1: Ok
15@a: Fail
16ancestor::a: Ok
17Regexp: (\.//)?(((child::)?(([\i-[:]][\c-[:]]*:)?([\i-[:]][\c-[:]]*|\*)))|\.)(/(((child::)?(([\i-[:]][\c-[:]]*:)?([\i-[:]][\c-[:]]*|\*)))|\.))*(\|(\.//)?(((child::)?(([\i-[:]][\c-[:]]*:)?([\i-[:]][\c-[:]]*|\*)))|\.)(/(((child::)?(([\i-[:]][\c-[:]]*:)?([\i-[:]][\c-[:]]*|\*)))|\.))*)*
18a: Ok
19a12/b312/b312/b312/b312/b312/b312/b312/b312/b312/b312/b312/b3: Ok
20*: Ok
21a|b: Ok
22.//a:b: Ok
23a/b/c: Ok
24a/*/b: Ok
25a:*/b:*/c:*: Ok
26child::a/child::b:*: Ok
27child::a/child::b:*|a/*/b|.//a:b: Ok
281: Fail
291ab: Fail
30a:1: Fail
31@a: Fail
32ancestor::a: Fail
33