blob: e40bb5b6d357f671a8bf933446bfdcafb553c9a7 [file] [log] [blame]
<!-- These tests check whether <xpath> matches the <tree>; they make
no statement as to *what* gets matched. New tests should be added
to the end of this document; there is no other form of ID for the
tests except for their order. -->
<tests>
<test>
<xpath>//mu[@xml:id="id1"]//rho[@title][@xml:lang="en-GB"][following-sibling::*[position()=1]][following-sibling::rho[@object="this.nodeValue"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/epsilon[@object][@xml:lang="no-nb"][not(child::node())][following-sibling::alpha[@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::phi[starts-with(concat(@content,"-"),"_blank-")][not(following-sibling::*)]/iota[@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::psi[@xml:lang="en"][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::zeta[@insert][@xml:lang="en-GB"][@xml:id="id6"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/lambda[@xml:lang="en"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::delta[contains(concat(@object,"$"),"se$")][preceding-sibling::*[position() = 1]]//mu[@attrib][@xml:lang="en-GB"]/omicron[contains(concat(@false,"$"),"lse$")][@xml:id="id8"][not(preceding-sibling::*)][not(child::node())][following-sibling::beta[@xml:id="id9"][not(following-sibling::*)]/rho[contains(concat(@attr,"$"),"100%$")][not(preceding-sibling::*)][following-sibling::tau[@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=3]][following-sibling::*[@xml:lang="en-US"][@xml:id="id10"][not(child::node())][following-sibling::alpha[contains(concat(@att,"$"),"rue$")][following-sibling::omicron[@xml:lang="no"][@xml:id="id11"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]//omicron[contains(concat(@abort,"$"),"tt-value$")][@xml:lang="en"]/upsilon[starts-with(concat(@string,"-"),"100%-")][@xml:lang="no-nb"][@xml:id="id12"]]]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<mu xml:id="id1">
<rho title="123456789" xml:lang="en-GB"/>
<rho object="this.nodeValue" xml:id="id2">
<epsilon object="solid 1px green" xml:lang="no-nb"/>
<alpha xml:lang="no" xml:id="id3"/>
<phi content="_blank">
<iota xml:lang="no" xml:id="id4"/>
<psi xml:lang="en" xml:id="id5"/>
<zeta insert="true" xml:lang="en-GB" xml:id="id6">
<lambda xml:lang="en" xml:id="id7"/>
<delta object="false">
<mu attrib="another attribute value" xml:lang="en-GB">
<omicron false="false" xml:id="id8"/>
<beta xml:id="id9">
<rho attr="100%"/>
<tau xml:lang="no"/>
<any xml:lang="en-US" xml:id="id10"/>
<alpha att="true"/>
<omicron xml:lang="no" xml:id="id11">
<omicron abort="this-is-att-value" xml:lang="en">
<upsilon string="100%" xml:lang="no-nb" xml:id="id12">
<green>This text must be green</green>
</upsilon>
</omicron>
</omicron>
</beta>
</mu>
</delta>
</zeta>
</phi>
</rho>
</mu>
</tree>
</test>
<test>
<xpath>//pi[@xml:lang="no"][@xml:id="id1"]//iota[@attribute][@xml:id="id2"][not(following-sibling::*)]/phi[@object][@xml:id="id3"][not(following-sibling::*)]//pi[starts-with(concat(@number,"-"),"another attribute value-")][not(preceding-sibling::*)][not(following-sibling::*)]//xi[@xml:id="id4"][not(preceding-sibling::*)]/xi[@xml:id="id5"]/eta[@insert][@xml:lang="en"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::omega[@xml:lang="no-nb"][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::nu[following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@desciption][@xml:id="id8"]/kappa[not(preceding-sibling::*)]/beta[starts-with(concat(@insert,"-"),"100%-")][not(child::node())][following-sibling::eta[starts-with(concat(@token,"-"),"content-")][not(following-sibling::*)]//pi[@and="_blank"][@xml:lang="no"][@xml:id="id9"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@xml:id="id10"]/psi[starts-with(@and,"another attribut")][@xml:lang="en"][@xml:id="id11"][not(preceding-sibling::*)][not(child::node())][following-sibling::omega[@title="attribute"][following-sibling::eta[@or="solid 1px green"][@xml:id="id12"][following-sibling::lambda[@xml:lang="no"][@xml:id="id13"][following-sibling::theta[@xml:lang="nb"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]/epsilon[@object][@xml:id="id14"][not(following-sibling::*)][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<pi xml:lang="no" xml:id="id1">
<iota attribute="this-is-att-value" xml:id="id2">
<phi object="attribute-value" xml:id="id3">
<pi number="another attribute value">
<xi xml:id="id4">
<xi xml:id="id5">
<eta insert="another attribute value" xml:lang="en" xml:id="id6"/>
<omega xml:lang="no-nb" xml:id="id7"/>
<nu/>
<phi desciption="_blank" xml:id="id8">
<kappa>
<beta insert="100%"/>
<eta token="content">
<pi and="_blank" xml:lang="no" xml:id="id9"/>
<eta xml:id="id10">
<psi and="another attribute value" xml:lang="en" xml:id="id11"/>
<omega title="attribute"/>
<eta or="solid 1px green" xml:id="id12"/>
<lambda xml:lang="no" xml:id="id13"/>
<theta xml:lang="nb">
<epsilon object="123456789" xml:id="id14">
<green>This text must be green</green>
</epsilon>
</theta>
</eta>
</eta>
</kappa>
</phi>
</xi>
</xi>
</pi>
</phi>
</iota>
</pi>
</tree>
</test>
<test>
<xpath>//pi[starts-with(@attribute,"attribute val")][@xml:lang="en-US"][@xml:id="id1"]/upsilon[starts-with(concat(@attribute,"-"),"this.nodeValue-")][not(preceding-sibling::*)][not(following-sibling::*)]//xi[@xml:lang="no-nb"][@xml:id="id2"][not(following-sibling::*)]/epsilon[following-sibling::epsilon[contains(@attrib,"10")][preceding-sibling::*[position() = 1]][following-sibling::xi[preceding-sibling::*[position() = 2]]//lambda[@xml:lang="en"][@xml:id="id3"][not(child::node())][following-sibling::eta[@insert][preceding-sibling::*[position() = 1]][following-sibling::omega[@token][@xml:lang="nb"][not(child::node())][following-sibling::kappa[starts-with(concat(@object,"-"),"this.nodeValue-")][@xml:lang="no-nb"][@xml:id="id4"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::xi[contains(@true,"e")][@xml:id="id5"][not(child::node())][following-sibling::phi[@xml:lang="nb"][@xml:id="id6"][preceding-sibling::*[position() = 5]][not(child::node())][following-sibling::nu[following-sibling::*[position()=1]][following-sibling::zeta[starts-with(concat(@object,"-"),"attribute-")]//kappa[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::chi[@xml:lang="nb"][following-sibling::theta[@xml:lang="no"][following-sibling::*[position()=1]][following-sibling::xi[contains(concat(@name,"$"),"789$")][@xml:lang="no"]/tau[@xml:lang="en"][not(preceding-sibling::*)]/beta[@xml:lang="en-GB"][@xml:id="id7"][not(following-sibling::*)]][position() = 1]][position() = 1]]]]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<pi attribute="attribute value" xml:lang="en-US" xml:id="id1">
<upsilon attribute="this.nodeValue">
<xi xml:lang="no-nb" xml:id="id2">
<epsilon/>
<epsilon attrib="100%"/>
<xi>
<lambda xml:lang="en" xml:id="id3"/>
<eta insert="false"/>
<omega token="content" xml:lang="nb"/>
<kappa object="this.nodeValue" xml:lang="no-nb" xml:id="id4"/>
<xi true="true" xml:id="id5"/>
<phi xml:lang="nb" xml:id="id6"/>
<nu/>
<zeta object="attribute">
<kappa xml:lang="nb"/>
<chi xml:lang="nb"/>
<theta xml:lang="no"/>
<xi name="123456789" xml:lang="no">
<tau xml:lang="en">
<beta xml:lang="en-GB" xml:id="id7">
<green>This text must be green</green>
</beta>
</tau>
</xi>
</zeta>
</xi>
</xi>
</upsilon>
</pi>
</tree>
</test>
<test>
<xpath>//rho[@xml:id="id1"]/xi[@src][@xml:lang="nb"][@xml:id="id2"][not(following-sibling::*)]//eta[not(preceding-sibling::*)][not(following-sibling::*)]//mu[@xml:id="id3"][not(child::node())][following-sibling::omega[starts-with(@name,"this.nodeVal")]//rho[not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[contains(@attrib," gree")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/lambda[starts-with(concat(@insert,"-"),"100%-")][@xml:lang="no"][not(following-sibling::*)]/gamma[starts-with(@attrib,"attribu")][@xml:lang="en-GB"][not(child::node())][following-sibling::delta[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::sigma[starts-with(concat(@number,"-"),"_blank-")][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][following-sibling::omega[starts-with(concat(@false,"-"),"this-")][not(following-sibling::*)]/epsilon[starts-with(concat(@true,"-"),"attribute-")]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<rho xml:id="id1">
<xi src="_blank" xml:lang="nb" xml:id="id2">
<eta>
<mu xml:id="id3"/>
<omega name="this.nodeValue">
<rho/>
<nu attrib="solid 1px green">
<lambda insert="100%" xml:lang="no">
<gamma attrib="attribute" xml:lang="en-GB"/>
<delta xml:lang="en-US"/>
<sigma number="_blank"/>
<omega false="this-is-att-value">
<epsilon true="attribute-value">
<green>This text must be green</green>
</epsilon>
</omega>
</lambda>
</nu>
</omega>
</eta>
</xi>
</rho>
</tree>
</test>
<test>
<xpath>//rho[@xml:lang="no-nb"]//tau[@attr][not(preceding-sibling::*)]/alpha[@xml:lang="en-GB"][following-sibling::*[position()=6]][not(child::node())][following-sibling::phi[starts-with(@number,"attribute val")][preceding-sibling::*[position() = 1]][following-sibling::psi[preceding-sibling::*[position() = 2]][following-sibling::phi[not(child::node())][following-sibling::psi[@xml:lang="no"][@xml:id="id1"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::zeta[@number][@xml:id="id2"][preceding-sibling::*[position() = 5]][following-sibling::psi[@attrib][@xml:id="id3"][preceding-sibling::*[position() = 6]][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<rho xml:lang="no-nb">
<tau attr="attribute value">
<alpha xml:lang="en-GB"/>
<phi number="attribute value"/>
<psi/>
<phi/>
<psi xml:lang="no" xml:id="id1"/>
<zeta number="this-is-att-value" xml:id="id2"/>
<psi attrib="attribute value" xml:id="id3">
<green>This text must be green</green>
</psi>
</tau>
</rho>
</tree>
</test>
<test>
<xpath>//sigma[@and][@xml:id="id1"]/beta[@name][@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/tau[@xml:id="id3"][not(following-sibling::*)]//beta[following-sibling::*[position()=3]][not(child::node())][following-sibling::theta[not(child::node())][following-sibling::eta[contains(concat(@object,"$"),"rue$")][following-sibling::*[position()=1]][not(child::node())][following-sibling::omicron[contains(concat(@data,"$"),"ttribute-value$")][@xml:id="id4"][not(following-sibling::omicron)]/alpha[@xml:lang="no"][@xml:id="id5"][following-sibling::kappa[@token="content"][@xml:lang="no"][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]]]]</xpath>
<tree>
<sigma and="_blank" xml:id="id1">
<beta name="content" xml:lang="en" xml:id="id2">
<tau xml:id="id3">
<beta/>
<theta/>
<eta object="true"/>
<omicron data="attribute-value" xml:id="id4">
<alpha xml:lang="no" xml:id="id5"/>
<kappa token="content" xml:lang="no" xml:id="id6">
<green>This text must be green</green>
</kappa>
</omicron>
</tau>
</beta>
</sigma>
</tree>
</test>
<test>
<xpath>//lambda/kappa[contains(@false,"attribut")][@xml:id="id1"]/rho[starts-with(concat(@object,"-"),"false-")][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::chi[@content][not(following-sibling::*)]/beta[@xml:lang="no"][@xml:id="id3"][not(preceding-sibling::*)]/psi[contains(concat(@and,"$"),"bute value$")][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::alpha[starts-with(concat(@insert,"-"),"attribute-")][@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]]//kappa[@title][@xml:id="id6"][not(following-sibling::*)]//epsilon[contains(concat(@attrib,"$"),"e$")][@xml:id="id7"][not(child::node())][following-sibling::xi[@number][@xml:id="id8"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::omicron[@xml:id="id9"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//theta[@xml:lang="no-nb"][@xml:id="id10"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::omega[@xml:id="id11"][not(following-sibling::*)]/rho[starts-with(@delete,"c")][@xml:id="id12"][following-sibling::alpha[@name][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::phi[@abort][@xml:lang="nb"][@xml:id="id13"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<lambda>
<kappa false="attribute" xml:id="id1">
<rho object="false" xml:id="id2"/>
<chi content="content">
<beta xml:lang="no" xml:id="id3">
<psi and="attribute value" xml:id="id4"/>
<alpha insert="attribute" xml:lang="no-nb" xml:id="id5">
<kappa title="another attribute value" xml:id="id6">
<epsilon attrib="true" xml:id="id7"/>
<xi number="true" xml:id="id8"/>
<omicron xml:id="id9">
<theta xml:lang="no-nb" xml:id="id10"/>
<tau xml:lang="en"/>
<omega xml:id="id11">
<rho delete="content" xml:id="id12"/>
<alpha name="true" xml:lang="no-nb"/>
<phi abort="100%" xml:lang="nb" xml:id="id13">
<green>This text must be green</green>
</phi>
</omega>
</omicron>
</kappa>
</alpha>
</beta>
</chi>
</kappa>
</lambda>
</tree>
</test>
<test>
<xpath>//phi[@attr="100%"]//beta[contains(concat(@delete,"$"),"k$")][@xml:lang="en"][not(preceding-sibling::*)]/phi[not(preceding-sibling::*)][not(following-sibling::*)]//iota[@xml:lang="en-GB"][not(following-sibling::*)]//kappa[following-sibling::nu[@name][following-sibling::*[position()=3]][following-sibling::*[@name][not(child::node())][following-sibling::sigma[starts-with(concat(@token,"-"),"another attribute value-")][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::lambda[@xml:id="id1"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]/rho[contains(concat(@class,"$"),"123456789$")][not(preceding-sibling::*)][following-sibling::epsilon[@xml:lang="nb"][@xml:id="id2"]/xi//beta[@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon[starts-with(@abort,"fa")][@xml:id="id4"][following-sibling::phi[@true][@xml:id="id5"][following-sibling::*[position()=1]][following-sibling::nu[@string="another attribute value"][@xml:lang="no"][@xml:id="id6"][not(following-sibling::*)]/phi[contains(concat(@token,"$"),"1px green$")][not(preceding-sibling::*)]/theta[@xml:lang="no-nb"][not(following-sibling::*)]//lambda[@attr][not(preceding-sibling::*)][not(following-sibling::*)][not(following-sibling::lambda)]/*[following-sibling::*[position()=1]][following-sibling::psi[contains(concat(@desciption,"$"),"n$")][@xml:id="id7"][preceding-sibling::*[position() = 1]]//theta[contains(@src,"ue")][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]]][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<phi attr="100%">
<beta delete="_blank" xml:lang="en">
<phi>
<iota xml:lang="en-GB">
<kappa/>
<nu name="this-is-att-value"/>
<any name="this.nodeValue"/>
<sigma token="another attribute value"/>
<lambda xml:id="id1">
<rho class="123456789"/>
<epsilon xml:lang="nb" xml:id="id2">
<xi>
<beta xml:lang="en-US" xml:id="id3"/>
<epsilon abort="false" xml:id="id4"/>
<phi true="attribute-value" xml:id="id5"/>
<nu string="another attribute value" xml:lang="no" xml:id="id6">
<phi token="solid 1px green">
<theta xml:lang="no-nb">
<lambda attr="100%">
<any/>
<psi desciption="solid 1px green" xml:id="id7">
<theta src="attribute value" xml:id="id8">
<green>This text must be green</green>
</theta>
</psi>
</lambda>
</theta>
</phi>
</nu>
</xi>
</epsilon>
</lambda>
</iota>
</phi>
</beta>
</phi>
</tree>
</test>
<test>
<xpath>//gamma[starts-with(@data,"tr")][@xml:lang="no"][@xml:id="id1"]//omicron[starts-with(concat(@class,"-"),"attribute value-")]/rho[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/rho[@xml:lang="no"][@xml:id="id2"]//omega[@xml:lang="no-nb"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::theta[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[starts-with(@object,"conten")][preceding-sibling::*[position() = 2]][following-sibling::zeta[preceding-sibling::*[position() = 3]][following-sibling::omicron[@object][@xml:lang="en-GB"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::mu[contains(@delete,"_b")][@xml:lang="no"][@xml:id="id4"][following-sibling::pi[@xml:lang="no"][not(following-sibling::*)]/alpha[@desciption][@xml:lang="en-US"][not(child::node())][following-sibling::upsilon[contains(concat(@attribute,"$"),"eValue$")][@xml:lang="en-GB"][not(following-sibling::*)]/phi[starts-with(@title,"solid 1p")][@xml:lang="en-US"][@xml:id="id5"][not(following-sibling::*)][not(preceding-sibling::phi)]/epsilon[@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::alpha[@token][@xml:lang="en-US"][@xml:id="id6"][following-sibling::rho[@xml:id="id7"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<gamma data="true" xml:lang="no" xml:id="id1">
<omicron class="attribute value">
<rho xml:lang="no-nb">
<rho xml:lang="no" xml:id="id2">
<omega xml:lang="no-nb" xml:id="id3"/>
<theta xml:lang="no-nb"/>
<delta object="content"/>
<zeta/>
<omicron object="100%" xml:lang="en-GB"/>
<mu delete="_blank" xml:lang="no" xml:id="id4"/>
<pi xml:lang="no">
<alpha desciption="100%" xml:lang="en-US"/>
<upsilon attribute="this.nodeValue" xml:lang="en-GB">
<phi title="solid 1px green" xml:lang="en-US" xml:id="id5">
<epsilon xml:lang="no-nb"/>
<alpha token="content" xml:lang="en-US" xml:id="id6"/>
<rho xml:id="id7">
<green>This text must be green</green>
</rho>
</phi>
</upsilon>
</pi>
</rho>
</rho>
</omicron>
</gamma>
</tree>
</test>
<test>
<xpath>//mu/iota[starts-with(concat(@desciption,"-"),"attribute-")][not(child::node())][following-sibling::lambda[contains(concat(@or,"$"),"tribute-value$")][@xml:id="id1"][preceding-sibling::*[position() = 1]]//pi[starts-with(concat(@name,"-"),"false-")][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::sigma[@name][not(child::node())][following-sibling::mu[following-sibling::zeta[@true][@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=2]][following-sibling::tau[starts-with(@abort,"_bl")][@xml:id="id4"][not(child::node())][following-sibling::delta[contains(@token,"soli")][@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 5]]//mu[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::nu[@att="attribute value"][@xml:id="id6"][preceding-sibling::*[position() = 1]]][position() = 1]]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<mu>
<iota desciption="attribute-value"/>
<lambda or="attribute-value" xml:id="id1">
<pi name="false" xml:id="id2"/>
<sigma name="another attribute value"/>
<mu/>
<zeta true="attribute-value" xml:lang="en-US" xml:id="id3"/>
<tau abort="_blank" xml:id="id4"/>
<delta token="solid 1px green" xml:lang="no-nb" xml:id="id5">
<mu xml:lang="nb"/>
<nu att="attribute value" xml:id="id6">
<green>This text must be green</green>
</nu>
</delta>
</lambda>
</mu>
</tree>
</test>
<test>
<xpath>//*[starts-with(concat(@attribute,"-"),"attribute-")][@xml:lang="nb"]/theta[@xml:lang="no"][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[not(following-sibling::*)]/phi[@xml:lang="no"][@xml:id="id2"][not(following-sibling::*)]//pi[contains(concat(@attribute,"$"),"another attribute value$")][@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)]//eta[starts-with(@desciption,"another attribu")][@xml:lang="no"][@xml:id="id4"][not(following-sibling::*)]</xpath>
<tree>
<any attribute="attribute" xml:lang="nb">
<theta xml:lang="no" xml:id="id1">
<zeta>
<phi xml:lang="no" xml:id="id2">
<pi attribute="another attribute value" xml:lang="en-US" xml:id="id3">
<eta desciption="another attribute value" xml:lang="no" xml:id="id4">
<green>This text must be green</green>
</eta>
</pi>
</phi>
</zeta>
</theta>
</any>
</tree>
</test>
<test>
<xpath>//omicron[starts-with(concat(@object,"-"),"100%-")][@xml:lang="en-GB"]//alpha[following-sibling::*[position()=1]][not(child::node())][following-sibling::omega[@content][@xml:id="id1"][preceding-sibling::*[position() = 1]]//upsilon[following-sibling::*[position()=2]][not(child::node())][following-sibling::epsilon[@class][not(child::node())][following-sibling::epsilon[@desciption][@xml:lang="no-nb"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//iota[@name="attribute-value"][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::delta[@xml:lang="no-nb"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/upsilon[contains(concat(@object,"$"),"nodeValue$")][not(preceding-sibling::*)][not(following-sibling::*)]/alpha[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]]]]</xpath>
<tree>
<omicron object="100%" xml:lang="en-GB">
<alpha/>
<omega content="this.nodeValue" xml:id="id1">
<upsilon/>
<epsilon class="false"/>
<epsilon desciption="attribute value" xml:lang="no-nb">
<iota name="attribute-value" xml:lang="en-US"/>
<delta xml:lang="no-nb" xml:id="id2">
<upsilon object="this.nodeValue">
<alpha xml:lang="no">
<green>This text must be green</green>
</alpha>
</upsilon>
</delta>
</epsilon>
</omega>
</omicron>
</tree>
</test>
<test>
<xpath>//zeta[@xml:id="id1"]//kappa[@xml:id="id2"][following-sibling::alpha[@xml:id="id3"]/nu[contains(@content,"%")][@xml:lang="en-GB"][following-sibling::*[position()=3]][not(child::node())][following-sibling::alpha[@object][@xml:lang="en-US"][@xml:id="id4"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::theta[@xml:id="id5"][not(child::node())][following-sibling::eta[preceding-sibling::*[position() = 3]]//omicron[starts-with(concat(@desciption,"-"),"solid 1px green-")][@xml:lang="en-GB"][@xml:id="id6"]/epsilon[contains(@class,"ank")][@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[@xml:lang="nb"][following-sibling::kappa[@xml:lang="en-GB"][following-sibling::chi[starts-with(@att,"a")][@xml:id="id8"][following-sibling::*[position()=1]][following-sibling::tau[starts-with(concat(@data,"-"),"content-")][preceding-sibling::*[position() = 4]]/delta[contains(concat(@attr,"$"),"89$")][not(child::node())][following-sibling::rho[@xml:id="id9"][following-sibling::alpha[not(following-sibling::*)]//iota[not(following-sibling::*)]//eta/lambda[@xml:lang="en"][not(child::node())][following-sibling::epsilon[starts-with(@object,"t")][@xml:lang="no"][@xml:id="id10"][following-sibling::gamma[@or][@xml:lang="nb"][@xml:id="id11"][preceding-sibling::*[position() = 2]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<zeta xml:id="id1">
<kappa xml:id="id2"/>
<alpha xml:id="id3">
<nu content="100%" xml:lang="en-GB"/>
<alpha object="this-is-att-value" xml:lang="en-US" xml:id="id4"/>
<theta xml:id="id5"/>
<eta>
<omicron desciption="solid 1px green" xml:lang="en-GB" xml:id="id6">
<epsilon class="_blank" xml:id="id7"/>
<rho xml:lang="nb"/>
<kappa xml:lang="en-GB"/>
<chi att="another attribute value" xml:id="id8"/>
<tau data="content">
<delta attr="123456789"/>
<rho xml:id="id9"/>
<alpha>
<iota>
<eta>
<lambda xml:lang="en"/>
<epsilon object="true" xml:lang="no" xml:id="id10"/>
<gamma or="attribute-value" xml:lang="nb" xml:id="id11">
<green>This text must be green</green>
</gamma>
</eta>
</iota>
</alpha>
</tau>
</omicron>
</eta>
</alpha>
</zeta>
</tree>
</test>
<test>
<xpath>//omega[starts-with(concat(@desciption,"-"),"attribute-")][@xml:lang="en"][@xml:id="id1"]/upsilon[@xml:id="id2"][not(preceding-sibling::*)]//kappa[@abort="this.nodeValue"][@xml:id="id3"][not(preceding-sibling::*)]//chi[@xml:lang="no"][@xml:id="id4"][not(following-sibling::*)]//phi[@xml:id="id5"][not(following-sibling::*)]/omega[contains(concat(@false,"$"),"te$")][not(preceding-sibling::*)][not(following-sibling::*)]//sigma[@xml:lang="en"][@xml:id="id6"][not(following-sibling::*)]</xpath>
<tree>
<omega desciption="attribute-value" xml:lang="en" xml:id="id1">
<upsilon xml:id="id2">
<kappa abort="this.nodeValue" xml:id="id3">
<chi xml:lang="no" xml:id="id4">
<phi xml:id="id5">
<omega false="attribute">
<sigma xml:lang="en" xml:id="id6">
<green>This text must be green</green>
</sigma>
</omega>
</phi>
</chi>
</kappa>
</upsilon>
</omega>
</tree>
</test>
<test>
<xpath>//mu[@xml:id="id1"]//chi[starts-with(concat(@true,"-"),"content-")][following-sibling::upsilon[contains(@abort,"6789")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//delta[@xml:lang="en"][@xml:id="id2"][not(following-sibling::*)]//pi[@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@xml:id="id3"][preceding-sibling::*[position() = 1]]/gamma[not(preceding-sibling::*)][not(following-sibling::*)]]]</xpath>
<tree>
<mu xml:id="id1">
<chi true="content"/>
<upsilon abort="123456789">
<delta xml:lang="en" xml:id="id2">
<pi xml:lang="no-nb"/>
<eta xml:id="id3">
<gamma>
<green>This text must be green</green>
</gamma>
</eta>
</delta>
</upsilon>
</mu>
</tree>
</test>
<test>
<xpath>//psi[@xml:id="id1"]//theta[contains(concat(@number,"$"),"bute value$")][not(preceding-sibling::*)][not(following-sibling::*)]/gamma[@xml:id="id2"][not(preceding-sibling::*)]/theta[starts-with(concat(@abort,"-"),"solid 1px green-")][@xml:lang="en-US"][following-sibling::upsilon[starts-with(@number,"c")][@xml:lang="no-nb"][@xml:id="id3"]//zeta[starts-with(@attrib,"100")][@xml:lang="en-US"][not(child::node())][following-sibling::chi[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::eta[@xml:id="id4"]//theta[starts-with(concat(@name,"-"),"123456789-")][not(following-sibling::*)]/zeta[@xml:id="id5"]//rho[@xml:lang="no-nb"][@xml:id="id6"][not(child::node())][following-sibling::mu[@xml:lang="no"][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::phi//iota[@xml:lang="no"][@xml:id="id8"]/zeta[@xml:id="id9"][following-sibling::delta[@desciption][@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::theta[starts-with(concat(@insert,"-"),"_blank-")][@xml:lang="no"][@xml:id="id10"][preceding-sibling::*[position() = 2]]]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<psi xml:id="id1">
<theta number="attribute value">
<gamma xml:id="id2">
<theta abort="solid 1px green" xml:lang="en-US"/>
<upsilon number="content" xml:lang="no-nb" xml:id="id3">
<zeta attrib="100%" xml:lang="en-US"/>
<chi xml:lang="no-nb"/>
<eta xml:id="id4">
<theta name="123456789">
<zeta xml:id="id5">
<rho xml:lang="no-nb" xml:id="id6"/>
<mu xml:lang="no" xml:id="id7"/>
<phi>
<iota xml:lang="no" xml:id="id8">
<zeta xml:id="id9"/>
<delta desciption="123456789" xml:lang="nb"/>
<theta insert="_blank" xml:lang="no" xml:id="id10">
<green>This text must be green</green>
</theta>
</iota>
</phi>
</zeta>
</theta>
</eta>
</upsilon>
</gamma>
</theta>
</psi>
</tree>
</test>
<test>
<xpath>//zeta[starts-with(concat(@att,"-"),"solid 1px green-")][@xml:id="id1"]//lambda[@attribute][@xml:id="id2"][not(following-sibling::*)]//omicron[contains(concat(@abort,"$"),"e$")][not(child::node())][following-sibling::zeta[@xml:lang="nb"][preceding-sibling::*[position() = 1]]//sigma[starts-with(concat(@token,"-"),"this.nodeValue-")][@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)]/phi[@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/nu[@false="attribute value"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::eta[starts-with(@token,"123456789")][@xml:lang="no"][@xml:id="id6"][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha]]]</xpath>
<tree>
<zeta att="solid 1px green" xml:id="id1">
<lambda attribute="another attribute value" xml:id="id2">
<omicron abort="attribute value"/>
<zeta xml:lang="nb">
<sigma token="this.nodeValue" xml:lang="en-US" xml:id="id3">
<phi xml:lang="no" xml:id="id4">
<nu false="attribute value" xml:id="id5"/>
<eta token="123456789" xml:lang="no" xml:id="id6"/>
<alpha>
<green>This text must be green</green>
</alpha>
</phi>
</sigma>
</zeta>
</lambda>
</zeta>
</tree>
</test>
<test>
<xpath>//delta//alpha[@xml:lang="no-nb"][not(preceding-sibling::*)]//tau[@object][not(preceding-sibling::*)][not(child::node())][following-sibling::beta[contains(concat(@and,"$"),"00%$")][@xml:lang="nb"]//rho[@xml:lang="en"][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::eta[@xml:id="id2"]/rho[starts-with(@abort,"this-is-")][@xml:id="id3"][not(preceding-sibling::*)]/rho[not(preceding-sibling::*)][not(following-sibling::*)]//iota[@xml:lang="no"][not(following-sibling::*)]//gamma[not(child::node())][following-sibling::omega[@attribute][@xml:lang="no-nb"][@xml:id="id4"]/kappa[@attrib][@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@xml:lang="en"][@xml:id="id5"][not(child::node())][following-sibling::lambda[@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::pi[@xml:lang="en"][@xml:id="id7"]//sigma[starts-with(@att,"123")][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::*[position()=5]][following-sibling::kappa[contains(@attr,"bute value")][@xml:lang="no-nb"][@xml:id="id9"][not(child::node())][following-sibling::alpha[@and="attribute value"][@xml:id="id10"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::lambda[preceding-sibling::*[position() = 3]][following-sibling::rho[@xml:lang="en-GB"][@xml:id="id11"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::omicron[@xml:lang="no-nb"][@xml:id="id12"][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<delta>
<alpha xml:lang="no-nb">
<tau object="another attribute value"/>
<beta and="100%" xml:lang="nb">
<rho xml:lang="en" xml:id="id1"/>
<eta xml:id="id2">
<rho abort="this-is-att-value" xml:id="id3">
<rho>
<iota xml:lang="no">
<gamma/>
<omega attribute="attribute" xml:lang="no-nb" xml:id="id4">
<kappa attrib="content" xml:lang="en-US"/>
<omicron xml:lang="en" xml:id="id5"/>
<lambda xml:lang="en-US" xml:id="id6"/>
<pi xml:lang="en" xml:id="id7">
<sigma att="123456789" xml:id="id8"/>
<kappa attr="another attribute value" xml:lang="no-nb" xml:id="id9"/>
<alpha and="attribute value" xml:id="id10"/>
<lambda/>
<rho xml:lang="en-GB" xml:id="id11"/>
<omicron xml:lang="no-nb" xml:id="id12">
<green>This text must be green</green>
</omicron>
</pi>
</omega>
</iota>
</rho>
</rho>
</eta>
</beta>
</alpha>
</delta>
</tree>
</test>
<test>
<xpath>//mu[@xml:lang="no"]/tau[contains(@data,"value")][@xml:lang="no"][not(child::node())][following-sibling::kappa[@att][not(following-sibling::*)]//delta[starts-with(@attrib,"100")][@xml:lang="en"][@xml:id="id1"]//omega[@xml:lang="en-GB"][@xml:id="id2"]/epsilon[@delete][following-sibling::sigma[@xml:id="id3"]/nu[starts-with(@token,"a")][not(preceding-sibling::*)]/rho[contains(concat(@delete,"$"),"00%$")][@xml:lang="no"][@xml:id="id4"]][position() = 1]]</xpath>
<tree>
<mu xml:lang="no">
<tau data="attribute-value" xml:lang="no"/>
<kappa att="attribute">
<delta attrib="100%" xml:lang="en" xml:id="id1">
<omega xml:lang="en-GB" xml:id="id2">
<epsilon delete="content"/>
<sigma xml:id="id3">
<nu token="attribute value">
<rho delete="100%" xml:lang="no" xml:id="id4">
<green>This text must be green</green>
</rho>
</nu>
</sigma>
</omega>
</delta>
</kappa>
</mu>
</tree>
</test>
<test>
<xpath>//zeta[starts-with(concat(@object,"-"),"this.nodeValue-")][@xml:lang="nb"][@xml:id="id1"]//pi[@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)]/eta[@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)][not(following-sibling::eta)]/rho[@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::pi[@desciption]/epsilon[@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/delta[@xml:lang="no-nb"][@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon[@att="true"][following-sibling::psi[starts-with(@abort,"attribute")][@xml:id="id6"][position() = 1]]][position() = 1]]</xpath>
<tree>
<zeta object="this.nodeValue" xml:lang="nb" xml:id="id1">
<pi xml:lang="en-US" xml:id="id2">
<eta xml:lang="nb">
<rho xml:id="id3"/>
<pi desciption="attribute value">
<epsilon xml:id="id4">
<delta xml:lang="no-nb" xml:id="id5"/>
<epsilon att="true"/>
<psi abort="attribute-value" xml:id="id6">
<green>This text must be green</green>
</psi>
</epsilon>
</pi>
</eta>
</pi>
</zeta>
</tree>
</test>
<test>
<xpath>//upsilon[starts-with(concat(@src,"-"),"this-")][@xml:id="id1"]/chi[@attrib][@xml:lang="nb"][following-sibling::eta[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/phi[@xml:lang="no-nb"][not(following-sibling::*)]//kappa[@and][not(preceding-sibling::*)]//mu[@string][@xml:id="id3"][not(following-sibling::*)]//tau[@name][@xml:lang="en"][@xml:id="id4"][following-sibling::upsilon[not(following-sibling::*)]][position() = 1]]</xpath>
<tree>
<upsilon src="this-is-att-value" xml:id="id1">
<chi attrib="attribute-value" xml:lang="nb"/>
<eta xml:id="id2">
<phi xml:lang="no-nb">
<kappa and="true">
<mu string="100%" xml:id="id3">
<tau name="attribute" xml:lang="en" xml:id="id4"/>
<upsilon>
<green>This text must be green</green>
</upsilon>
</mu>
</kappa>
</phi>
</eta>
</upsilon>
</tree>
</test>
<test>
<xpath>//*[starts-with(concat(@insert,"-"),"_blank-")]/alpha[@xml:lang="no-nb"][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[contains(concat(@token,"$"),"e-value$")][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::iota[contains(@insert,"1")][not(child::node())][following-sibling::sigma[contains(@and,"_")][following-sibling::beta[@xml:lang="en"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::mu[not(child::node())][following-sibling::psi[following-sibling::kappa[not(following-sibling::*)]//beta//xi[@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::kappa[@content][@xml:id="id3"][not(following-sibling::*)]/xi[@xml:lang="nb"][not(preceding-sibling::*)]//upsilon[contains(@content,"ri")][@xml:lang="nb"][not(following-sibling::*)]//psi[contains(@and,"te")][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::iota[@attribute][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::lambda[starts-with(concat(@and,"-"),"123456789-")][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::theta//beta[not(preceding-sibling::*)]//epsilon[@xml:lang="en"][@xml:id="id5"][not(preceding-sibling::*)]//zeta[starts-with(@insert,"content")][not(preceding-sibling::*)][not(following-sibling::*)]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<any insert="_blank">
<alpha xml:lang="no-nb" xml:id="id1"/>
<sigma token="attribute-value"/>
<iota insert="100%"/>
<sigma and="_blank"/>
<beta xml:lang="en"/>
<mu/>
<psi/>
<kappa>
<beta>
<xi xml:lang="en-GB" xml:id="id2"/>
<kappa content="false" xml:id="id3">
<xi xml:lang="nb">
<upsilon content="attribute" xml:lang="nb">
<psi and="attribute" xml:id="id4"/>
<iota attribute="solid 1px green"/>
<lambda and="123456789"/>
<theta>
<beta>
<epsilon xml:lang="en" xml:id="id5">
<zeta insert="content">
<green>This text must be green</green>
</zeta>
</epsilon>
</beta>
</theta>
</upsilon>
</xi>
</kappa>
</beta>
</kappa>
</any>
</tree>
</test>
<test>
<xpath>//chi[@xml:lang="en-GB"][@xml:id="id1"]/tau//phi[@title][@xml:id="id2"]/sigma[@xml:lang="no-nb"]//theta[@xml:id="id3"][not(preceding-sibling::*)]/tau[contains(concat(@title,"$"),"nother attribute value$")][@xml:lang="en"][not(following-sibling::*)]/phi[@attribute][following-sibling::*[position()=2]][not(child::node())][following-sibling::eta[@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::mu[@xml:lang="no"][@xml:id="id4"]/chi[@xml:lang="en-GB"][@xml:id="id5"][not(child::node())][following-sibling::tau[starts-with(@att,"false")][@xml:id="id6"][not(child::node())][following-sibling::eta[preceding-sibling::*[position() = 2]]/gamma[@attr][@xml:lang="no"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::upsilon[@xml:lang="en"][preceding-sibling::*[position() = 1]]/tau[contains(@and,"r")][not(preceding-sibling::*)][not(following-sibling::*)]//chi[@token="false"][@xml:lang="no"][not(following-sibling::*)]]]][position() = 1]]]</xpath>
<tree>
<chi xml:lang="en-GB" xml:id="id1">
<tau>
<phi title="another attribute value" xml:id="id2">
<sigma xml:lang="no-nb">
<theta xml:id="id3">
<tau title="another attribute value" xml:lang="en">
<phi attribute="this.nodeValue"/>
<eta xml:lang="no"/>
<mu xml:lang="no" xml:id="id4">
<chi xml:lang="en-GB" xml:id="id5"/>
<tau att="false" xml:id="id6"/>
<eta>
<gamma attr="true" xml:lang="no" xml:id="id7"/>
<upsilon xml:lang="en">
<tau and="true">
<chi token="false" xml:lang="no">
<green>This text must be green</green>
</chi>
</tau>
</upsilon>
</eta>
</mu>
</tau>
</theta>
</sigma>
</phi>
</tau>
</chi>
</tree>
</test>
<test>
<xpath>//sigma[@title][@xml:id="id1"]/zeta[@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]//nu[@xml:id="id2"][following-sibling::psi[@att][@xml:lang="nb"][@xml:id="id3"]//alpha[@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[starts-with(@title,"123456")][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::*[@xml:id="id5"][following-sibling::*[position()=1]][not(preceding-sibling::any)][following-sibling::theta[preceding-sibling::*[position() = 3]][not(following-sibling::*)]//nu[contains(@desciption,"a")][@xml:lang="en-US"][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::omega[@object][preceding-sibling::*[position() = 1]]//iota[@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@xml:id="id8"]//omega[@delete][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[following-sibling::*[position()=1]][following-sibling::omega[@number="solid 1px green"][@xml:lang="nb"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//rho[@string][@xml:lang="nb"][@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<sigma title="another attribute value" xml:id="id1">
<zeta xml:lang="en">
<nu xml:id="id2"/>
<psi att="this.nodeValue" xml:lang="nb" xml:id="id3">
<alpha xml:lang="en-US" xml:id="id4"/>
<lambda title="123456789" xml:lang="en-US"/>
<any xml:id="id5"/>
<theta>
<nu desciption="false" xml:lang="en-US" xml:id="id6"/>
<omega object="100%">
<iota xml:id="id7"/>
<eta xml:id="id8">
<omega delete="true"/>
<xi/>
<omega number="solid 1px green" xml:lang="nb">
<rho string="attribute-value" xml:lang="nb" xml:id="id9">
<green>This text must be green</green>
</rho>
</omega>
</eta>
</omega>
</theta>
</psi>
</zeta>
</sigma>
</tree>
</test>
<test>
<xpath>//*[@xml:lang="no-nb"][@xml:id="id1"]//theta[starts-with(@content,"fal")][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::beta[starts-with(@insert,"100")][@xml:lang="nb"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//theta[@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::theta[@xml:lang="en-US"][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::epsilon[@desciption="100%"][@xml:lang="en"][@xml:id="id5"]/upsilon//xi[contains(@abort,"nt")][@xml:lang="no-nb"][@xml:id="id6"][not(preceding-sibling::*)]//beta[@xml:lang="en-GB"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::gamma[preceding-sibling::*[position() = 1]]//kappa[@xml:lang="en-US"][following-sibling::gamma[@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[starts-with(@abort,"solid 1px g")]//gamma[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]/delta[@object="solid 1px green"][@xml:id="id8"][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[@name="_blank"][@xml:lang="no-nb"]//nu[@xml:lang="en-GB"][@xml:id="id9"][not(preceding-sibling::*)]//sigma[@desciption][@xml:lang="nb"][following-sibling::beta[@xml:lang="en"][@xml:id="id10"][not(following-sibling::*)]/pi[contains(concat(@delete,"$"),"ue$")][not(preceding-sibling::*)][following-sibling::rho[preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::mu[@xml:lang="en"][preceding-sibling::*[position() = 2]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<any xml:lang="no-nb" xml:id="id1">
<theta content="false" xml:id="id2"/>
<beta insert="100%" xml:lang="nb" xml:id="id3">
<theta xml:lang="no-nb"/>
<theta xml:lang="en-US" xml:id="id4"/>
<epsilon desciption="100%" xml:lang="en" xml:id="id5">
<upsilon>
<xi abort="content" xml:lang="no-nb" xml:id="id6">
<beta xml:lang="en-GB" xml:id="id7"/>
<gamma>
<kappa xml:lang="en-US"/>
<gamma xml:lang="no"/>
<delta abort="solid 1px green">
<gamma xml:lang="no">
<delta object="solid 1px green" xml:id="id8"/>
<pi name="_blank" xml:lang="no-nb">
<nu xml:lang="en-GB" xml:id="id9">
<sigma desciption="_blank" xml:lang="nb"/>
<beta xml:lang="en" xml:id="id10">
<pi delete="true"/>
<rho/>
<mu xml:lang="en">
<green>This text must be green</green>
</mu>
</beta>
</nu>
</pi>
</gamma>
</delta>
</gamma>
</xi>
</upsilon>
</epsilon>
</beta>
</any>
</tree>
</test>
<test>
<xpath>//rho[@content][@xml:lang="no-nb"][@xml:id="id1"]//alpha[@title="content"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=5]][not(child::node())][following-sibling::zeta[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][following-sibling::omega[@xml:lang="en"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::psi[@xml:lang="no-nb"][preceding-sibling::*[position() = 3]][following-sibling::theta[@abort][@xml:lang="no"][preceding-sibling::*[position() = 4]][following-sibling::*[position()=1]][not(following-sibling::theta)][not(child::node())][following-sibling::pi[@attr="true"][@xml:lang="nb"]//eta[contains(concat(@attr,"$"),"false$")][@xml:lang="en-US"]//omega[@insert="solid 1px green"][@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]//gamma[@xml:lang="en"]]][position() = 1]]]]</xpath>
<tree>
<rho content="false" xml:lang="no-nb" xml:id="id1">
<alpha title="content" xml:id="id2"/>
<zeta xml:lang="en-GB"/>
<omega xml:lang="en"/>
<psi xml:lang="no-nb"/>
<theta abort="attribute" xml:lang="no"/>
<pi attr="true" xml:lang="nb">
<eta attr="false" xml:lang="en-US">
<omega insert="solid 1px green" xml:lang="en-US" xml:id="id3">
<gamma xml:lang="en">
<green>This text must be green</green>
</gamma>
</omega>
</eta>
</pi>
</rho>
</tree>
</test>
<test>
<xpath>//zeta[@xml:lang="nb"]/psi[contains(@object,"te")][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[@xml:id="id1"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::chi[contains(@number,"d 1p")][@xml:lang="en"][@xml:id="id2"][following-sibling::*[position()=1]][not(preceding-sibling::chi)][not(preceding-sibling::chi or following-sibling::chi)][following-sibling::tau[@delete][@xml:lang="en-US"][not(following-sibling::*)]//phi[@token][@xml:id="id3"][not(preceding-sibling::*)]//xi[starts-with(concat(@att,"-"),"123456789-")][@xml:id="id4"][not(preceding-sibling::*)]//iota[@class="attribute-value"][not(preceding-sibling::*)]//rho[@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::chi[contains(@insert,"px green")][@xml:id="id5"][following-sibling::*[position()=3]][following-sibling::lambda[@token][@xml:lang="en-US"][not(child::node())][following-sibling::gamma[not(child::node())][following-sibling::mu[@xml:id="id6"]//omicron[contains(concat(@desciption,"$"),"his.nodeValue$")][@xml:id="id7"][not(preceding-sibling::*)]/sigma[starts-with(@attr,"at")][@xml:lang="en-US"][@xml:id="id8"][following-sibling::tau[contains(@true,"ute value")][@xml:lang="no-nb"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<zeta xml:lang="nb">
<psi object="attribute"/>
<kappa xml:id="id1"/>
<chi number="solid 1px green" xml:lang="en" xml:id="id2"/>
<tau delete="attribute-value" xml:lang="en-US">
<phi token="attribute" xml:id="id3">
<xi att="123456789" xml:id="id4">
<iota class="attribute-value">
<rho xml:lang="en-GB"/>
<chi insert="solid 1px green" xml:id="id5"/>
<lambda token="100%" xml:lang="en-US"/>
<gamma/>
<mu xml:id="id6">
<omicron desciption="this.nodeValue" xml:id="id7">
<sigma attr="attribute" xml:lang="en-US" xml:id="id8"/>
<tau true="attribute value" xml:lang="no-nb">
<green>This text must be green</green>
</tau>
</omicron>
</mu>
</iota>
</xi>
</phi>
</tau>
</zeta>
</tree>
</test>
<test>
<xpath>//theta[@false][@xml:lang="no"][@xml:id="id1"]//zeta[@name][@xml:id="id2"][following-sibling::*[position()=2]][following-sibling::sigma[@xml:lang="en"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::pi[@src][@xml:lang="en"][@xml:id="id4"]//theta[contains(concat(@src,"$"),"%$")][@xml:id="id5"][following-sibling::omicron[contains(@or,"ribute")][@xml:lang="en-US"][@xml:id="id6"][following-sibling::*[position()=1]][following-sibling::xi[@true="another attribute value"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//*[@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]/sigma[@or][@xml:id="id8"][not(preceding-sibling::*)]//kappa[not(preceding-sibling::*)][following-sibling::phi[@xml:id="id9"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//lambda[starts-with(@delete,"this.")][@xml:id="id10"][following-sibling::omega[contains(@string,"on")][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<theta false="attribute-value" xml:lang="no" xml:id="id1">
<zeta name="solid 1px green" xml:id="id2"/>
<sigma xml:lang="en" xml:id="id3"/>
<pi src="false" xml:lang="en" xml:id="id4">
<theta src="100%" xml:id="id5"/>
<omicron or="another attribute value" xml:lang="en-US" xml:id="id6"/>
<xi true="another attribute value">
<any xml:id="id7">
<sigma or="_blank" xml:id="id8">
<kappa/>
<phi xml:id="id9">
<lambda delete="this.nodeValue" xml:id="id10"/>
<omega string="content" xml:lang="en">
<green>This text must be green</green>
</omega>
</phi>
</sigma>
</any>
</xi>
</pi>
</theta>
</tree>
</test>
<test>
<xpath>//zeta[@xml:id="id1"]//mu[@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::alpha[@true][@xml:id="id3"][preceding-sibling::*[position() = 1]]//epsilon[contains(concat(@content,"$"),"e$")][not(preceding-sibling::*)][not(following-sibling::*)]/kappa[starts-with(@data,"100")][not(preceding-sibling::*)]//pi[@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::alpha[preceding-sibling::*[position() = 1]][not(following-sibling::*)]//lambda[starts-with(concat(@attrib,"-"),"content-")][@xml:lang="no"][@xml:id="id5"][not(following-sibling::*)]/upsilon[@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[@xml:lang="no-nb"][@xml:id="id6"][not(following-sibling::*)]//iota[not(preceding-sibling::*)][not(following-sibling::*)]/zeta[not(preceding-sibling::*)][position() = 1]][position() = 1]]]</xpath>
<tree>
<zeta xml:id="id1">
<mu xml:lang="no-nb" xml:id="id2"/>
<alpha true="false" xml:id="id3">
<epsilon content="false">
<kappa data="100%">
<pi xml:id="id4"/>
<alpha>
<lambda attrib="content" xml:lang="no" xml:id="id5">
<upsilon xml:lang="en-US"/>
<gamma xml:lang="no-nb" xml:id="id6">
<iota>
<zeta>
<green>This text must be green</green>
</zeta>
</iota>
</gamma>
</lambda>
</alpha>
</kappa>
</epsilon>
</alpha>
</zeta>
</tree>
</test>
<test>
<xpath>//tau[@abort][@xml:id="id1"]/rho[contains(concat(@true,"$"),"e$")][not(following-sibling::*)]//eta[not(preceding-sibling::*)][not(child::node())][following-sibling::alpha[@xml:lang="no"]//tau[@xml:id="id2"]//iota[@xml:lang="no"][@xml:id="id3"][following-sibling::omega[@string][@xml:lang="no-nb"][following-sibling::theta[starts-with(@attr,"cont")][@xml:id="id4"][preceding-sibling::*[position() = 2]]/sigma[starts-with(@name,"this.nodeValue")][@xml:lang="nb"][@xml:id="id5"][not(following-sibling::*)]//rho[starts-with(@attrib,"cont")][@xml:lang="nb"][@xml:id="id6"][not(child::node())][following-sibling::pi[contains(concat(@token,"$"),"rue$")][@xml:lang="en"][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::xi[@xml:lang="en"][preceding-sibling::*[position() = 2]][following-sibling::omega[@xml:id="id8"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/*[@content][@xml:lang="no"][@xml:id="id9"][not(preceding-sibling::*)][following-sibling::chi[@class][@xml:lang="no"][@xml:id="id10"]/alpha[@xml:lang="nb"][@xml:id="id11"][following-sibling::*[position()=4]][not(child::node())][following-sibling::upsilon[starts-with(concat(@name,"-"),"this-")][@xml:id="id12"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::rho[@delete][@xml:id="id13"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::xi[contains(concat(@true,"$"),"ank$")][not(child::node())][following-sibling::alpha[@xml:lang="en"][@xml:id="id14"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<tau abort="solid 1px green" xml:id="id1">
<rho true="this-is-att-value">
<eta/>
<alpha xml:lang="no">
<tau xml:id="id2">
<iota xml:lang="no" xml:id="id3"/>
<omega string="another attribute value" xml:lang="no-nb"/>
<theta attr="content" xml:id="id4">
<sigma name="this.nodeValue" xml:lang="nb" xml:id="id5">
<rho attrib="content" xml:lang="nb" xml:id="id6"/>
<pi token="true" xml:lang="en" xml:id="id7"/>
<xi xml:lang="en"/>
<omega xml:id="id8">
<any content="solid 1px green" xml:lang="no" xml:id="id9"/>
<chi class="attribute value" xml:lang="no" xml:id="id10">
<alpha xml:lang="nb" xml:id="id11"/>
<upsilon name="this-is-att-value" xml:id="id12"/>
<rho delete="100%" xml:id="id13"/>
<xi true="_blank"/>
<alpha xml:lang="en" xml:id="id14">
<green>This text must be green</green>
</alpha>
</chi>
</omega>
</sigma>
</theta>
</tau>
</alpha>
</rho>
</tau>
</tree>
</test>
<test>
<xpath>//kappa[@string="another attribute value"]/alpha[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::theta[@xml:lang="en-US"][@xml:id="id1"][not(following-sibling::*)]/eta[@xml:lang="en-US"][following-sibling::*[@content][@xml:lang="no-nb"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::beta[@xml:lang="en-GB"][@xml:id="id3"][preceding-sibling::*[position() = 2]]/gamma[starts-with(@insert,"attr")][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]][position() = 1]]</xpath>
<tree>
<kappa string="another attribute value">
<alpha xml:lang="en"/>
<theta xml:lang="en-US" xml:id="id1">
<eta xml:lang="en-US"/>
<any content="true" xml:lang="no-nb" xml:id="id2"/>
<beta xml:lang="en-GB" xml:id="id3">
<gamma insert="attribute" xml:id="id4">
<green>This text must be green</green>
</gamma>
</beta>
</theta>
</kappa>
</tree>
</test>
<test>
<xpath>//*//alpha//beta[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::mu[contains(@false,"value")][@xml:lang="no-nb"][@xml:id="id1"][following-sibling::*[position()=3]][following-sibling::beta[@xml:lang="no-nb"][not(child::node())][following-sibling::iota[contains(@or,"e")][@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 3]][following-sibling::xi[preceding-sibling::*[position() = 4]][not(following-sibling::*)]//delta[@xml:lang="no"]//upsilon[contains(concat(@token,"$"),"alue$")][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::omega[@false][@xml:id="id4"][preceding-sibling::*[position() = 1]]/omega[starts-with(concat(@desciption,"-"),"_blank-")][@xml:id="id5"][not(following-sibling::*)]/sigma[@xml:id="id6"][not(preceding-sibling::*)]//lambda[following-sibling::theta[starts-with(@token,"_")][preceding-sibling::*[position() = 1]]//eta/tau[@false]//epsilon[contains(concat(@true,"$"),"ue$")][@xml:lang="nb"]]]][position() = 1]]]]</xpath>
<tree>
<any>
<alpha>
<beta xml:lang="en"/>
<mu false="attribute value" xml:lang="no-nb" xml:id="id1"/>
<beta xml:lang="no-nb"/>
<iota or="false" xml:lang="no" xml:id="id2"/>
<xi>
<delta xml:lang="no">
<upsilon token="attribute-value" xml:id="id3"/>
<omega false="_blank" xml:id="id4">
<omega desciption="_blank" xml:id="id5">
<sigma xml:id="id6">
<lambda/>
<theta token="_blank">
<eta>
<tau false="attribute">
<epsilon true="true" xml:lang="nb">
<green>This text must be green</green>
</epsilon>
</tau>
</eta>
</theta>
</sigma>
</omega>
</omega>
</delta>
</xi>
</alpha>
</any>
</tree>
</test>
<test>
<xpath>//phi[@abort]//mu[@xml:lang="no-nb"][@xml:id="id1"]/xi[starts-with(@name,"att")][@xml:lang="no"][@xml:id="id2"]//beta[contains(@number,"l")][@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]//phi[@string][@xml:id="id3"][not(following-sibling::*)]/pi[contains(concat(@false,"$"),"100%$")][@xml:lang="en-GB"]/omicron[@xml:lang="en"][@xml:id="id4"][following-sibling::*[position()=1]][not(child::node())][following-sibling::zeta[contains(concat(@attribute,"$"),"e$")][@xml:id="id5"][not(following-sibling::*)]//chi[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::rho[@false="another attribute value"][not(following-sibling::*)]/beta[@xml:lang="no"][following-sibling::lambda[contains(concat(@name,"$"),"deValue$")][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/pi[@title="this-is-att-value"][@xml:id="id6"][not(preceding-sibling::*)]/kappa[@false="false"][@xml:id="id7"][not(following-sibling::*)][position() = 1]][position() = 1]]]</xpath>
<tree>
<phi abort="this-is-att-value">
<mu xml:lang="no-nb" xml:id="id1">
<xi name="attribute-value" xml:lang="no" xml:id="id2">
<beta number="false" xml:lang="en">
<phi string="100%" xml:id="id3">
<pi false="100%" xml:lang="en-GB">
<omicron xml:lang="en" xml:id="id4"/>
<zeta attribute="false" xml:id="id5">
<chi xml:lang="en"/>
<rho false="another attribute value">
<beta xml:lang="no"/>
<lambda name="this.nodeValue" xml:lang="en">
<pi title="this-is-att-value" xml:id="id6">
<kappa false="false" xml:id="id7">
<green>This text must be green</green>
</kappa>
</pi>
</lambda>
</rho>
</zeta>
</pi>
</phi>
</beta>
</xi>
</mu>
</phi>
</tree>
</test>
<test>
<xpath>//epsilon[@xml:id="id1"]//lambda[contains(@data,"alu")][@xml:lang="no-nb"][not(preceding-sibling::*)]//lambda[@xml:lang="nb"][not(child::node())][following-sibling::upsilon[@xml:lang="en-US"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/nu[contains(concat(@abort,"$"),"t-value$")][not(following-sibling::*)]//alpha[@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)]//kappa[contains(concat(@string,"$"),"alue$")][@xml:lang="en-GB"][@xml:id="id4"]//lambda[contains(concat(@insert,"$")," value$")][not(preceding-sibling::*)][following-sibling::zeta[not(child::node())][following-sibling::psi[@xml:lang="nb"][@xml:id="id5"][not(child::node())][following-sibling::tau[@title="another attribute value"][@xml:lang="en-US"][preceding-sibling::*[position() = 3]][following-sibling::epsilon[not(following-sibling::*)]//gamma[contains(concat(@data,"$"),"23456789$")][@xml:id="id6"][not(following-sibling::*)]/mu[starts-with(@data,"solid 1px g")][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@attr][@xml:lang="en-GB"][@xml:id="id7"][not(child::node())][following-sibling::lambda[@number][@xml:lang="nb"]//mu[contains(concat(@number,"$"),"t-value$")][@xml:lang="no"][not(child::node())][following-sibling::mu[@xml:id="id8"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//xi[@data="attribute"][@xml:lang="no"][not(preceding-sibling::*)]/pi[not(following-sibling::*)]//lambda[starts-with(concat(@false,"-"),"this-")][@xml:lang="en"][@xml:id="id9"]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<epsilon xml:id="id1">
<lambda data="attribute-value" xml:lang="no-nb">
<lambda xml:lang="nb"/>
<upsilon xml:lang="en-US" xml:id="id2">
<nu abort="this-is-att-value">
<alpha xml:lang="en-US" xml:id="id3">
<kappa string="attribute-value" xml:lang="en-GB" xml:id="id4">
<lambda insert="attribute value"/>
<zeta/>
<psi xml:lang="nb" xml:id="id5"/>
<tau title="another attribute value" xml:lang="en-US"/>
<epsilon>
<gamma data="123456789" xml:id="id6">
<mu data="solid 1px green"/>
<omicron attr="_blank" xml:lang="en-GB" xml:id="id7"/>
<lambda number="attribute" xml:lang="nb">
<mu number="this-is-att-value" xml:lang="no"/>
<mu xml:id="id8">
<xi data="attribute" xml:lang="no">
<pi>
<lambda false="this-is-att-value" xml:lang="en" xml:id="id9">
<green>This text must be green</green>
</lambda>
</pi>
</xi>
</mu>
</lambda>
</gamma>
</epsilon>
</kappa>
</alpha>
</nu>
</upsilon>
</lambda>
</epsilon>
</tree>
</test>
<test>
<xpath>//theta[@src]//*[contains(@desciption,"alue")][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[@xml:lang="en-US"][following-sibling::gamma[@string][@xml:lang="en-GB"][@xml:id="id2"][following-sibling::psi[starts-with(concat(@delete,"-"),"attribute-")][following-sibling::nu[@or][@xml:lang="no-nb"][@xml:id="id3"][following-sibling::iota[@number="false"][@xml:lang="no"][@xml:id="id4"]//eta[@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=3]][following-sibling::rho[@xml:lang="no"][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(following-sibling::rho)][following-sibling::omega[@xml:id="id7"][not(preceding-sibling::omega)][following-sibling::*[not(following-sibling::*)]//rho[@xml:lang="en-US"][@xml:id="id8"][following-sibling::xi[@xml:lang="no"][preceding-sibling::*[position() = 1]]/omicron[not(preceding-sibling::*)][not(following-sibling::*)]//tau[@xml:id="id9"]//omega[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<theta src="attribute">
<any desciption="this.nodeValue" xml:id="id1">
<phi xml:lang="en-US"/>
<gamma string="attribute value" xml:lang="en-GB" xml:id="id2"/>
<psi delete="attribute-value"/>
<nu or="100%" xml:lang="no-nb" xml:id="id3"/>
<iota number="false" xml:lang="no" xml:id="id4">
<eta xml:id="id5"/>
<rho xml:lang="no" xml:id="id6"/>
<omega xml:id="id7"/>
<any>
<rho xml:lang="en-US" xml:id="id8"/>
<xi xml:lang="no">
<omicron>
<tau xml:id="id9">
<omega xml:lang="no-nb">
<green>This text must be green</green>
</omega>
</tau>
</omicron>
</xi>
</any>
</iota>
</any>
</theta>
</tree>
</test>
<test>
<xpath>//chi[@number]/lambda[not(following-sibling::*)]/rho[@xml:lang="no"][not(following-sibling::*)]/mu[@xml:id="id1"][not(following-sibling::*)]/lambda[@xml:id="id2"][not(preceding-sibling::*)]//epsilon[@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[@xml:id="id4"][preceding-sibling::*[position() = 1]]/lambda[starts-with(@abort,"th")][@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//epsilon[contains(@false,"e v")][@xml:id="id6"][following-sibling::alpha[following-sibling::*[position()=1]][not(child::node())][following-sibling::beta[contains(@delete,"te value")][@xml:lang="no-nb"][@xml:id="id7"][not(following-sibling::*)]/xi[@xml:lang="no"][not(preceding-sibling::*)]/epsilon[contains(concat(@string,"$"),"ontent$")][@xml:lang="en"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::delta[@token][@xml:lang="nb"][not(following-sibling::*)]//zeta[contains(@string,"alue")][@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<chi number="another attribute value">
<lambda>
<rho xml:lang="no">
<mu xml:id="id1">
<lambda xml:id="id2">
<epsilon xml:id="id3"/>
<any xml:id="id4">
<lambda abort="this.nodeValue" xml:lang="en-GB" xml:id="id5">
<epsilon false="attribute value" xml:id="id6"/>
<alpha/>
<beta delete="another attribute value" xml:lang="no-nb" xml:id="id7">
<xi xml:lang="no">
<epsilon string="content" xml:lang="en" xml:id="id8"/>
<delta token="solid 1px green" xml:lang="nb">
<zeta string="attribute value" xml:lang="en">
<green>This text must be green</green>
</zeta>
</delta>
</xi>
</beta>
</lambda>
</any>
</lambda>
</mu>
</rho>
</lambda>
</chi>
</tree>
</test>
<test>
<xpath>//nu[contains(@abort,"234567")]/delta[contains(concat(@token,"$"),"0%$")][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[not(following-sibling::*)]//mu[@xml:lang="no"][following-sibling::*[position()=1]][following-sibling::mu[@abort][@xml:lang="nb"][@xml:id="id2"][not(following-sibling::*)]/omega[starts-with(@att,"12")][@xml:lang="en"][@xml:id="id3"][following-sibling::*[position()=1]][not(child::node())][following-sibling::sigma[starts-with(concat(@attribute,"-"),"this.nodeValue-")][@xml:id="id4"][not(following-sibling::*)]/rho[contains(@src,"100")][@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]//tau[not(preceding-sibling::*)]//chi[@string="attribute"][@xml:lang="nb"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]]</xpath>
<tree>
<nu abort="123456789">
<delta token="100%" xml:id="id1">
<zeta>
<mu xml:lang="no"/>
<mu abort="true" xml:lang="nb" xml:id="id2">
<omega att="123456789" xml:lang="en" xml:id="id3"/>
<sigma attribute="this.nodeValue" xml:id="id4">
<rho src="100%" xml:lang="no">
<tau>
<chi string="attribute" xml:lang="nb" xml:id="id5">
<green>This text must be green</green>
</chi>
</tau>
</rho>
</sigma>
</mu>
</zeta>
</delta>
</nu>
</tree>
</test>
<test>
<xpath>//alpha//zeta[@abort][not(preceding-sibling::*)][following-sibling::tau[@token][@xml:id="id1"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//chi[@xml:lang="en-GB"][@xml:id="id2"][not(following-sibling::*)]//tau[@true="another attribute value"]/theta[contains(concat(@delete,"$"),"attribute$")][@xml:lang="nb"][not(preceding-sibling::*)]/xi[contains(concat(@and,"$"),"Value$")][@xml:lang="en-GB"][@xml:id="id3"][not(child::node())][following-sibling::omicron[@title][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::epsilon[@xml:lang="en-US"][@xml:id="id4"][not(child::node())][following-sibling::gamma[starts-with(@object,"_")][@xml:lang="no"][@xml:id="id5"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::theta[not(child::node())][following-sibling::kappa[@xml:id="id6"][preceding-sibling::*[position() = 5]][not(child::node())][following-sibling::omicron[@title][@xml:lang="nb"][@xml:id="id7"][preceding-sibling::*[position() = 6]]/phi[starts-with(concat(@src,"-"),"attribute-")][@xml:id="id8"][not(preceding-sibling::*)][not(child::node())][following-sibling::chi[@title="_blank"][@xml:lang="nb"][preceding-sibling::*[position() = 1]]//sigma[@xml:lang="en-GB"][@xml:id="id9"]/theta[starts-with(@insert,"this.node")][@xml:lang="en-US"][@xml:id="id10"]//chi//*[contains(@abort,"e")][@xml:id="id11"][not(child::node())][following-sibling::*[@xml:id="id12"][not(following-sibling::*)]/kappa[contains(concat(@data,"$"),"alue$")][not(following-sibling::*)]]]][position() = 1]]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<alpha>
<zeta abort="attribute value"/>
<tau token="this-is-att-value" xml:id="id1">
<chi xml:lang="en-GB" xml:id="id2">
<tau true="another attribute value">
<theta delete="attribute" xml:lang="nb">
<xi and="this.nodeValue" xml:lang="en-GB" xml:id="id3"/>
<omicron title="content"/>
<epsilon xml:lang="en-US" xml:id="id4"/>
<gamma object="_blank" xml:lang="no" xml:id="id5"/>
<theta/>
<kappa xml:id="id6"/>
<omicron title="_blank" xml:lang="nb" xml:id="id7">
<phi src="attribute-value" xml:id="id8"/>
<chi title="_blank" xml:lang="nb">
<sigma xml:lang="en-GB" xml:id="id9">
<theta insert="this.nodeValue" xml:lang="en-US" xml:id="id10">
<chi>
<any abort="attribute value" xml:id="id11"/>
<any xml:id="id12">
<kappa data="this.nodeValue">
<green>This text must be green</green>
</kappa>
</any>
</chi>
</theta>
</sigma>
</chi>
</omicron>
</theta>
</tau>
</chi>
</tau>
</alpha>
</tree>
</test>
<test>
<xpath>//omega[@xml:lang="en-GB"]/tau[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::epsilon[contains(@att,"ttribute-")][following-sibling::*[position()=3]][not(child::node())][following-sibling::pi[contains(concat(@desciption,"$"),"nt$")][not(child::node())][following-sibling::omicron[@object][@xml:id="id1"][preceding-sibling::*[position() = 3]][following-sibling::epsilon[@false][not(following-sibling::*)]/alpha[@xml:lang="en-US"][not(following-sibling::*)]/phi[contains(@number,"lue")][@xml:id="id2"][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[@xml:lang="no-nb"][@xml:id="id3"][not(following-sibling::*)]/delta[not(preceding-sibling::*)]/psi[starts-with(@desciption,"tru")][@xml:id="id4"][not(preceding-sibling::*)][not(preceding-sibling::psi or following-sibling::psi)]]]]][position() = 1]]</xpath>
<tree>
<omega xml:lang="en-GB">
<tau xml:lang="en-US"/>
<epsilon att="attribute-value"/>
<pi desciption="content"/>
<omicron object="this-is-att-value" xml:id="id1"/>
<epsilon false="attribute-value">
<alpha xml:lang="en-US">
<phi number="attribute-value" xml:id="id2"/>
<delta xml:lang="no-nb" xml:id="id3">
<delta>
<psi desciption="true" xml:id="id4">
<green>This text must be green</green>
</psi>
</delta>
</delta>
</alpha>
</epsilon>
</omega>
</tree>
</test>
<test>
<xpath>//theta[contains(concat(@attrib,"$"),"lue$")][@xml:id="id1"]/phi[contains(@desciption,"on")][@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]//lambda[@xml:lang="nb"]/tau[@string][@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]//psi[@token][@xml:id="id2"][not(following-sibling::*)][not(following-sibling::psi)]/tau[@xml:lang="en-US"][@xml:id="id3"]</xpath>
<tree>
<theta attrib="attribute value" xml:id="id1">
<phi desciption="content" xml:lang="nb">
<lambda xml:lang="nb">
<tau string="false" xml:lang="en">
<psi token="123456789" xml:id="id2">
<tau xml:lang="en-US" xml:id="id3">
<green>This text must be green</green>
</tau>
</psi>
</tau>
</lambda>
</phi>
</theta>
</tree>
</test>
<test>
<xpath>//epsilon[@src="123456789"]//alpha[not(preceding-sibling::*)]/delta[@xml:id="id1"][following-sibling::tau[@desciption][@xml:id="id2"][not(following-sibling::*)]/pi[contains(concat(@attribute,"$"),"ute value$")][following-sibling::*[position()=1]][not(child::node())][following-sibling::iota[@xml:lang="no-nb"][@xml:id="id3"]/*[starts-with(concat(@object,"-"),"attribute value-")][@xml:id="id4"][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[@xml:id="id5"][not(following-sibling::*)]//upsilon[@xml:id="id6"][following-sibling::gamma[starts-with(@true,"at")][@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::xi[@xml:lang="no-nb"][preceding-sibling::*[position() = 2]]//delta[starts-with(@string,"t")][following-sibling::kappa[@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[starts-with(concat(@desciption,"-"),"100%-")][preceding-sibling::*[position() = 2]]/mu[starts-with(@data,"another attribu")][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::xi[contains(concat(@or,"$"),".nodeValue$")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/kappa[contains(concat(@attrib,"$")," value$")][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[contains(concat(@desciption,"$"),"se$")]//theta[@xml:lang="no-nb"][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]]]]]][position() = 1]]]]</xpath>
<tree>
<epsilon src="123456789">
<alpha>
<delta xml:id="id1"/>
<tau desciption="_blank" xml:id="id2">
<pi attribute="attribute value"/>
<iota xml:lang="no-nb" xml:id="id3">
<any object="attribute value" xml:id="id4"/>
<delta xml:id="id5">
<upsilon xml:id="id6"/>
<gamma true="attribute-value" xml:lang="no"/>
<xi xml:lang="no-nb">
<delta string="true"/>
<kappa xml:id="id7"/>
<delta desciption="100%">
<mu data="another attribute value" xml:lang="en-US"/>
<xi or="this.nodeValue">
<kappa attrib="another attribute value"/>
<phi desciption="false">
<theta xml:lang="no-nb" xml:id="id8">
<green>This text must be green</green>
</theta>
</phi>
</xi>
</delta>
</xi>
</delta>
</iota>
</tau>
</alpha>
</epsilon>
</tree>
</test>
<test>
<xpath>//xi[starts-with(concat(@attribute,"-"),"attribute-")][@xml:lang="en"][@xml:id="id1"]/*[@xml:lang="no-nb"]/zeta[starts-with(@or,"attribute-va")][@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/theta[starts-with(@data,"attribute")][not(preceding-sibling::*)][not(following-sibling::*)]//rho[@string][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/chi[not(following-sibling::*)]//epsilon[starts-with(concat(@true,"-"),"this-")][@xml:id="id3"][not(following-sibling::*)]/gamma[@desciption][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/mu[@xml:lang="no"][not(child::node())][following-sibling::theta[@xml:id="id5"][following-sibling::*[position()=3]][not(child::node())][following-sibling::xi[@xml:id="id6"][preceding-sibling::*[position() = 2]][following-sibling::pi[not(child::node())][following-sibling::lambda[@class][preceding-sibling::*[position() = 4]]/lambda[@xml:id="id7"][not(preceding-sibling::*)][following-sibling::sigma[contains(@object,"alse")][@xml:id="id8"]/delta[@xml:lang="nb"][position() = 1]]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<xi attribute="attribute-value" xml:lang="en" xml:id="id1">
<any xml:lang="no-nb">
<zeta or="attribute-value" xml:lang="en" xml:id="id2">
<theta data="attribute">
<rho string="attribute" xml:lang="no-nb">
<chi>
<epsilon true="this-is-att-value" xml:id="id3">
<gamma desciption="100%"/>
<gamma xml:lang="no" xml:id="id4">
<mu xml:lang="no"/>
<theta xml:id="id5"/>
<xi xml:id="id6"/>
<pi/>
<lambda class="attribute value">
<lambda xml:id="id7"/>
<sigma object="false" xml:id="id8">
<delta xml:lang="nb">
<green>This text must be green</green>
</delta>
</sigma>
</lambda>
</gamma>
</epsilon>
</chi>
</rho>
</theta>
</zeta>
</any>
</xi>
</tree>
</test>
<test>
<xpath>//omicron[@insert]/gamma[@xml:id="id1"][not(child::node())][following-sibling::alpha[@abort="content"][@xml:id="id2"][preceding-sibling::*[position() = 1]]//epsilon[contains(concat(@title,"$"),"his-is-att-value$")][not(child::node())][following-sibling::delta[@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::beta[@src][@xml:lang="en-GB"][not(child::node())][following-sibling::*[@abort][@xml:lang="en"]/kappa[contains(@insert,"ont")][@xml:lang="no-nb"]/xi[starts-with(@data,"at")][@xml:lang="nb"][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//pi[not(following-sibling::*)][position() = 1]]][position() = 1]]]]</xpath>
<tree>
<omicron insert="false">
<gamma xml:id="id1"/>
<alpha abort="content" xml:id="id2">
<epsilon title="this-is-att-value"/>
<delta xml:id="id3"/>
<beta src="content" xml:lang="en-GB"/>
<any abort="content" xml:lang="en">
<kappa insert="content" xml:lang="no-nb">
<xi data="attribute value" xml:lang="nb"/>
<nu xml:lang="en-GB">
<pi>
<green>This text must be green</green>
</pi>
</nu>
</kappa>
</any>
</alpha>
</omicron>
</tree>
</test>
<test>
<xpath>//eta/xi[@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//beta[@content][not(preceding-sibling::*)]/phi[not(preceding-sibling::*)][not(following-sibling::*)]//phi[@xml:id="id2"]//epsilon[contains(concat(@attr,"$")," 1px green$")][not(following-sibling::*)]//zeta[contains(concat(@true,"$"),"23456789$")][@xml:lang="no"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::zeta[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/epsilon[@xml:lang="no"][@xml:id="id4"][following-sibling::zeta[@xml:id="id5"][following-sibling::*[position()=4]][following-sibling::iota[@delete][@xml:id="id6"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::chi[starts-with(concat(@title,"-"),"123456789-")][@xml:id="id7"][following-sibling::omicron[starts-with(@or,"attribute v")][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::rho[contains(@name,"e")][@xml:lang="no"][preceding-sibling::*[position() = 5]][not(following-sibling::*)]/phi[@xml:lang="no-nb"][not(preceding-sibling::*)][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<eta>
<xi xml:id="id1">
<beta content="123456789">
<phi>
<phi xml:id="id2">
<epsilon attr="solid 1px green">
<zeta true="123456789" xml:lang="no" xml:id="id3"/>
<zeta xml:lang="no-nb">
<epsilon xml:lang="no" xml:id="id4"/>
<zeta xml:id="id5"/>
<iota delete="_blank" xml:id="id6"/>
<chi title="123456789" xml:id="id7"/>
<omicron or="attribute value"/>
<rho name="attribute value" xml:lang="no">
<phi xml:lang="no-nb">
<green>This text must be green</green>
</phi>
</rho>
</zeta>
</epsilon>
</phi>
</phi>
</beta>
</xi>
</eta>
</tree>
</test>
<test>
<xpath>//sigma[starts-with(@att,"th")][@xml:lang="no"][@xml:id="id1"]//sigma[@xml:lang="no"][not(preceding-sibling::*)][following-sibling::rho[starts-with(concat(@true,"-"),"content-")][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::rho[starts-with(concat(@insert,"-"),"solid 1px green-")][@xml:lang="no"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/zeta[@title][@xml:lang="nb"]/rho[@xml:lang="no-nb"][not(preceding-sibling::*)]][position() = 1]]</xpath>
<tree>
<sigma att="this.nodeValue" xml:lang="no" xml:id="id1">
<sigma xml:lang="no"/>
<rho true="content" xml:id="id2"/>
<rho insert="solid 1px green" xml:lang="no">
<zeta title="true" xml:lang="nb">
<rho xml:lang="no-nb">
<green>This text must be green</green>
</rho>
</zeta>
</rho>
</sigma>
</tree>
</test>
<test>
<xpath>//zeta[starts-with(@false,"attribute val")][@xml:id="id1"]//eta[@xml:id="id2"][not(preceding-sibling::*)][following-sibling::kappa[following-sibling::*[position()=3]][not(child::node())][following-sibling::kappa[@xml:id="id3"][following-sibling::*[position()=2]][following-sibling::rho[@xml:lang="en-US"][@xml:id="id4"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::omicron[@desciption="another attribute value"][@xml:lang="nb"][not(following-sibling::*)]/tau[@and][@xml:id="id5"][not(following-sibling::*)]//chi[@token][@xml:id="id6"][following-sibling::*[position()=1]][not(child::node())][following-sibling::mu[contains(concat(@name,"$"),"-att-value$")]//tau[contains(concat(@and,"$"),"789$")][following-sibling::pi[contains(@data,"0")][@xml:lang="nb"][not(following-sibling::*)]//delta[@src="true"][@xml:lang="nb"]/psi[@xml:lang="nb"][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]//eta[@xml:id="id8"][not(preceding-sibling::*)]/tau[@xml:lang="en"][@xml:id="id9"][not(preceding-sibling::*)]//lambda[not(following-sibling::*)]][position() = 1]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<zeta false="attribute value" xml:id="id1">
<eta xml:id="id2"/>
<kappa/>
<kappa xml:id="id3"/>
<rho xml:lang="en-US" xml:id="id4"/>
<omicron desciption="another attribute value" xml:lang="nb">
<tau and="this.nodeValue" xml:id="id5">
<chi token="attribute value" xml:id="id6"/>
<mu name="this-is-att-value">
<tau and="123456789"/>
<pi data="100%" xml:lang="nb">
<delta src="true" xml:lang="nb">
<psi xml:lang="nb" xml:id="id7">
<eta xml:id="id8">
<tau xml:lang="en" xml:id="id9">
<lambda>
<green>This text must be green</green>
</lambda>
</tau>
</eta>
</psi>
</delta>
</pi>
</mu>
</tau>
</omicron>
</zeta>
</tree>
</test>
<test>
<xpath>//phi[@xml:lang="en-GB"]//chi[contains(@desciption,"e")][@xml:lang="no-nb"]//omega[@xml:lang="nb"][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//nu[not(following-sibling::*)]//nu[contains(concat(@attr,"$"),"alue$")][@xml:lang="en-US"][not(preceding-sibling::*)]//iota[@xml:lang="en-US"]//rho[not(preceding-sibling::*)][not(following-sibling::*)]/phi[following-sibling::lambda[starts-with(concat(@desciption,"-"),"attribute-")][@xml:lang="no"][@xml:id="id2"][position() = 1]]</xpath>
<tree>
<phi xml:lang="en-GB">
<chi desciption="attribute" xml:lang="no-nb">
<omega xml:lang="nb" xml:id="id1">
<nu>
<nu attr="another attribute value" xml:lang="en-US">
<iota xml:lang="en-US">
<rho>
<phi/>
<lambda desciption="attribute-value" xml:lang="no" xml:id="id2">
<green>This text must be green</green>
</lambda>
</rho>
</iota>
</nu>
</nu>
</omega>
</chi>
</phi>
</tree>
</test>
<test>
<xpath>//beta[@data][@xml:lang="en-US"][@xml:id="id1"]/lambda[starts-with(concat(@attr,"-"),"_blank-")][@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::iota[contains(concat(@or,"$"),"er attribute value$")][@xml:lang="en-GB"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::eta[contains(concat(@and,"$"),"e$")][@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//epsilon[@or="123456789"][@xml:id="id4"][following-sibling::*[position()=1]][following-sibling::epsilon[@attribute][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/zeta[@content][@xml:lang="nb"][@xml:id="id5"][not(following-sibling::*)]/*[@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[contains(concat(@attrib,"$"),"ent$")][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::eta[@xml:id="id8"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<beta data="attribute" xml:lang="en-US" xml:id="id1">
<lambda attr="_blank" xml:lang="en-US" xml:id="id2"/>
<iota or="another attribute value" xml:lang="en-GB" xml:id="id3"/>
<eta and="false" xml:lang="en-GB">
<epsilon or="123456789" xml:id="id4"/>
<epsilon attribute="this-is-att-value">
<zeta content="this.nodeValue" xml:lang="nb" xml:id="id5">
<any xml:id="id6"/>
<gamma attrib="content" xml:id="id7"/>
<eta xml:id="id8">
<green>This text must be green</green>
</eta>
</zeta>
</epsilon>
</eta>
</beta>
</tree>
</test>
<test>
<xpath>//lambda[starts-with(concat(@data,"-"),"another attribute value-")][@xml:lang="en"]/xi[not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[preceding-sibling::*[position() = 1]][following-sibling::eta[starts-with(concat(@att,"-"),"this.nodeValue-")][@xml:id="id1"]//mu[@att][@xml:lang="en"][@xml:id="id2"][not(following-sibling::*)]//mu[@xml:lang="no"][not(following-sibling::*)]//chi[@xml:id="id3"]/lambda[contains(concat(@content,"$"),"ttribute value$")][@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::iota[contains(@name,"en")][preceding-sibling::*[position() = 1]][following-sibling::kappa[@xml:lang="no"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]][position() = 1]]]]</xpath>
<tree>
<lambda data="another attribute value" xml:lang="en">
<xi/>
<upsilon/>
<eta att="this.nodeValue" xml:id="id1">
<mu att="true" xml:lang="en" xml:id="id2">
<mu xml:lang="no">
<chi xml:id="id3">
<lambda content="another attribute value" xml:lang="no" xml:id="id4"/>
<iota name="solid 1px green"/>
<kappa xml:lang="no">
<green>This text must be green</green>
</kappa>
</chi>
</mu>
</mu>
</eta>
</lambda>
</tree>
</test>
<test>
<xpath>//*[starts-with(@string,"another attribute va")][@xml:lang="en"][@xml:id="id1"]/gamma[@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::upsilon[starts-with(concat(@token,"-"),"content-")][@xml:id="id3"]/rho[@true="attribute-value"][not(preceding-sibling::*)]/pi[@insert="123456789"][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)][not(preceding-sibling::pi)]/chi[contains(concat(@delete,"$"),"content$")][@xml:lang="nb"][@xml:id="id4"][not(child::node())][following-sibling::eta[@xml:lang="en"]/kappa[@xml:id="id5"]/delta[starts-with(@number,"a")][@xml:lang="en-US"][@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)][not(following-sibling::delta)]/epsilon[@abort][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=4]][following-sibling::gamma[@xml:lang="en"][@xml:id="id7"][not(child::node())][following-sibling::delta[following-sibling::*[position()=2]][following-sibling::omega[starts-with(@or,"solid ")][@xml:id="id8"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[preceding-sibling::*[position() = 4]]/gamma[contains(@number,"e value")][@xml:lang="no"][@xml:id="id9"][not(child::node())][following-sibling::*[starts-with(@delete,"_")]/rho[@xml:lang="nb"][following-sibling::alpha[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][following-sibling::mu[@xml:id="id10"][preceding-sibling::*[position() = 2]]//*[@xml:lang="en-GB"][not(following-sibling::*)]//zeta[@abort][@xml:lang="en-US"][not(preceding-sibling::*)][not(following-sibling::*)]//eta[@attribute="123456789"][not(following-sibling::*)]//iota[@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]][position() = 1]]][position() = 1]]]]]]</xpath>
<tree>
<any string="another attribute value" xml:lang="en" xml:id="id1">
<gamma xml:lang="en-GB" xml:id="id2"/>
<upsilon token="content" xml:id="id3">
<rho true="attribute-value">
<pi insert="123456789" xml:lang="en-GB">
<chi delete="content" xml:lang="nb" xml:id="id4"/>
<eta xml:lang="en">
<kappa xml:id="id5">
<delta number="attribute" xml:lang="en-US" xml:id="id6">
<epsilon abort="false" xml:lang="en-US"/>
<gamma xml:lang="en" xml:id="id7"/>
<delta/>
<omega or="solid 1px green" xml:id="id8"/>
<theta>
<gamma number="attribute value" xml:lang="no" xml:id="id9"/>
<any delete="_blank">
<rho xml:lang="nb"/>
<alpha xml:lang="en-GB"/>
<mu xml:id="id10">
<any xml:lang="en-GB">
<zeta abort="123456789" xml:lang="en-US">
<eta attribute="123456789">
<iota xml:lang="nb">
<green>This text must be green</green>
</iota>
</eta>
</zeta>
</any>
</mu>
</any>
</theta>
</delta>
</kappa>
</eta>
</pi>
</rho>
</upsilon>
</any>
</tree>
</test>
<test>
<xpath>//gamma[@xml:id="id1"]/tau[@xml:id="id2"][not(child::node())][following-sibling::phi[starts-with(@insert,"attribute-v")][@xml:lang="en-US"][@xml:id="id3"][following-sibling::pi//upsilon[@xml:lang="en-GB"][@xml:id="id4"][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@title][@xml:lang="en-US"]/eta[contains(concat(@abort,"$"),"alue$")][not(child::node())][following-sibling::alpha[@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]]/epsilon[@and="solid 1px green"][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::nu[@desciption][@xml:lang="nb"]/psi[@xml:id="id6"][not(following-sibling::*)]//omicron[not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@xml:lang="no"][not(child::node())][following-sibling::mu[not(following-sibling::*)]/iota[contains(concat(@true,"$"),"attribute$")][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::mu[@attr][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::nu[@xml:lang="en-US"][@xml:id="id8"]//*[not(preceding-sibling::*)][position() = 1]][position() = 1]]]]]]]][position() = 1]]</xpath>
<tree>
<gamma xml:id="id1">
<tau xml:id="id2"/>
<phi insert="attribute-value" xml:lang="en-US" xml:id="id3"/>
<pi>
<upsilon xml:lang="en-GB" xml:id="id4"/>
<psi title="false" xml:lang="en-US">
<eta abort="attribute-value"/>
<alpha xml:lang="no-nb" xml:id="id5">
<epsilon and="solid 1px green" xml:lang="no"/>
<nu desciption="attribute-value" xml:lang="nb">
<psi xml:id="id6">
<omicron/>
<eta xml:lang="no"/>
<mu>
<iota true="attribute"/>
<mu attr="false" xml:id="id7"/>
<nu xml:lang="en-US" xml:id="id8">
<any>
<green>This text must be green</green>
</any>
</nu>
</mu>
</psi>
</nu>
</alpha>
</psi>
</pi>
</gamma>
</tree>
</test>
<test>
<xpath>//iota[@xml:id="id1"]//kappa[@xml:id="id2"][not(child::node())][following-sibling::*[@xml:lang="en"][@xml:id="id3"][not(following-sibling::*)]//lambda[@xml:id="id4"][not(preceding-sibling::*)][following-sibling::omega[@xml:lang="en-US"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/xi[@att][@xml:lang="en"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::psi[@content="_blank"][@xml:id="id7"]//kappa[starts-with(concat(@data,"-"),"this-")][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota xml:id="id1">
<kappa xml:id="id2"/>
<any xml:lang="en" xml:id="id3">
<lambda xml:id="id4"/>
<omega xml:lang="en-US" xml:id="id5">
<xi att="_blank" xml:lang="en" xml:id="id6"/>
<psi content="_blank" xml:id="id7">
<kappa data="this-is-att-value" xml:id="id8">
<green>This text must be green</green>
</kappa>
</psi>
</omega>
</any>
</iota>
</tree>
</test>
<test>
<xpath>//tau[@data="solid 1px green"][@xml:lang="nb"][@xml:id="id1"]//zeta[@xml:lang="nb"][not(child::node())][following-sibling::upsilon[@xml:lang="nb"][preceding-sibling::*[position() = 1]]/*[@content="this-is-att-value"][not(preceding-sibling::*)][following-sibling::sigma[starts-with(concat(@false,"-"),"content-")][@xml:lang="nb"][not(following-sibling::*)]//lambda[@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::theta[@desciption="attribute"][@xml:lang="nb"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/epsilon[@and][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[starts-with(concat(@data,"-"),"100%-")][not(following-sibling::*)]//eta[@xml:lang="nb"][@xml:id="id4"][not(following-sibling::*)]//alpha[not(child::node())][following-sibling::omicron[starts-with(@content,"this.nodeVal")][following-sibling::*[position()=2]][not(child::node())][following-sibling::iota[@object="123456789"][@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@xml:lang="no"][@xml:id="id5"][not(following-sibling::*)]/eta[@xml:lang="nb"][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[starts-with(@number,"this.")][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::lambda[@xml:id="id8"][preceding-sibling::*[position() = 2]]//iota/iota[@name][@xml:id="id9"][not(preceding-sibling::*)]/tau[following-sibling::chi[contains(@true,"e")][@xml:id="id10"][preceding-sibling::*[position() = 1]]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<tau data="solid 1px green" xml:lang="nb" xml:id="id1">
<zeta xml:lang="nb"/>
<upsilon xml:lang="nb">
<any content="this-is-att-value"/>
<sigma false="content" xml:lang="nb">
<lambda xml:lang="nb" xml:id="id2"/>
<theta desciption="attribute" xml:lang="nb" xml:id="id3">
<epsilon and="123456789"/>
<kappa data="100%">
<eta xml:lang="nb" xml:id="id4">
<alpha/>
<omicron content="this.nodeValue"/>
<iota object="123456789" xml:lang="en-GB"/>
<phi xml:lang="no" xml:id="id5">
<eta xml:lang="nb" xml:id="id6"/>
<lambda number="this.nodeValue" xml:id="id7"/>
<lambda xml:id="id8">
<iota>
<iota name="attribute value" xml:id="id9">
<tau/>
<chi true="content" xml:id="id10">
<green>This text must be green</green>
</chi>
</iota>
</iota>
</lambda>
</phi>
</eta>
</kappa>
</theta>
</sigma>
</upsilon>
</tau>
</tree>
</test>
<test>
<xpath>//epsilon[contains(@attrib,"e")][@xml:id="id1"]//eta[@true][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@or][@xml:id="id2"][not(child::node())][following-sibling::sigma[preceding-sibling::*[position() = 2]]//psi[@number][@xml:lang="nb"][@xml:id="id3"][following-sibling::*[@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//zeta[@xml:lang="en"][@xml:id="id5"][not(following-sibling::*)]/gamma[@xml:id="id6"]/theta[not(preceding-sibling::*)][not(following-sibling::*)]/chi//lambda[@xml:lang="no-nb"]/gamma[@xml:lang="no"][@xml:id="id7"][not(child::node())][following-sibling::phi[@xml:lang="nb"][@xml:id="id8"][preceding-sibling::*[position() = 1]][following-sibling::gamma[contains(@false,".nodeValue")][@xml:lang="en"][following-sibling::*[position()=1]][not(child::node())][following-sibling::iota[preceding-sibling::*[position() = 3]]//tau[@xml:lang="no-nb"][@xml:id="id9"][not(child::node())][following-sibling::chi[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<epsilon attrib="false" xml:id="id1">
<eta true="_blank"/>
<eta or="true" xml:id="id2"/>
<sigma>
<psi number="this.nodeValue" xml:lang="nb" xml:id="id3"/>
<any xml:lang="no" xml:id="id4">
<zeta xml:lang="en" xml:id="id5">
<gamma xml:id="id6">
<theta>
<chi>
<lambda xml:lang="no-nb">
<gamma xml:lang="no" xml:id="id7"/>
<phi xml:lang="nb" xml:id="id8"/>
<gamma false="this.nodeValue" xml:lang="en"/>
<iota>
<tau xml:lang="no-nb" xml:id="id9"/>
<chi xml:lang="no-nb">
<green>This text must be green</green>
</chi>
</iota>
</lambda>
</chi>
</theta>
</gamma>
</zeta>
</any>
</sigma>
</epsilon>
</tree>
</test>
<test>
<xpath>//pi[@string="100%"][@xml:lang="en"]/chi[@xml:lang="en"][@xml:id="id1"]/xi[contains(concat(@content,"$"),"se$")][not(preceding-sibling::*)]//alpha[contains(@title," ")][@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::rho[@xml:id="id3"][not(following-sibling::*)]/delta[@name="attribute value"][@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]/lambda[contains(concat(@delete,"$"),"e$")][@xml:lang="nb"][not(child::node())][following-sibling::epsilon[@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::epsilon)]/alpha[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::psi[starts-with(concat(@attribute,"-"),"this.nodeValue-")][@xml:id="id5"][preceding-sibling::*[position() = 1]]//tau[starts-with(@title,"_blan")][not(following-sibling::*)]/*[@delete][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::psi[contains(@or,"nother attribute ")][preceding-sibling::*[position() = 1]][following-sibling::*[position()=4]][not(child::node())][following-sibling::pi[following-sibling::nu[starts-with(concat(@object,"-"),"solid 1px green-")][@xml:id="id7"][preceding-sibling::*[position() = 3]][following-sibling::kappa[contains(@content,"attribute va")][@xml:id="id8"][not(child::node())][following-sibling::delta[@xml:lang="no"][not(following-sibling::*)]//phi[@and="attribute-value"][@xml:lang="no-nb"][not(child::node())][following-sibling::theta[contains(@att,"nk")][@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::beta[starts-with(@object,"attr")][not(child::node())][following-sibling::mu[@xml:lang="nb"][not(following-sibling::*)]/phi[@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[@xml:lang="nb"][@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]/xi[@xml:lang="en-GB"][@xml:id="id11"][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<pi string="100%" xml:lang="en">
<chi xml:lang="en" xml:id="id1">
<xi content="false">
<alpha title="attribute value" xml:lang="nb" xml:id="id2"/>
<rho xml:id="id3">
<delta name="attribute value" xml:lang="en">
<lambda delete="attribute" xml:lang="nb"/>
<epsilon xml:lang="no" xml:id="id4">
<alpha xml:lang="en-US"/>
<psi attribute="this.nodeValue" xml:id="id5">
<tau title="_blank">
<any delete="attribute-value" xml:id="id6"/>
<psi or="another attribute value"/>
<pi/>
<nu object="solid 1px green" xml:id="id7"/>
<kappa content="attribute value" xml:id="id8"/>
<delta xml:lang="no">
<phi and="attribute-value" xml:lang="no-nb"/>
<theta att="_blank" xml:lang="nb"/>
<beta object="attribute"/>
<mu xml:lang="nb">
<phi xml:id="id9">
<zeta xml:lang="nb" xml:id="id10">
<xi xml:lang="en-GB" xml:id="id11">
<green>This text must be green</green>
</xi>
</zeta>
</phi>
</mu>
</delta>
</tau>
</psi>
</epsilon>
</delta>
</rho>
</xi>
</chi>
</pi>
</tree>
</test>
<test>
<xpath>//tau/xi[@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@insert][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::theta[@token][not(following-sibling::*)]/tau[@xml:id="id1"]//zeta[contains(@insert,"100")][@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::beta[not(child::node())][following-sibling::alpha[@xml:lang="en-US"][preceding-sibling::*[position() = 2]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<tau>
<xi xml:lang="en-GB"/>
<eta insert="false"/>
<theta token="true">
<tau xml:id="id1">
<zeta insert="100%" xml:lang="nb"/>
<beta/>
<alpha xml:lang="en-US">
<green>This text must be green</green>
</alpha>
</tau>
</theta>
</tau>
</tree>
</test>
<test>
<xpath>//omega[starts-with(@number,"_bla")][@xml:lang="en"]/tau[@xml:id="id1"][not(preceding-sibling::*)]/eta[contains(@src,"deValue")][@xml:lang="en"][following-sibling::gamma[contains(concat(@false,"$"),"100%$")][@xml:id="id2"][following-sibling::alpha[not(following-sibling::*)]/nu[starts-with(concat(@data,"-"),"this-")][@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::delta[starts-with(@att,"attrib")][preceding-sibling::*[position() = 1]][following-sibling::pi[contains(@att,"a")][preceding-sibling::*[position() = 2]][following-sibling::*[@false][@xml:lang="no-nb"][@xml:id="id3"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::psi[starts-with(@and,"another attribu")][@xml:id="id4"][not(preceding-sibling::psi)]//epsilon[starts-with(concat(@insert,"-"),"attribute-")][@xml:id="id5"][following-sibling::omega[@xml:lang="en"][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/theta[@attribute][@xml:id="id7"][not(child::node())][following-sibling::nu[@xml:lang="en"]//omicron[@att][@xml:lang="en-US"][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]/omega[@insert][@xml:lang="no"][following-sibling::*[position()=3]][not(child::node())][following-sibling::alpha[@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][following-sibling::lambda[@xml:id="id9"][following-sibling::*[position()=1]][following-sibling::nu[not(following-sibling::*)]//xi[@xml:lang="en"][@xml:id="id10"][following-sibling::*[position()=3]][not(child::node())][following-sibling::tau[contains(concat(@data,"$"),"false$")][@xml:id="id11"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::zeta[@xml:lang="en"][not(child::node())][following-sibling::theta[@delete="attribute"][@xml:id="id12"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<omega number="_blank" xml:lang="en">
<tau xml:id="id1">
<eta src="this.nodeValue" xml:lang="en"/>
<gamma false="100%" xml:id="id2"/>
<alpha>
<nu data="this-is-att-value" xml:lang="en-US"/>
<delta att="attribute"/>
<pi att="attribute value"/>
<any false="_blank" xml:lang="no-nb" xml:id="id3"/>
<psi and="another attribute value" xml:id="id4">
<epsilon insert="attribute" xml:id="id5"/>
<omega xml:lang="en" xml:id="id6">
<theta attribute="another attribute value" xml:id="id7"/>
<nu xml:lang="en">
<omicron att="solid 1px green" xml:lang="en-US" xml:id="id8">
<omega insert="false" xml:lang="no"/>
<alpha xml:lang="nb"/>
<lambda xml:id="id9"/>
<nu>
<xi xml:lang="en" xml:id="id10"/>
<tau data="false" xml:id="id11"/>
<zeta xml:lang="en"/>
<theta delete="attribute" xml:id="id12">
<green>This text must be green</green>
</theta>
</nu>
</omicron>
</nu>
</omega>
</psi>
</alpha>
</tau>
</omega>
</tree>
</test>
<test>
<xpath>//gamma[@xml:id="id1"]//rho[@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::iota[@xml:id="id3"][not(following-sibling::*)]//chi[@string][not(following-sibling::chi)][not(child::node())][following-sibling::epsilon[contains(concat(@abort,"$"),"value$")][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::theta[@data="solid 1px green"][@xml:id="id5"]//omega[starts-with(@true,"this.n")][@xml:lang="nb"][@xml:id="id6"][not(following-sibling::*)][not(preceding-sibling::omega or following-sibling::omega)]/theta[@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[contains(concat(@attribute,"$"),"bute value$")][@xml:lang="en-GB"][following-sibling::kappa[@src][@xml:lang="nb"][@xml:id="id8"]/iota[@xml:id="id9"][not(following-sibling::*)]/upsilon[starts-with(@insert,"fal")][@xml:lang="no"][@xml:id="id10"]//phi[not(following-sibling::*)]/lambda[not(following-sibling::*)]//chi[@data][@xml:lang="no-nb"][not(child::node())][following-sibling::theta[@xml:id="id11"][not(following-sibling::*)]]]][position() = 1]]]]</xpath>
<tree>
<gamma xml:id="id1">
<rho xml:lang="nb" xml:id="id2"/>
<iota xml:id="id3">
<chi string="attribute value"/>
<epsilon abort="attribute value" xml:id="id4"/>
<theta data="solid 1px green" xml:id="id5">
<omega true="this.nodeValue" xml:lang="nb" xml:id="id6">
<theta xml:id="id7"/>
<eta attribute="attribute value" xml:lang="en-GB"/>
<kappa src="content" xml:lang="nb" xml:id="id8">
<iota xml:id="id9">
<upsilon insert="false" xml:lang="no" xml:id="id10">
<phi>
<lambda>
<chi data="attribute-value" xml:lang="no-nb"/>
<theta xml:id="id11">
<green>This text must be green</green>
</theta>
</lambda>
</phi>
</upsilon>
</iota>
</kappa>
</omega>
</theta>
</iota>
</gamma>
</tree>
</test>
<test>
<xpath>//tau[@xml:lang="no-nb"]//chi[@name="this.nodeValue"][@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]//rho[@delete][@xml:lang="en-US"][@xml:id="id1"][not(child::node())][following-sibling::kappa[@true][@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 1]]/*[@xml:lang="no-nb"][@xml:id="id3"][following-sibling::sigma[@xml:lang="no"][@xml:id="id4"][not(child::node())][following-sibling::nu[@xml:id="id5"][preceding-sibling::*[position() = 2]]//delta[@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[starts-with(@desciption,"true")][@xml:lang="no-nb"][@xml:id="id7"]/omega[starts-with(concat(@abort,"-"),"123456789-")][@xml:id="id8"]//tau[starts-with(concat(@src,"-"),"false-")][@xml:lang="nb"][@xml:id="id9"][not(following-sibling::*)]//lambda[contains(concat(@or,"$"),"een$")][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[contains(@attribute,"ls")][@xml:lang="no-nb"][following-sibling::chi[@class][@xml:id="id10"][not(following-sibling::*)]//lambda[@string][following-sibling::mu[@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::psi[following-sibling::upsilon[@xml:id="id11"][not(following-sibling::*)]/chi[starts-with(@src,"123456")][@xml:lang="en"][not(preceding-sibling::*)][following-sibling::theta[preceding-sibling::*[position() = 1]][following-sibling::epsilon[contains(@number,"ribute value")][preceding-sibling::*[position() = 2]][not(preceding-sibling::epsilon or following-sibling::epsilon)][following-sibling::kappa[@xml:lang="nb"]]]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<tau xml:lang="no-nb">
<chi name="this.nodeValue" xml:lang="en">
<rho delete="solid 1px green" xml:lang="en-US" xml:id="id1"/>
<kappa true="solid 1px green" xml:lang="no" xml:id="id2">
<any xml:lang="no-nb" xml:id="id3"/>
<sigma xml:lang="no" xml:id="id4"/>
<nu xml:id="id5">
<delta xml:id="id6"/>
<sigma desciption="true" xml:lang="no-nb" xml:id="id7">
<omega abort="123456789" xml:id="id8">
<tau src="false" xml:lang="nb" xml:id="id9">
<lambda or="solid 1px green"/>
<omicron attribute="false" xml:lang="no-nb"/>
<chi class="this.nodeValue" xml:id="id10">
<lambda string="attribute-value"/>
<mu xml:lang="no"/>
<psi/>
<upsilon xml:id="id11">
<chi src="123456789" xml:lang="en"/>
<theta/>
<epsilon number="attribute value"/>
<kappa xml:lang="nb">
<green>This text must be green</green>
</kappa>
</upsilon>
</chi>
</tau>
</omega>
</sigma>
</nu>
</kappa>
</chi>
</tau>
</tree>
</test>
<test>
<xpath>//epsilon[contains(@attribute,"als")][@xml:id="id1"]/omicron[@xml:id="id2"]/mu[starts-with(@title,"another att")][@xml:lang="nb"][@xml:id="id3"][following-sibling::kappa[@xml:lang="no-nb"][following-sibling::*[position()=1]][following-sibling::psi[starts-with(@number,"this-is-at")][@xml:lang="en"][preceding-sibling::*[position() = 2]]//*[@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/sigma[@xml:id="id5"][not(preceding-sibling::*)]/rho[not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::tau[@xml:id="id6"]/lambda[@xml:lang="no"][@xml:id="id7"][not(preceding-sibling::*)]/chi[@xml:lang="nb"][@xml:id="id8"][not(following-sibling::chi)][not(child::node())][following-sibling::theta[contains(concat(@class,"$"),"ue$")][@xml:lang="en-GB"][@xml:id="id9"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::zeta[preceding-sibling::*[position() = 2]]//pi[starts-with(concat(@data,"-"),"attribute-")][not(preceding-sibling::*)][not(preceding-sibling::pi)][not(child::node())][following-sibling::nu[@att][preceding-sibling::*[position() = 1]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<epsilon attribute="false" xml:id="id1">
<omicron xml:id="id2">
<mu title="another attribute value" xml:lang="nb" xml:id="id3"/>
<kappa xml:lang="no-nb"/>
<psi number="this-is-att-value" xml:lang="en">
<any xml:lang="no" xml:id="id4">
<sigma xml:id="id5">
<rho/>
<tau xml:id="id6">
<lambda xml:lang="no" xml:id="id7">
<chi xml:lang="nb" xml:id="id8"/>
<theta class="true" xml:lang="en-GB" xml:id="id9"/>
<zeta>
<pi data="attribute"/>
<nu att="this-is-att-value">
<green>This text must be green</green>
</nu>
</zeta>
</lambda>
</tau>
</sigma>
</any>
</psi>
</omicron>
</epsilon>
</tree>
</test>
<test>
<xpath>//gamma//upsilon[not(child::node())][following-sibling::nu[@xml:id="id1"][not(child::node())][following-sibling::eta[starts-with(concat(@att,"-"),"another attribute value-")][preceding-sibling::*[position() = 2]]//sigma[not(preceding-sibling::*)]//lambda[@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::rho[@xml:id="id3"][following-sibling::mu[contains(@title,"tt-valu")][@xml:id="id4"][not(following-sibling::*)]/sigma[contains(@title,"ibute")]/theta[contains(@true," value")][not(following-sibling::*)]/gamma[position() = 1]]][position() = 1]]]</xpath>
<tree>
<gamma>
<upsilon/>
<nu xml:id="id1"/>
<eta att="another attribute value">
<sigma>
<lambda xml:lang="en-US" xml:id="id2"/>
<rho xml:id="id3"/>
<mu title="this-is-att-value" xml:id="id4">
<sigma title="attribute-value">
<theta true="attribute value">
<gamma>
<green>This text must be green</green>
</gamma>
</theta>
</sigma>
</mu>
</sigma>
</eta>
</gamma>
</tree>
</test>
<test>
<xpath>//eta[@xml:id="id1"]//gamma[@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/chi[not(child::node())][following-sibling::lambda[@xml:id="id3"][preceding-sibling::*[position() = 1]][following-sibling::xi[starts-with(concat(@delete,"-"),"this-")][preceding-sibling::*[position() = 2]]//psi[contains(@desciption,"tribute")][@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)]/tau[@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::omega[@content="true"][@xml:lang="no-nb"][@xml:id="id6"][preceding-sibling::*[position() = 1]][following-sibling::phi[@xml:lang="en-US"][@xml:id="id7"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/mu[contains(concat(@number,"$"),"lse$")][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[@xml:lang="en-US"][@xml:id="id8"]//pi[not(following-sibling::*)]//pi[contains(@title,"t")][@xml:lang="no"][@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)]//alpha[not(preceding-sibling::*)]/gamma[contains(@name,"ntent")][not(child::node())][following-sibling::theta[@string][@xml:lang="en"][@xml:id="id10"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/omega[not(following-sibling::*)]//alpha[contains(@src,"x gree")][@xml:lang="nb"]//delta[@xml:lang="en-US"][not(child::node())][following-sibling::upsilon[contains(@delete,"k")][@xml:lang="nb"][@xml:id="id11"][following-sibling::*[position()=1]][following-sibling::omicron[@xml:lang="en-GB"][@xml:id="id12"]/upsilon[starts-with(@delete,"this-is-att-")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]/kappa[@xml:id="id13"][following-sibling::*[position()=1]][following-sibling::omega[starts-with(concat(@class,"-"),"true-")][@xml:lang="no"][@xml:id="id14"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<eta xml:id="id1">
<gamma xml:lang="en" xml:id="id2">
<chi/>
<lambda xml:id="id3"/>
<xi delete="this-is-att-value">
<psi desciption="attribute" xml:lang="en-US" xml:id="id4">
<tau xml:id="id5"/>
<omega content="true" xml:lang="no-nb" xml:id="id6"/>
<phi xml:lang="en-US" xml:id="id7">
<mu number="false"/>
<nu xml:lang="en-US" xml:id="id8">
<pi>
<pi title="content" xml:lang="no" xml:id="id9">
<alpha>
<gamma name="content"/>
<theta string="solid 1px green" xml:lang="en" xml:id="id10">
<omega>
<alpha src="solid 1px green" xml:lang="nb">
<delta xml:lang="en-US"/>
<upsilon delete="_blank" xml:lang="nb" xml:id="id11"/>
<omicron xml:lang="en-GB" xml:id="id12">
<upsilon delete="this-is-att-value" xml:lang="en-GB">
<kappa xml:id="id13"/>
<omega class="true" xml:lang="no" xml:id="id14">
<green>This text must be green</green>
</omega>
</upsilon>
</omicron>
</alpha>
</omega>
</theta>
</alpha>
</pi>
</pi>
</nu>
</phi>
</psi>
</xi>
</gamma>
</eta>
</tree>
</test>
<test>
<xpath>//pi[@xml:id="id1"]/zeta[contains(concat(@and,"$"),"n$")][@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=5]][following-sibling::gamma[@xml:lang="en-US"][@xml:id="id3"][not(child::node())][following-sibling::psi[@xml:lang="en"][not(child::node())][following-sibling::iota[@xml:id="id4"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::zeta[starts-with(@number,"attr")][@xml:lang="en-GB"][following-sibling::*[position()=1]][following-sibling::beta[@xml:lang="en"][preceding-sibling::*[position() = 5]][not(following-sibling::*)]//gamma[@xml:lang="en"][not(preceding-sibling::*)][not(child::node())][following-sibling::omega[contains(concat(@attrib,"$"),"3456789$")][@xml:id="id5"][preceding-sibling::*[position() = 1]]//omega[starts-with(@content,"c")][@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]/upsilon[@xml:lang="no-nb"][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]/gamma[starts-with(@attribute,"att")][@xml:lang="nb"]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<pi xml:id="id1">
<zeta and="solid 1px green" xml:lang="no-nb" xml:id="id2"/>
<gamma xml:lang="en-US" xml:id="id3"/>
<psi xml:lang="en"/>
<iota xml:id="id4"/>
<zeta number="attribute" xml:lang="en-GB"/>
<beta xml:lang="en">
<gamma xml:lang="en"/>
<omega attrib="123456789" xml:id="id5">
<omega content="content" xml:id="id6">
<upsilon xml:lang="no-nb" xml:id="id7">
<gamma attribute="attribute-value" xml:lang="nb">
<green>This text must be green</green>
</gamma>
</upsilon>
</omega>
</omega>
</beta>
</pi>
</tree>
</test>
<test>
<xpath>//nu[@xml:id="id1"]/chi[contains(concat(@class,"$"),"k$")][@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::*[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/mu[@xml:lang="nb"][not(preceding-sibling::*)]/mu[contains(@number,"ute")][@xml:lang="en-US"][not(following-sibling::*)]/kappa[@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[starts-with(concat(@number,"-"),"attribute value-")][@xml:lang="en"][@xml:id="id3"][preceding-sibling::*[position() = 1]]/iota[starts-with(concat(@number,"-"),"true-")][following-sibling::rho[@xml:lang="en-GB"][@xml:id="id4"][following-sibling::upsilon[@xml:id="id5"][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<nu xml:id="id1">
<chi class="_blank" xml:lang="no" xml:id="id2"/>
<any>
<mu xml:lang="nb">
<mu number="attribute" xml:lang="en-US">
<kappa xml:lang="en-US"/>
<gamma number="attribute value" xml:lang="en" xml:id="id3">
<iota number="true"/>
<rho xml:lang="en-GB" xml:id="id4"/>
<upsilon xml:id="id5">
<green>This text must be green</green>
</upsilon>
</gamma>
</mu>
</mu>
</any>
</nu>
</tree>
</test>
<test>
<xpath>//delta[starts-with(concat(@attribute,"-"),"true-")][@xml:id="id1"]/chi[starts-with(concat(@or,"-"),"this.nodeValue-")][@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::theta[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::nu[@xml:lang="no-nb"][@xml:id="id3"][preceding-sibling::*[position() = 2]]//beta[@content][@xml:id="id4"]//upsilon[@delete][@xml:id="id5"][not(following-sibling::*)]/rho[contains(@desciption,"tru")][@xml:lang="nb"][@xml:id="id6"][not(following-sibling::*)]//nu[@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::pi[@title][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::omicron[@xml:lang="en-US"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::rho[@xml:lang="no-nb"][@xml:id="id8"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::omega[starts-with(@number,"123")][@xml:lang="no-nb"][@xml:id="id9"][following-sibling::*[position()=1]][not(child::node())][following-sibling::upsilon[@xml:lang="no-nb"][@xml:id="id10"]/sigma[@xml:lang="en-US"][@xml:id="id11"][following-sibling::omicron[@xml:lang="nb"][@xml:id="id12"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::tau[starts-with(concat(@or,"-"),"123456789-")][@xml:id="id13"][preceding-sibling::*[position() = 2]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]]]]</xpath>
<tree>
<delta attribute="true" xml:id="id1">
<chi or="this.nodeValue" xml:lang="nb" xml:id="id2"/>
<theta xml:lang="en-US"/>
<nu xml:lang="no-nb" xml:id="id3">
<beta content="attribute-value" xml:id="id4">
<upsilon delete="100%" xml:id="id5">
<rho desciption="true" xml:lang="nb" xml:id="id6">
<nu xml:lang="no-nb"/>
<pi title="false" xml:id="id7"/>
<omicron xml:lang="en-US"/>
<rho xml:lang="no-nb" xml:id="id8"/>
<omega number="123456789" xml:lang="no-nb" xml:id="id9"/>
<upsilon xml:lang="no-nb" xml:id="id10">
<sigma xml:lang="en-US" xml:id="id11"/>
<omicron xml:lang="nb" xml:id="id12"/>
<tau or="123456789" xml:id="id13">
<green>This text must be green</green>
</tau>
</upsilon>
</rho>
</upsilon>
</beta>
</nu>
</delta>
</tree>
</test>
<test>
<xpath>//epsilon[@object="attribute"][@xml:id="id1"]/mu[starts-with(@att,"1")][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//nu//lambda[@xml:lang="no"][@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@attrib][@xml:lang="en-GB"][@xml:id="id6"][following-sibling::*[position()=3]][following-sibling::omicron[starts-with(concat(@title,"-"),"_blank-")][@xml:lang="en-US"][preceding-sibling::*[position() = 2]][not(following-sibling::omicron)][not(child::node())][following-sibling::upsilon[starts-with(concat(@number,"-"),"_blank-")][@xml:lang="en"][not(child::node())][following-sibling::iota[starts-with(concat(@delete,"-"),"100%-")][@xml:lang="no-nb"][@xml:id="id7"]/psi[not(following-sibling::*)]//iota[starts-with(@att,"this-is-att-valu")][@xml:id="id8"][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<epsilon object="attribute" xml:id="id1">
<mu att="100%" xml:id="id2">
<phi xml:id="id3"/>
<phi xml:id="id4">
<nu>
<lambda xml:lang="no" xml:id="id5"/>
<tau attrib="true" xml:lang="en-GB" xml:id="id6"/>
<omicron title="_blank" xml:lang="en-US"/>
<upsilon number="_blank" xml:lang="en"/>
<iota delete="100%" xml:lang="no-nb" xml:id="id7">
<psi>
<iota att="this-is-att-value" xml:id="id8">
<green>This text must be green</green>
</iota>
</psi>
</iota>
</nu>
</phi>
</mu>
</epsilon>
</tree>
</test>
<test>
<xpath>//omicron[starts-with(concat(@title,"-"),"content-")][@xml:id="id1"]/zeta[starts-with(concat(@att,"-"),"content-")][@xml:lang="en"]/psi[@att][@xml:lang="no"][not(following-sibling::*)][not(preceding-sibling::psi)]/xi[@or="attribute value"][not(child::node())][following-sibling::upsilon[not(following-sibling::*)]//alpha[@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::xi[contains(@false,"fa")][@xml:lang="en"][following-sibling::*[position()=4]][following-sibling::xi[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::iota[contains(concat(@object,"$")," attribute value$")][@xml:id="id2"][following-sibling::lambda[starts-with(concat(@title,"-"),"this-")][@xml:lang="no-nb"][@xml:id="id3"][not(child::node())][following-sibling::omicron[@xml:lang="en"][preceding-sibling::*[position() = 5]]/alpha[@data="123456789"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/rho[@data="solid 1px green"][@xml:lang="en-GB"]//delta[following-sibling::*[position()=1]][following-sibling::lambda[starts-with(concat(@desciption,"-"),"this.nodeValue-")][@xml:lang="en-US"]/sigma[starts-with(@name,"12")][@xml:lang="en-GB"]/phi[contains(concat(@attrib,"$"),"100%$")]//zeta[@xml:lang="en-GB"][not(following-sibling::*)][position() = 1]]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<omicron title="content" xml:id="id1">
<zeta att="content" xml:lang="en">
<psi att="solid 1px green" xml:lang="no">
<xi or="attribute value"/>
<upsilon>
<alpha xml:lang="en-GB"/>
<xi false="false" xml:lang="en"/>
<xi xml:lang="en-GB"/>
<iota object="another attribute value" xml:id="id2"/>
<lambda title="this-is-att-value" xml:lang="no-nb" xml:id="id3"/>
<omicron xml:lang="en">
<alpha data="123456789" xml:id="id4">
<rho data="solid 1px green" xml:lang="en-GB">
<delta/>
<lambda desciption="this.nodeValue" xml:lang="en-US">
<sigma name="123456789" xml:lang="en-GB">
<phi attrib="100%">
<zeta xml:lang="en-GB">
<green>This text must be green</green>
</zeta>
</phi>
</sigma>
</lambda>
</rho>
</alpha>
</omicron>
</upsilon>
</psi>
</zeta>
</omicron>
</tree>
</test>
<test>
<xpath>//chi[starts-with(concat(@object,"-"),"solid 1px green-")][@xml:lang="en-US"]/xi[contains(@string,"onte")][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::iota[@insert="true"][preceding-sibling::*[position() = 1]]/mu[@number="another attribute value"][@xml:lang="nb"][not(child::node())][following-sibling::omicron[@or="this-is-att-value"][@xml:lang="no-nb"][@xml:id="id1"][preceding-sibling::*[position() = 1]]/eta[contains(@desciption,"deValue")][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[preceding-sibling::*[position() = 1]]/upsilon[not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::epsilon[@data="solid 1px green"][@xml:lang="en-GB"][@xml:id="id2"][preceding-sibling::*[position() = 1]]/*[@xml:lang="en-GB"][@xml:id="id3"][not(child::node())][following-sibling::lambda[starts-with(@attr,"1234")][@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 1]]//zeta[starts-with(concat(@string,"-"),"content-")][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<chi object="solid 1px green" xml:lang="en-US">
<xi string="content" xml:lang="nb"/>
<iota insert="true">
<mu number="another attribute value" xml:lang="nb"/>
<omicron or="this-is-att-value" xml:lang="no-nb" xml:id="id1">
<eta desciption="this.nodeValue"/>
<upsilon>
<upsilon/>
<epsilon data="solid 1px green" xml:lang="en-GB" xml:id="id2">
<any xml:lang="en-GB" xml:id="id3"/>
<lambda attr="123456789" xml:lang="no" xml:id="id4">
<zeta string="content">
<green>This text must be green</green>
</zeta>
</lambda>
</epsilon>
</upsilon>
</omicron>
</iota>
</chi>
</tree>
</test>
<test>
<xpath>//epsilon[@data="true"]//lambda[starts-with(@attrib,"false")][@xml:lang="nb"][following-sibling::*[@xml:lang="no"][not(following-sibling::*)]/eta[contains(concat(@delete,"$"),"ribute value$")][@xml:lang="en-US"][@xml:id="id1"]/xi[@title][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[@xml:lang="no-nb"][@xml:id="id2"]//omicron[@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@false="this.nodeValue"][following-sibling::mu[not(child::node())][following-sibling::*[starts-with(concat(@false,"-"),"another attribute value-")][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::beta[starts-with(@content,"so")][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[@att][@xml:id="id4"][not(following-sibling::*)][position() = 1]]][position() = 1]]]]]]</xpath>
<tree>
<epsilon data="true">
<lambda attrib="false" xml:lang="nb"/>
<any xml:lang="no">
<eta delete="another attribute value" xml:lang="en-US" xml:id="id1">
<xi title="false"/>
<upsilon xml:lang="no-nb" xml:id="id2">
<omicron xml:id="id3"/>
<xi false="this.nodeValue"/>
<mu/>
<any false="another attribute value"/>
<beta content="solid 1px green"/>
<alpha att="123456789" xml:id="id4">
<green>This text must be green</green>
</alpha>
</upsilon>
</eta>
</any>
</epsilon>
</tree>
</test>
<test>
<xpath>//rho[@xml:lang="en"][@xml:id="id1"]/*[@xml:lang="en-US"][@xml:id="id2"][not(following-sibling::*)]/omega[@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]//tau[starts-with(@data,"thi")][not(preceding-sibling::*)][not(following-sibling::*)]//epsilon[@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@false][following-sibling::*[position()=1]][not(preceding-sibling::eta)][following-sibling::theta[@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 2]]/iota[not(preceding-sibling::*)]//epsilon[@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]]</xpath>
<tree>
<rho xml:lang="en" xml:id="id1">
<any xml:lang="en-US" xml:id="id2">
<omega xml:lang="nb">
<tau data="this-is-att-value">
<epsilon xml:lang="en-US"/>
<eta false="this-is-att-value"/>
<theta xml:lang="no" xml:id="id3">
<iota>
<epsilon xml:id="id4">
<green>This text must be green</green>
</epsilon>
</iota>
</theta>
</tau>
</omega>
</any>
</rho>
</tree>
</test>
<test>
<xpath>//eta[contains(@token,"bla")][@xml:lang="no"][@xml:id="id1"]/tau[@attribute="another attribute value"][@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//kappa[@abort="this-is-att-value"][@xml:lang="en-US"][not(child::node())][following-sibling::delta[starts-with(concat(@title,"-"),"this.nodeValue-")][@xml:lang="nb"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//*[@token][@xml:lang="no-nb"][@xml:id="id4"][following-sibling::*[position()=4]][not(child::node())][following-sibling::theta[@xml:lang="en"][@xml:id="id5"][following-sibling::*[position()=3]][following-sibling::xi[@xml:lang="no"][@xml:id="id6"][following-sibling::beta[@xml:lang="no"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::kappa[contains(concat(@desciption,"$"),"alse$")][@xml:id="id7"][not(following-sibling::*)]/kappa[not(following-sibling::*)]//theta[@xml:id="id8"][not(child::node())][following-sibling::omicron[@data][following-sibling::psi[@xml:lang="nb"][not(following-sibling::*)]//rho[contains(@token,"t")][@xml:lang="nb"][not(following-sibling::*)][not(preceding-sibling::rho)]//omega[@xml:lang="en-GB"][@xml:id="id9"][not(following-sibling::*)]/eta[starts-with(@false,"t")][@xml:lang="en-GB"]/eta[@xml:lang="en-US"][@xml:id="id10"][not(preceding-sibling::*)]//omicron[@xml:id="id11"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<eta token="_blank" xml:lang="no" xml:id="id1">
<tau attribute="another attribute value" xml:lang="no-nb" xml:id="id2">
<kappa abort="this-is-att-value" xml:lang="en-US"/>
<delta title="this.nodeValue" xml:lang="nb" xml:id="id3">
<any token="content" xml:lang="no-nb" xml:id="id4"/>
<theta xml:lang="en" xml:id="id5"/>
<xi xml:lang="no" xml:id="id6"/>
<beta xml:lang="no"/>
<kappa desciption="false" xml:id="id7">
<kappa>
<theta xml:id="id8"/>
<omicron data="_blank"/>
<psi xml:lang="nb">
<rho token="true" xml:lang="nb">
<omega xml:lang="en-GB" xml:id="id9">
<eta false="true" xml:lang="en-GB">
<eta xml:lang="en-US" xml:id="id10">
<omicron xml:id="id11">
<green>This text must be green</green>
</omicron>
</eta>
</eta>
</omega>
</rho>
</psi>
</kappa>
</kappa>
</delta>
</tau>
</eta>
</tree>
</test>
<test>
<xpath>//chi[@attrib="content"][@xml:id="id1"]/nu[@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::gamma[@xml:lang="nb"][@xml:id="id3"][following-sibling::*[position()=1]][not(child::node())][following-sibling::sigma[@xml:id="id4"]//beta[@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::lambda[contains(concat(@name,"$"),"his-is-att-value$")][@xml:lang="en-US"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::sigma[contains(concat(@att,"$"),"deValue$")][@xml:lang="no"][@xml:id="id6"][preceding-sibling::*[position() = 2]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<chi attrib="content" xml:id="id1">
<nu xml:lang="no" xml:id="id2"/>
<gamma xml:lang="nb" xml:id="id3"/>
<sigma xml:id="id4">
<beta xml:lang="en-GB"/>
<lambda name="this-is-att-value" xml:lang="en-US" xml:id="id5"/>
<sigma att="this.nodeValue" xml:lang="no" xml:id="id6">
<green>This text must be green</green>
</sigma>
</sigma>
</chi>
</tree>
</test>
<test>
<xpath>//lambda[@xml:lang="en-US"][@xml:id="id1"]//omega[@xml:lang="no"][@xml:id="id2"]//*[@xml:lang="en-GB"][@xml:id="id3"][not(following-sibling::*)]//sigma[@name][@xml:lang="en"][@xml:id="id4"][not(following-sibling::*)]/pi[starts-with(@token,"attribute-va")][@xml:lang="no-nb"][not(preceding-sibling::*)]/epsilon[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::sigma[@true][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::theta[starts-with(@attr,"_bla")][@xml:lang="nb"][preceding-sibling::*[position() = 2]][following-sibling::theta[@xml:lang="en"][@xml:id="id6"]//eta[@name][@xml:lang="en"][@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[@name][@xml:lang="nb"][following-sibling::*[position()=3]][following-sibling::eta[@title][@xml:lang="nb"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][following-sibling::lambda[@xml:id="id8"][preceding-sibling::*[position() = 3]][following-sibling::pi[@xml:id="id9"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]/omicron[not(preceding-sibling::*)][not(following-sibling::*)]//psi[@xml:lang="no-nb"][following-sibling::delta[@xml:lang="no-nb"][@xml:id="id10"][not(child::node())][following-sibling::sigma[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][position() = 1]][position() = 1]]]]][position() = 1]]]]]</xpath>
<tree>
<lambda xml:lang="en-US" xml:id="id1">
<omega xml:lang="no" xml:id="id2">
<any xml:lang="en-GB" xml:id="id3">
<sigma name="attribute-value" xml:lang="en" xml:id="id4">
<pi token="attribute-value" xml:lang="no-nb">
<epsilon xml:lang="en"/>
<sigma true="100%" xml:id="id5"/>
<theta attr="_blank" xml:lang="nb"/>
<theta xml:lang="en" xml:id="id6">
<eta name="attribute" xml:lang="en" xml:id="id7"/>
<lambda name="123456789" xml:lang="nb"/>
<eta title="solid 1px green" xml:lang="nb"/>
<lambda xml:id="id8"/>
<pi xml:id="id9">
<omicron>
<psi xml:lang="no-nb"/>
<delta xml:lang="no-nb" xml:id="id10"/>
<sigma xml:lang="en-GB">
<green>This text must be green</green>
</sigma>
</omicron>
</pi>
</theta>
</pi>
</sigma>
</any>
</omega>
</lambda>
</tree>
</test>
<test>
<xpath>//eta[contains(@attrib,"lue")][@xml:id="id1"]/phi[@data][@xml:lang="en-GB"][following-sibling::omicron[contains(@attribute,"-att-val")][not(following-sibling::*)]/kappa[contains(@data,"t")][not(preceding-sibling::*)][following-sibling::nu[@title][following-sibling::*[position()=3]][following-sibling::delta[@xml:id="id2"][not(preceding-sibling::delta)][following-sibling::*[@xml:id="id3"][preceding-sibling::*[position() = 3]][following-sibling::xi[starts-with(concat(@delete,"-"),"another attribute value-")][@xml:id="id4"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]/theta[@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/rho[contains(@att,"tribu")][@xml:lang="no"][@xml:id="id6"][following-sibling::omicron[preceding-sibling::*[position() = 1]][not(following-sibling::*)]//psi[@content][@xml:lang="nb"][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]/sigma[@number][@xml:lang="nb"][@xml:id="id8"][not(preceding-sibling::*)]][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<eta attrib="this-is-att-value" xml:id="id1">
<phi data="true" xml:lang="en-GB"/>
<omicron attribute="this-is-att-value">
<kappa data="content"/>
<nu title="_blank"/>
<delta xml:id="id2"/>
<any xml:id="id3"/>
<xi delete="another attribute value" xml:id="id4">
<theta xml:lang="en-GB" xml:id="id5">
<rho att="another attribute value" xml:lang="no" xml:id="id6"/>
<omicron>
<psi content="123456789" xml:lang="nb" xml:id="id7">
<sigma number="false" xml:lang="nb" xml:id="id8">
<green>This text must be green</green>
</sigma>
</psi>
</omicron>
</theta>
</xi>
</omicron>
</eta>
</tree>
</test>
<test>
<xpath>//beta[@xml:lang="no-nb"][@xml:id="id1"]//tau[@xml:lang="nb"][@xml:id="id2"][not(child::node())][following-sibling::psi[@xml:id="id3"][preceding-sibling::*[position() = 1]]//xi[contains(concat(@false,"$"),"alse$")][@xml:id="id4"][following-sibling::kappa[preceding-sibling::*[position() = 1]][not(following-sibling::*)]//lambda[not(preceding-sibling::*)]/alpha[@xml:id="id5"]/phi[@att][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::upsilon[@and][@xml:id="id6"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//omega[@xml:lang="no"][@xml:id="id7"][not(preceding-sibling::*)][position() = 1]][position() = 1]]]]</xpath>
<tree>
<beta xml:lang="no-nb" xml:id="id1">
<tau xml:lang="nb" xml:id="id2"/>
<psi xml:id="id3">
<xi false="false" xml:id="id4"/>
<kappa>
<lambda>
<alpha xml:id="id5">
<phi att="_blank"/>
<gamma/>
<upsilon and="this.nodeValue" xml:id="id6">
<omega xml:lang="no" xml:id="id7">
<green>This text must be green</green>
</omega>
</upsilon>
</alpha>
</lambda>
</kappa>
</psi>
</beta>
</tree>
</test>
<test>
<xpath>//mu[@class]//pi[starts-with(concat(@delete,"-"),"true-")][not(following-sibling::*)]/omicron[contains(concat(@insert,"$"),"456789$")][@xml:lang="en-GB"][not(child::node())][following-sibling::lambda[@object][@xml:lang="no-nb"][@xml:id="id1"][preceding-sibling::*[position() = 1]]/delta[@or="_blank"][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[starts-with(concat(@true,"-"),"100%-")][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//tau[contains(@name,"ttribut")][@xml:lang="nb"][@xml:id="id3"][not(preceding-sibling::*)]/kappa[contains(concat(@token,"$"),"attribute$")][@xml:lang="no-nb"][not(following-sibling::*)]/pi[@false][@xml:id="id4"][following-sibling::phi[@and][@xml:id="id5"][not(following-sibling::*)]/rho[starts-with(concat(@false,"-"),"attribute-")][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[@xml:id="id6"][not(following-sibling::*)]//lambda[@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[@name][@xml:lang="nb"][@xml:id="id8"][following-sibling::*[position()=3]][not(child::node())][following-sibling::lambda[@xml:lang="en"][@xml:id="id9"][not(child::node())][following-sibling::alpha[starts-with(@delete,"a")][@xml:lang="en"][following-sibling::*[position()=1]][following-sibling::xi[@xml:lang="no"][@xml:id="id10"][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<mu class="attribute-value">
<pi delete="true">
<omicron insert="123456789" xml:lang="en-GB"/>
<lambda object="false" xml:lang="no-nb" xml:id="id1">
<delta or="_blank">
<zeta true="100%" xml:id="id2">
<tau name="attribute value" xml:lang="nb" xml:id="id3">
<kappa token="attribute" xml:lang="no-nb">
<pi false="solid 1px green" xml:id="id4"/>
<phi and="attribute" xml:id="id5">
<rho false="attribute"/>
<gamma xml:id="id6">
<lambda xml:id="id7">
<phi name="attribute-value" xml:lang="nb" xml:id="id8"/>
<lambda xml:lang="en" xml:id="id9"/>
<alpha delete="attribute value" xml:lang="en"/>
<xi xml:lang="no" xml:id="id10">
<green>This text must be green</green>
</xi>
</lambda>
</gamma>
</phi>
</kappa>
</tau>
</zeta>
</delta>
</lambda>
</pi>
</mu>
</tree>
</test>
<test>
<xpath>//nu[@attribute][@xml:lang="en"]//xi[contains(@object,"e")][@xml:lang="no"][@xml:id="id1"][following-sibling::*[position()=5]][not(child::node())][following-sibling::psi[@xml:lang="nb"][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::pi[@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::omega[starts-with(@name,"false")][@xml:lang="en-GB"][preceding-sibling::*[position() = 3]][following-sibling::upsilon[@xml:lang="nb"][@xml:id="id4"][following-sibling::sigma[@true][@xml:lang="en-US"][@xml:id="id5"][not(following-sibling::*)]/xi[@src][@xml:lang="no"][@xml:id="id6"][not(following-sibling::*)]//*[@attrib][@xml:id="id7"][not(child::node())][following-sibling::psi[starts-with(@attribute,"tr")][@xml:lang="en-GB"][@xml:id="id8"][not(following-sibling::*)]/rho[@xml:id="id9"]/omicron[@desciption][@xml:lang="en"][not(preceding-sibling::omicron)][following-sibling::xi[not(following-sibling::*)]]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<nu attribute="_blank" xml:lang="en">
<xi object="attribute-value" xml:lang="no" xml:id="id1"/>
<psi xml:lang="nb" xml:id="id2"/>
<pi xml:lang="en-US" xml:id="id3"/>
<omega name="false" xml:lang="en-GB"/>
<upsilon xml:lang="nb" xml:id="id4"/>
<sigma true="true" xml:lang="en-US" xml:id="id5">
<xi src="true" xml:lang="no" xml:id="id6">
<any attrib="another attribute value" xml:id="id7"/>
<psi attribute="true" xml:lang="en-GB" xml:id="id8">
<rho xml:id="id9">
<omicron desciption="100%" xml:lang="en"/>
<xi>
<green>This text must be green</green>
</xi>
</rho>
</psi>
</xi>
</sigma>
</nu>
</tree>
</test>
<test>
<xpath>//chi[@xml:id="id1"]//gamma[@token][@xml:lang="no"][@xml:id="id2"][following-sibling::*[position()=3]][following-sibling::tau[@xml:lang="en-GB"][following-sibling::*[position()=2]][following-sibling::xi[@xml:id="id3"][not(child::node())][following-sibling::xi[@xml:id="id4"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//upsilon[@xml:id="id5"][not(preceding-sibling::*)]/omega[contains(concat(@true,"$"),"0%$")][@xml:lang="en-GB"][@xml:id="id6"][following-sibling::nu[preceding-sibling::*[position() = 1]][following-sibling::omega[@xml:lang="en"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::iota[@number="100%"][@xml:lang="en"][@xml:id="id7"][not(following-sibling::*)]/upsilon[@xml:lang="en-GB"][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]/beta[starts-with(@desciption,"t")][@xml:lang="en-US"][@xml:id="id9"]/*]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<chi xml:id="id1">
<gamma token="attribute" xml:lang="no" xml:id="id2"/>
<tau xml:lang="en-GB"/>
<xi xml:id="id3"/>
<xi xml:id="id4">
<upsilon xml:id="id5">
<omega true="100%" xml:lang="en-GB" xml:id="id6"/>
<nu/>
<omega xml:lang="en"/>
<iota number="100%" xml:lang="en" xml:id="id7">
<upsilon xml:lang="en-GB" xml:id="id8">
<beta desciption="true" xml:lang="en-US" xml:id="id9">
<any>
<green>This text must be green</green>
</any>
</beta>
</upsilon>
</iota>
</upsilon>
</xi>
</chi>
</tree>
</test>
<test>
<xpath>//nu[@xml:lang="en"]//tau[contains(concat(@true,"$"),"attribute value$")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(preceding-sibling::tau)]/omega[@false="attribute value"][@xml:lang="nb"][@xml:id="id1"][not(preceding-sibling::*)]//phi[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::rho[contains(concat(@att,"$"),"lank$")][not(following-sibling::*)]/eta[@xml:id="id2"][following-sibling::*[position()=3]][following-sibling::omicron[starts-with(concat(@att,"-"),"false-")][@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][following-sibling::rho[@xml:id="id3"][following-sibling::delta[@xml:lang="en"][not(preceding-sibling::delta)]//omega[@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/rho/alpha[following-sibling::*[preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::sigma[@abort][@xml:id="id5"][not(following-sibling::*)]/omicron[@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::phi[@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::chi[@xml:id="id7"][not(child::node())][following-sibling::iota[starts-with(concat(@true,"-"),"solid 1px green-")][@xml:id="id8"][preceding-sibling::*[position() = 3]][following-sibling::kappa[@xml:id="id9"]/nu[@and][@xml:id="id10"][not(preceding-sibling::*)][following-sibling::iota[@or][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//iota[@xml:lang="no"][following-sibling::gamma[@att="this.nodeValue"][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<nu xml:lang="en">
<tau true="another attribute value" xml:lang="no-nb">
<omega false="attribute value" xml:lang="nb" xml:id="id1">
<phi xml:lang="nb"/>
<rho att="_blank">
<eta xml:id="id2"/>
<omicron att="false" xml:lang="en"/>
<rho xml:id="id3"/>
<delta xml:lang="en">
<omega xml:lang="en-US" xml:id="id4">
<rho>
<alpha/>
<any/>
<sigma abort="content" xml:id="id5">
<omicron xml:id="id6"/>
<phi xml:lang="en"/>
<chi xml:id="id7"/>
<iota true="solid 1px green" xml:id="id8"/>
<kappa xml:id="id9">
<nu and="_blank" xml:id="id10"/>
<iota or="false" xml:lang="en-US">
<iota xml:lang="no"/>
<gamma att="this.nodeValue" xml:lang="no">
<green>This text must be green</green>
</gamma>
</iota>
</kappa>
</sigma>
</rho>
</omega>
</delta>
</rho>
</omega>
</tau>
</nu>
</tree>
</test>
<test>
<xpath>//upsilon[contains(@insert,"true")][@xml:lang="no"]//delta[starts-with(concat(@and,"-"),"this.nodeValue-")][@xml:lang="en-GB"][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//omicron[starts-with(concat(@string,"-"),"this.nodeValue-")][@xml:id="id2"][not(child::node())][following-sibling::iota[@desciption][@xml:id="id3"][not(child::node())][following-sibling::psi[@xml:lang="nb"][@xml:id="id4"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::rho/zeta[@xml:id="id5"][not(child::node())][following-sibling::beta[@xml:id="id6"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<upsilon insert="true" xml:lang="no">
<delta and="this.nodeValue" xml:lang="en-GB" xml:id="id1">
<omicron string="this.nodeValue" xml:id="id2"/>
<iota desciption="attribute value" xml:id="id3"/>
<psi xml:lang="nb" xml:id="id4"/>
<rho>
<zeta xml:id="id5"/>
<beta xml:id="id6">
<green>This text must be green</green>
</beta>
</rho>
</delta>
</upsilon>
</tree>
</test>
<test>
<xpath>//psi[@abort][@xml:lang="en"]/beta[starts-with(concat(@attribute,"-"),"123456789-")][@xml:id="id1"]/tau[@attr]/beta[@name][following-sibling::phi[contains(concat(@object,"$"),"lse$")][@xml:id="id2"][not(following-sibling::*)]/psi[starts-with(@abort,"f")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@number][@xml:lang="en-US"]/rho[starts-with(concat(@desciption,"-"),"_blank-")][@xml:id="id3"]/omicron[@att][@xml:lang="nb"][@xml:id="id4"][position() = 1]][position() = 1]]</xpath>
<tree>
<psi abort="solid 1px green" xml:lang="en">
<beta attribute="123456789" xml:id="id1">
<tau attr="false">
<beta name="another attribute value"/>
<phi object="false" xml:id="id2">
<psi abort="false" xml:lang="en-GB"/>
<omicron number="another attribute value" xml:lang="en-US">
<rho desciption="_blank" xml:id="id3">
<omicron att="solid 1px green" xml:lang="nb" xml:id="id4">
<green>This text must be green</green>
</omicron>
</rho>
</omicron>
</phi>
</tau>
</beta>
</psi>
</tree>
</test>
<test>
<xpath>//lambda[contains(@src,"attribute-valu")][@xml:id="id1"]//upsilon[@xml:lang="en-US"][not(child::node())][following-sibling::nu[@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(preceding-sibling::nu or following-sibling::nu)][not(preceding-sibling::nu)][following-sibling::lambda[@data][@xml:id="id3"][not(following-sibling::*)]//theta[@string="attribute"][@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::alpha[not(child::node())][following-sibling::pi[@xml:lang="en-US"][@xml:id="id5"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::rho[@class="attribute"][@xml:lang="nb"][preceding-sibling::*[position() = 3]]/lambda[starts-with(concat(@title,"-"),"this.nodeValue-")][@xml:lang="no-nb"][@xml:id="id6"][not(child::node())][following-sibling::xi[preceding-sibling::*[position() = 1]][following-sibling::iota[@xml:lang="nb"][@xml:id="id7"][preceding-sibling::*[position() = 2]][following-sibling::phi[contains(@title,"ue")][@xml:lang="en"][following-sibling::*[position()=2]][not(child::node())][following-sibling::omicron[@attr="100%"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::kappa[starts-with(@delete,"1234")][@xml:lang="no-nb"][not(following-sibling::*)]//gamma[@xml:lang="no"][not(preceding-sibling::*)][following-sibling::gamma[@xml:lang="no-nb"][@xml:id="id8"][following-sibling::sigma[@or][@xml:lang="nb"][preceding-sibling::*[position() = 2]][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<lambda src="attribute-value" xml:id="id1">
<upsilon xml:lang="en-US"/>
<nu xml:lang="no" xml:id="id2"/>
<lambda data="_blank" xml:id="id3">
<theta string="attribute" xml:lang="en" xml:id="id4"/>
<alpha/>
<pi xml:lang="en-US" xml:id="id5"/>
<rho class="attribute" xml:lang="nb">
<lambda title="this.nodeValue" xml:lang="no-nb" xml:id="id6"/>
<xi/>
<iota xml:lang="nb" xml:id="id7"/>
<phi title="attribute-value" xml:lang="en"/>
<omicron attr="100%"/>
<kappa delete="123456789" xml:lang="no-nb">
<gamma xml:lang="no"/>
<gamma xml:lang="no-nb" xml:id="id8"/>
<sigma or="content" xml:lang="nb">
<green>This text must be green</green>
</sigma>
</kappa>
</rho>
</lambda>
</lambda>
</tree>
</test>
<test>
<xpath>//phi[@xml:id="id1"]//pi[@xml:lang="no"][@xml:id="id2"][not(following-sibling::*)]//phi[@xml:id="id3"][not(preceding-sibling::*)][following-sibling::upsilon[@xml:id="id4"][preceding-sibling::*[position() = 1]]/sigma[contains(concat(@delete,"$"),"x green$")][following-sibling::kappa[contains(@true,"ibute val")][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::alpha[@title][position() = 1]]]]</xpath>
<tree>
<phi xml:id="id1">
<pi xml:lang="no" xml:id="id2">
<phi xml:id="id3"/>
<upsilon xml:id="id4">
<sigma delete="solid 1px green"/>
<kappa true="another attribute value" xml:id="id5"/>
<alpha title="attribute value">
<green>This text must be green</green>
</alpha>
</upsilon>
</pi>
</phi>
</tree>
</test>
<test>
<xpath>//omicron[@src="this-is-att-value"][@xml:lang="no"]/upsilon[@and="attribute-value"][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::iota[contains(concat(@or,"$"),"nodeValue$")][@xml:id="id1"][not(following-sibling::*)]/pi[@attrib][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::alpha[@xml:lang="no"][@xml:id="id3"][following-sibling::*[position()=2]][not(child::node())][following-sibling::chi[@xml:id="id4"][not(child::node())][following-sibling::delta[@attr][@xml:lang="nb"]//mu[not(preceding-sibling::*)][not(following-sibling::*)]//*[@insert="123456789"][@xml:lang="nb"][@xml:id="id5"][not(child::node())][following-sibling::lambda[@xml:lang="en-GB"][@xml:id="id6"][not(following-sibling::*)][not(preceding-sibling::lambda)]/chi[@xml:lang="no-nb"][not(preceding-sibling::*)]//nu[@xml:lang="en"][@xml:id="id7"][not(preceding-sibling::*)]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<omicron src="this-is-att-value" xml:lang="no">
<upsilon and="attribute-value" xml:lang="no"/>
<iota or="this.nodeValue" xml:id="id1">
<pi attrib="attribute value" xml:id="id2"/>
<alpha xml:lang="no" xml:id="id3"/>
<chi xml:id="id4"/>
<delta attr="attribute value" xml:lang="nb">
<mu>
<any insert="123456789" xml:lang="nb" xml:id="id5"/>
<lambda xml:lang="en-GB" xml:id="id6">
<chi xml:lang="no-nb">
<nu xml:lang="en" xml:id="id7">
<green>This text must be green</green>
</nu>
</chi>
</lambda>
</mu>
</delta>
</iota>
</omicron>
</tree>
</test>
<test>
<xpath>//iota[contains(concat(@src,"$"),"e$")][@xml:lang="no"][@xml:id="id1"]//omicron[@xml:id="id2"][not(child::node())][following-sibling::nu[contains(@number,"lid 1px gre")][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::mu[@xml:id="id4"][not(child::node())][following-sibling::gamma[preceding-sibling::*[position() = 3]]/pi[starts-with(@desciption,"another attribute va")][@xml:id="id5"]//omega[@false][not(preceding-sibling::*)][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota src="true" xml:lang="no" xml:id="id1">
<omicron xml:id="id2"/>
<nu number="solid 1px green" xml:id="id3"/>
<mu xml:id="id4"/>
<gamma>
<pi desciption="another attribute value" xml:id="id5">
<omega false="123456789">
<green>This text must be green</green>
</omega>
</pi>
</gamma>
</iota>
</tree>
</test>
<test>
<xpath>//kappa[@xml:lang="no"]/nu[contains(concat(@class,"$"),"ontent$")][@xml:lang="en"][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[not(child::node())][following-sibling::delta[@xml:id="id2"][preceding-sibling::*[position() = 2]][not(preceding-sibling::delta)][following-sibling::theta[@xml:id="id3"][preceding-sibling::*[position() = 3]]//omicron[@desciption][not(preceding-sibling::*)][not(following-sibling::*)]/beta[starts-with(@content,"fa")][not(child::node())][following-sibling::kappa[@xml:lang="no-nb"][not(child::node())][following-sibling::tau[contains(@delete,"value")][@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::tau[@xml:lang="nb"][@xml:id="id5"]//iota[not(preceding-sibling::*)]/omicron[contains(@and,"ue")][@xml:lang="no"][@xml:id="id6"]/mu[contains(concat(@insert,"$"),"lue$")][@xml:id="id7"][not(preceding-sibling::*)]/phi[contains(@desciption,"0%")][@xml:lang="nb"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::gamma[@xml:lang="en-US"][preceding-sibling::*[position() = 1]]/omega[@xml:lang="no"][@xml:id="id9"][following-sibling::epsilon[@attr][@xml:lang="nb"][@xml:id="id10"][preceding-sibling::*[position() = 1]]//tau[@xml:lang="nb"][@xml:id="id11"][not(preceding-sibling::*)][not(following-sibling::*)]/psi[starts-with(concat(@false,"-"),"123456789-")][@xml:lang="en-US"][not(preceding-sibling::*)]/rho[not(child::node())][following-sibling::zeta[contains(concat(@true,"$"),"en$")][@xml:id="id12"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[starts-with(@attr,"solid 1px")][@xml:id="id13"][preceding-sibling::*[position() = 2]]//xi[@xml:lang="no-nb"][@xml:id="id14"][not(following-sibling::*)]/phi[not(preceding-sibling::*)]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<kappa xml:lang="no">
<nu class="content" xml:lang="en" xml:id="id1"/>
<xi/>
<delta xml:id="id2"/>
<theta xml:id="id3">
<omicron desciption="100%">
<beta content="false"/>
<kappa xml:lang="no-nb"/>
<tau delete="this-is-att-value" xml:id="id4"/>
<tau xml:lang="nb" xml:id="id5">
<iota>
<omicron and="attribute-value" xml:lang="no" xml:id="id6">
<mu insert="this.nodeValue" xml:id="id7">
<phi desciption="100%" xml:lang="nb" xml:id="id8"/>
<gamma xml:lang="en-US">
<omega xml:lang="no" xml:id="id9"/>
<epsilon attr="attribute value" xml:lang="nb" xml:id="id10">
<tau xml:lang="nb" xml:id="id11">
<psi false="123456789" xml:lang="en-US">
<rho/>
<zeta true="solid 1px green" xml:id="id12"/>
<delta attr="solid 1px green" xml:id="id13">
<xi xml:lang="no-nb" xml:id="id14">
<phi>
<green>This text must be green</green>
</phi>
</xi>
</delta>
</psi>
</tau>
</epsilon>
</gamma>
</mu>
</omicron>
</iota>
</tau>
</omicron>
</theta>
</kappa>
</tree>
</test>
<test>
<xpath>//omicron[@xml:lang="no-nb"][@xml:id="id1"]//psi[@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@xml:lang="en-US"][preceding-sibling::*[position() = 1]]/omicron[@data][@xml:lang="en-GB"][not(preceding-sibling::*)]/*[@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]//xi[@abort][@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//*[@xml:lang="en-US"][not(following-sibling::*)]/*[starts-with(@and,"fals")][@xml:lang="no-nb"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]]</xpath>
<tree>
<omicron xml:lang="no-nb" xml:id="id1">
<psi xml:lang="en-GB"/>
<omicron xml:lang="en-US">
<omicron data="false" xml:lang="en-GB">
<any xml:lang="en-GB">
<xi abort="attribute" xml:lang="en-GB" xml:id="id2">
<any xml:lang="en-US">
<any and="false" xml:lang="no-nb" xml:id="id3">
<green>This text must be green</green>
</any>
</any>
</xi>
</any>
</omicron>
</omicron>
</omicron>
</tree>
</test>
<test>
<xpath>//psi[@xml:lang="no-nb"]//omicron[@xml:id="id1"][not(preceding-sibling::*)]//omega[@class="_blank"]/xi[contains(@and,"ue")][@xml:lang="no"][@xml:id="id2"]//pi[@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/delta[@attrib][@xml:lang="en"][not(preceding-sibling::*)][following-sibling::omega[@content][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::alpha[contains(concat(@abort,"$"),"ontent$")][@xml:lang="en-GB"][@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::psi[contains(concat(@or,"$"),"te-value$")][@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::omicron[@class][@xml:id="id6"]//phi[@xml:lang="nb"][not(preceding-sibling::*)]//delta[contains(@att,"00%")][@xml:id="id7"][not(following-sibling::*)]][position() = 1]][position() = 1]]]</xpath>
<tree>
<psi xml:lang="no-nb">
<omicron xml:id="id1">
<omega class="_blank">
<xi and="attribute value" xml:lang="no" xml:id="id2">
<pi xml:id="id3">
<delta attrib="123456789" xml:lang="en"/>
<omega content="solid 1px green"/>
<alpha abort="content" xml:lang="en-GB" xml:id="id4"/>
<psi or="attribute-value" xml:lang="no-nb" xml:id="id5"/>
<omicron class="false" xml:id="id6">
<phi xml:lang="nb">
<delta att="100%" xml:id="id7">
<green>This text must be green</green>
</delta>
</phi>
</omicron>
</pi>
</xi>
</omega>
</omicron>
</psi>
</tree>
</test>
<test>
<xpath>//kappa[@xml:id="id1"]/zeta[@xml:lang="en-US"][not(preceding-sibling::*)]/nu[starts-with(@title,"con")][@xml:id="id2"][not(following-sibling::*)]//phi[starts-with(concat(@and,"-"),"true-")][@xml:lang="en"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[@xml:id="id4"][not(preceding-sibling::*)][following-sibling::lambda[@xml:lang="nb"]//psi[@xml:lang="no-nb"][@xml:id="id5"][following-sibling::*[position()=1]][not(child::node())][following-sibling::beta[@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 1]]]]</xpath>
<tree>
<kappa xml:id="id1">
<zeta xml:lang="en-US">
<nu title="content" xml:id="id2">
<phi and="true" xml:lang="en" xml:id="id3">
<phi xml:id="id4"/>
<lambda xml:lang="nb">
<psi xml:lang="no-nb" xml:id="id5"/>
<beta xml:lang="en-US" xml:id="id6">
<green>This text must be green</green>
</beta>
</lambda>
</phi>
</nu>
</zeta>
</kappa>
</tree>
</test>
<test>
<xpath>//*[@xml:lang="en-US"]//psi[@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]/tau[@xml:lang="no"][not(preceding-sibling::*)]//omicron[@attr="true"][@xml:lang="nb"][following-sibling::epsilon[@delete][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::theta[@xml:lang="en-US"][@xml:id="id2"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::tau[not(following-sibling::*)]/phi[following-sibling::*[position()=2]][not(child::node())][following-sibling::beta[starts-with(concat(@true,"-"),"attribute value-")][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::pi[@xml:lang="en-US"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/xi[not(preceding-sibling::*)][not(child::node())][following-sibling::rho[contains(@content,"tribute value")][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::chi[@xml:id="id4"][following-sibling::gamma[not(following-sibling::*)]//theta[@xml:id="id5"]/xi[@xml:lang="en-US"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::pi[starts-with(concat(@abort,"-"),"this-")][@xml:lang="no"][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[preceding-sibling::*[position() = 2]]//kappa[starts-with(concat(@token,"-"),"100%-")][@xml:lang="en-US"][not(child::node())][following-sibling::iota[starts-with(concat(@abort,"-"),"123456789-")][@xml:id="id8"][preceding-sibling::*[position() = 1]]]][position() = 1]]][position() = 1]]][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<any xml:lang="en-US">
<psi xml:id="id1">
<tau xml:lang="no">
<omicron attr="true" xml:lang="nb"/>
<epsilon delete="content"/>
<theta xml:lang="en-US" xml:id="id2"/>
<tau>
<phi/>
<beta true="attribute value" xml:id="id3"/>
<pi xml:lang="en-US">
<xi/>
<rho content="another attribute value"/>
<chi xml:id="id4"/>
<gamma>
<theta xml:id="id5">
<xi xml:lang="en-US" xml:id="id6"/>
<pi abort="this-is-att-value" xml:lang="no" xml:id="id7"/>
<delta>
<kappa token="100%" xml:lang="en-US"/>
<iota abort="123456789" xml:id="id8">
<green>This text must be green</green>
</iota>
</delta>
</theta>
</gamma>
</pi>
</tau>
</tau>
</psi>
</any>
</tree>
</test>
<test>
<xpath>//omega[@data="100%"][@xml:lang="en"][@xml:id="id1"]/alpha[@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=5]][not(preceding-sibling::alpha)][following-sibling::xi[starts-with(concat(@and,"-"),"attribute-")][@xml:id="id3"][following-sibling::*[position()=4]][not(child::node())][following-sibling::psi[@desciption][following-sibling::*[position()=3]][not(child::node())][following-sibling::xi[not(child::node())][following-sibling::*[contains(@desciption,"nten")][@xml:id="id4"][not(child::node())][following-sibling::pi[@xml:lang="en-US"][not(following-sibling::*)]/lambda[@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/pi[@and="this-is-att-value"][@xml:lang="en"][@xml:id="id6"][not(preceding-sibling::*)]//phi[@xml:lang="no"][not(child::node())][following-sibling::xi[contains(concat(@and,"$"),"nk$")][@xml:lang="en-US"][preceding-sibling::*[position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<omega data="100%" xml:lang="en" xml:id="id1">
<alpha xml:lang="no" xml:id="id2"/>
<xi and="attribute" xml:id="id3"/>
<psi desciption="100%"/>
<xi/>
<any desciption="content" xml:id="id4"/>
<pi xml:lang="en-US">
<lambda xml:id="id5">
<pi and="this-is-att-value" xml:lang="en" xml:id="id6">
<phi xml:lang="no"/>
<xi and="_blank" xml:lang="en-US">
<green>This text must be green</green>
</xi>
</pi>
</lambda>
</pi>
</omega>
</tree>
</test>
<test>
<xpath>//beta[@attribute][@xml:lang="no"]/*[@xml:lang="en-GB"][not(preceding-sibling::*)]//rho[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]//iota[not(preceding-sibling::*)][not(following-sibling::*)]//kappa[@xml:lang="en-GB"][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]/rho[@xml:lang="en"]//xi[@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[@xml:lang="en-US"][@xml:id="id3"]]</xpath>
<tree>
<beta attribute="false" xml:lang="no">
<any xml:lang="en-GB">
<rho xml:lang="no">
<iota>
<kappa xml:lang="en-GB" xml:id="id1">
<rho xml:lang="en">
<xi xml:id="id2"/>
<sigma xml:lang="en-US" xml:id="id3">
<green>This text must be green</green>
</sigma>
</rho>
</kappa>
</iota>
</rho>
</any>
</beta>
</tree>
</test>
<test>
<xpath>//beta[starts-with(@attr,"attribu")]/xi[contains(@number,"id 1px ")][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[contains(@attrib,"e")][@xml:id="id1"][not(following-sibling::*)]//zeta[starts-with(@desciption,"t")][@xml:lang="en"][@xml:id="id2"][not(following-sibling::*)]/nu[starts-with(@desciption,"fals")][not(preceding-sibling::*)][not(following-sibling::*)]/rho[starts-with(@or,"another attribut")][@xml:lang="no"][@xml:id="id3"][following-sibling::omicron[@xml:lang="nb"]//omega[@xml:lang="no"][not(following-sibling::*)][position() = 1]]]</xpath>
<tree>
<beta attr="attribute-value">
<xi number="solid 1px green"/>
<pi attrib="true" xml:id="id1">
<zeta desciption="this-is-att-value" xml:lang="en" xml:id="id2">
<nu desciption="false">
<rho or="another attribute value" xml:lang="no" xml:id="id3"/>
<omicron xml:lang="nb">
<omega xml:lang="no">
<green>This text must be green</green>
</omega>
</omicron>
</nu>
</zeta>
</pi>
</beta>
</tree>
</test>
<test>
<xpath>//nu[@xml:id="id1"]/pi[starts-with(@abort,"1")][@xml:lang="no"][@xml:id="id2"][following-sibling::eta[starts-with(@att,"1")][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/tau[contains(@delete,"e")][@xml:lang="en-US"][not(preceding-sibling::*)]//beta[@xml:id="id3"][not(preceding-sibling::*)]/omega[starts-with(concat(@false,"-"),"100%-")][@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//phi[@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[starts-with(@attr,"attribute-v")][@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]]/eta[@true="this-is-att-value"][@xml:lang="no-nb"][@xml:id="id6"]/sigma[@true="attribute value"][@xml:lang="no"][@xml:id="id7"][not(following-sibling::*)]/omega[not(preceding-sibling::*)]/alpha[contains(concat(@content,"$")," attribute value$")][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]//beta[@number][@xml:lang="en"][@xml:id="id9"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::epsilon[following-sibling::epsilon[@xml:lang="en-GB"]/psi[@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]//chi[not(preceding-sibling::*)][following-sibling::iota[not(child::node())][following-sibling::phi[@xml:id="id11"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/epsilon[@xml:id="id12"][not(following-sibling::*)]/pi[@xml:id="id13"][not(preceding-sibling::*)]//*[@xml:lang="en-GB"][@xml:id="id14"][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[starts-with(concat(@token,"-"),"content-")][@xml:lang="no-nb"][@xml:id="id15"]/tau[@object][@xml:id="id16"][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<nu xml:id="id1">
<pi abort="123456789" xml:lang="no" xml:id="id2"/>
<eta att="123456789" xml:lang="no">
<tau delete="true" xml:lang="en-US">
<beta xml:id="id3">
<omega false="100%" xml:lang="en" xml:id="id4">
<phi xml:lang="nb"/>
<gamma attr="attribute-value" xml:lang="no-nb" xml:id="id5">
<eta true="this-is-att-value" xml:lang="no-nb" xml:id="id6">
<sigma true="attribute value" xml:lang="no" xml:id="id7">
<omega>
<alpha content="another attribute value" xml:id="id8">
<beta number="attribute" xml:lang="en" xml:id="id9"/>
<epsilon/>
<epsilon xml:lang="en-GB">
<psi xml:id="id10">
<chi/>
<iota/>
<phi xml:id="id11">
<epsilon xml:id="id12">
<pi xml:id="id13">
<any xml:lang="en-GB" xml:id="id14"/>
<kappa token="content" xml:lang="no-nb" xml:id="id15">
<tau object="attribute-value" xml:id="id16">
<green>This text must be green</green>
</tau>
</kappa>
</pi>
</epsilon>
</phi>
</psi>
</epsilon>
</alpha>
</omega>
</sigma>
</eta>
</gamma>
</omega>
</beta>
</tau>
</eta>
</nu>
</tree>
</test>
<test>
<xpath>//iota[starts-with(concat(@desciption,"-"),"this.nodeValue-")][@xml:id="id1"]/psi[starts-with(concat(@attribute,"-"),"another attribute value-")][@xml:id="id2"]/mu[@xml:lang="en"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/kappa[@attr][@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@xml:lang="no"][not(child::node())][following-sibling::iota[contains(@insert,"lid 1")][not(following-sibling::*)]/beta[@xml:id="id5"][not(preceding-sibling::*)]/beta[@string="true"][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::epsilon[contains(concat(@src,"$"),"ribute value$")][@xml:lang="en-US"][@xml:id="id6"]//omega[@xml:lang="en-US"][not(preceding-sibling::*)][position() = 1]][position() = 1]]]</xpath>
<tree>
<iota desciption="this.nodeValue" xml:id="id1">
<psi attribute="another attribute value" xml:id="id2">
<mu xml:lang="en" xml:id="id3">
<kappa attr="attribute-value" xml:lang="no" xml:id="id4"/>
<xi xml:lang="no"/>
<iota insert="solid 1px green">
<beta xml:id="id5">
<beta string="true" xml:lang="en-GB"/>
<epsilon src="another attribute value" xml:lang="en-US" xml:id="id6">
<omega xml:lang="en-US">
<green>This text must be green</green>
</omega>
</epsilon>
</beta>
</iota>
</mu>
</psi>
</iota>
</tree>
</test>
<test>
<xpath>//omicron[@string][@xml:id="id1"]/nu[starts-with(@false,"co")][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::theta//pi[@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=4]][following-sibling::nu[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::alpha[@attribute][@xml:lang="nb"][preceding-sibling::*[position() = 2]][not(preceding-sibling::alpha)][following-sibling::lambda[@xml:lang="en-GB"][preceding-sibling::*[position() = 3]][following-sibling::psi[@attrib][@xml:lang="en"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]]]]]]</xpath>
<tree>
<omicron string="false" xml:id="id1">
<nu false="content" xml:lang="nb"/>
<theta>
<pi xml:lang="nb" xml:id="id2"/>
<nu xml:lang="no"/>
<alpha attribute="attribute" xml:lang="nb"/>
<lambda xml:lang="en-GB"/>
<psi attrib="false" xml:lang="en">
<green>This text must be green</green>
</psi>
</theta>
</omicron>
</tree>
</test>
<test>
<xpath>//gamma[@string][@xml:lang="en"]//tau[@token][@xml:lang="no-nb"][@xml:id="id1"][not(following-sibling::*)]//zeta[starts-with(@object,"conten")][@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon[@true][@xml:lang="no-nb"][@xml:id="id3"][following-sibling::*[position()=1]][following-sibling::*[@xml:id="id4"][preceding-sibling::*[position() = 2]]//iota[@string="123456789"]//epsilon[starts-with(@att,"this.nodeValu")][@xml:lang="en-GB"][@xml:id="id5"][not(child::node())][following-sibling::upsilon[@xml:id="id6"][preceding-sibling::*[position() = 1]]]]]</xpath>
<tree>
<gamma string="this.nodeValue" xml:lang="en">
<tau token="_blank" xml:lang="no-nb" xml:id="id1">
<zeta object="content" xml:lang="no-nb" xml:id="id2"/>
<epsilon true="content" xml:lang="no-nb" xml:id="id3"/>
<any xml:id="id4">
<iota string="123456789">
<epsilon att="this.nodeValue" xml:lang="en-GB" xml:id="id5"/>
<upsilon xml:id="id6">
<green>This text must be green</green>
</upsilon>
</iota>
</any>
</tau>
</gamma>
</tree>
</test>
<test>
<xpath>//psi[@xml:lang="no-nb"][@xml:id="id1"]/nu[@attribute][@xml:lang="no"][@xml:id="id2"]//eta[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]//omicron[contains(@class,"ntent")][@xml:lang="no-nb"][@xml:id="id3"][not(following-sibling::*)]//rho[starts-with(concat(@or,"-"),"false-")][following-sibling::kappa[@xml:lang="en"][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::gamma[not(child::node())][following-sibling::xi[@object][not(child::node())][following-sibling::iota[@string][preceding-sibling::*[position() = 4]][not(preceding-sibling::iota)][following-sibling::upsilon[@desciption]//lambda[contains(concat(@string,"$")," value$")][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[@attr][@xml:lang="en-GB"][@xml:id="id5"][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<psi xml:lang="no-nb" xml:id="id1">
<nu attribute="this.nodeValue" xml:lang="no" xml:id="id2">
<eta xml:lang="no">
<omicron class="content" xml:lang="no-nb" xml:id="id3">
<rho or="false"/>
<kappa xml:lang="en" xml:id="id4"/>
<gamma/>
<xi object="true"/>
<iota string="solid 1px green"/>
<upsilon desciption="false">
<lambda string="attribute value"/>
<pi attr="solid 1px green" xml:lang="en-GB" xml:id="id5">
<green>This text must be green</green>
</pi>
</upsilon>
</omicron>
</eta>
</nu>
</psi>
</tree>
</test>
<test>
<xpath>//kappa[@attr="this.nodeValue"][@xml:lang="en-GB"][@xml:id="id1"]/omega[@xml:id="id2"][not(preceding-sibling::*)]/zeta[@xml:lang="nb"][@xml:id="id3"]/mu[@xml:lang="en-GB"][not(following-sibling::*)]//eta[@xml:lang="nb"][@xml:id="id4"][not(child::node())][following-sibling::beta[@xml:lang="nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::eta[@xml:lang="nb"][@xml:id="id6"][not(child::node())][following-sibling::alpha[starts-with(@false,"solid 1px ")][@xml:lang="nb"][@xml:id="id7"][not(child::node())][following-sibling::omega[contains(@src,"attribute")][@xml:lang="no-nb"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::mu[preceding-sibling::*[position() = 5]][following-sibling::*[position()=1]][following-sibling::epsilon[contains(concat(@delete,"$"),"en$")][@xml:lang="en-US"][@xml:id="id8"][not(following-sibling::*)]/xi[contains(@and,"00%")][@xml:lang="nb"][not(following-sibling::*)]//tau[@xml:lang="nb"]/alpha[starts-with(@name,"solid 1px gr")][@xml:lang="no"][not(preceding-sibling::*)]//pi[@xml:lang="no-nb"][not(following-sibling::*)]/kappa[@xml:lang="en"][@xml:id="id9"]/beta[@xml:id="id10"][not(following-sibling::*)]//omega[starts-with(@number,"con")][@xml:id="id11"][not(preceding-sibling::*)][not(following-sibling::*)]//omicron[starts-with(@object,"attribute valu")][@xml:lang="nb"][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[@attr="attribute value"][@xml:lang="no"][@xml:id="id12"][preceding-sibling::*[position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<kappa attr="this.nodeValue" xml:lang="en-GB" xml:id="id1">
<omega xml:id="id2">
<zeta xml:lang="nb" xml:id="id3">
<mu xml:lang="en-GB">
<eta xml:lang="nb" xml:id="id4"/>
<beta xml:lang="nb" xml:id="id5"/>
<eta xml:lang="nb" xml:id="id6"/>
<alpha false="solid 1px green" xml:lang="nb" xml:id="id7"/>
<omega src="attribute value" xml:lang="no-nb"/>
<mu/>
<epsilon delete="solid 1px green" xml:lang="en-US" xml:id="id8">
<xi and="100%" xml:lang="nb">
<tau xml:lang="nb">
<alpha name="solid 1px green" xml:lang="no">
<pi xml:lang="no-nb">
<kappa xml:lang="en" xml:id="id9">
<beta xml:id="id10">
<omega number="content" xml:id="id11">
<omicron object="attribute value" xml:lang="nb"/>
<alpha attr="attribute value" xml:lang="no" xml:id="id12">
<green>This text must be green</green>
</alpha>
</omega>
</beta>
</kappa>
</pi>
</alpha>
</tau>
</xi>
</epsilon>
</mu>
</zeta>
</omega>
</kappa>
</tree>
</test>
<test>
<xpath>//kappa[contains(concat(@attr,"$"),"e-value$")][@xml:lang="en-US"][@xml:id="id1"]/mu[@xml:lang="no-nb"][@xml:id="id2"][following-sibling::alpha[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::nu[@xml:lang="nb"][not(following-sibling::*)]/alpha[starts-with(@desciption,"_")][@xml:lang="en"][following-sibling::*[position()=3]][not(child::node())][following-sibling::iota[@xml:lang="nb"][not(child::node())][following-sibling::tau[contains(@attrib,"fal")][@xml:lang="no-nb"][following-sibling::*[position()=1]][not(child::node())][following-sibling::*[@xml:lang="en-GB"][preceding-sibling::*[position() = 3]][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<kappa attr="attribute-value" xml:lang="en-US" xml:id="id1">
<mu xml:lang="no-nb" xml:id="id2"/>
<alpha xml:lang="no-nb"/>
<nu xml:lang="nb">
<alpha desciption="_blank" xml:lang="en"/>
<iota xml:lang="nb"/>
<tau attrib="false" xml:lang="no-nb"/>
<any xml:lang="en-GB">
<green>This text must be green</green>
</any>
</nu>
</kappa>
</tree>
</test>
<test>
<xpath>//beta[@data][@xml:lang="no-nb"][@xml:id="id1"]//tau[not(preceding-sibling::*)]//*[not(preceding-sibling::*)][not(child::node())][following-sibling::eta[starts-with(@name,"solid 1px gr")][following-sibling::pi[starts-with(@token,"attribute val")][@xml:lang="en"][not(following-sibling::*)][not(following-sibling::pi)]//tau[@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::psi[@attribute][@xml:lang="en"]/*[@xml:id="id3"][not(preceding-sibling::*)][following-sibling::theta[@string="this.nodeValue"][@xml:id="id4"][not(child::node())][following-sibling::upsilon[@delete][@xml:id="id5"][preceding-sibling::*[position() = 2]]/lambda[@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<beta data="_blank" xml:lang="no-nb" xml:id="id1">
<tau>
<any/>
<eta name="solid 1px green"/>
<pi token="attribute value" xml:lang="en">
<tau xml:lang="nb" xml:id="id2"/>
<psi attribute="true" xml:lang="en">
<any xml:id="id3"/>
<theta string="this.nodeValue" xml:id="id4"/>
<upsilon delete="another attribute value" xml:id="id5">
<lambda xml:id="id6">
<green>This text must be green</green>
</lambda>
</upsilon>
</psi>
</pi>
</tau>
</beta>
</tree>
</test>
<test>
<xpath>//psi[@xml:id="id1"]//psi[@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][not(preceding-sibling::psi or following-sibling::psi)]/omega[@data][following-sibling::pi[@xml:id="id3"][following-sibling::omega[@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][not(child::node())][following-sibling::delta[@attrib][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::gamma[starts-with(concat(@class,"-"),"content-")][@xml:lang="no-nb"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]//omicron[@attrib][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::theta[contains(concat(@insert,"$"),"ent$")][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::chi[contains(@attribute,"t-value")][@xml:id="id5"][preceding-sibling::*[position() = 2]]/iota[@xml:id="id6"][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<psi xml:id="id1">
<psi xml:lang="no-nb" xml:id="id2">
<omega data="attribute-value"/>
<pi xml:id="id3"/>
<omega xml:id="id4"/>
<delta attrib="true"/>
<gamma class="content" xml:lang="no-nb">
<omicron attrib="false" xml:lang="nb"/>
<theta insert="content"/>
<chi attribute="this-is-att-value" xml:id="id5">
<iota xml:id="id6">
<green>This text must be green</green>
</iota>
</chi>
</gamma>
</psi>
</psi>
</tree>
</test>
<test>
<xpath>//omega[starts-with(@att,"10")][@xml:lang="no"][@xml:id="id1"]/eta[@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::phi[starts-with(concat(@object,"-"),"this-")][@xml:id="id2"][following-sibling::*[position()=2]][following-sibling::upsilon[@xml:lang="no-nb"][not(child::node())][following-sibling::lambda[contains(@string,"te value")][@xml:lang="en"][@xml:id="id3"][preceding-sibling::*[position() = 3]]//omega[starts-with(@data,"solid 1px")][@xml:id="id4"][not(child::node())][following-sibling::phi[@xml:id="id5"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::nu[@xml:lang="nb"][not(following-sibling::*)]//omega[contains(@number,"onten")][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<omega att="100%" xml:lang="no" xml:id="id1">
<eta xml:lang="en-US"/>
<phi object="this-is-att-value" xml:id="id2"/>
<upsilon xml:lang="no-nb"/>
<lambda string="attribute value" xml:lang="en" xml:id="id3">
<omega data="solid 1px green" xml:id="id4"/>
<phi xml:id="id5"/>
<nu xml:lang="nb">
<omega number="content">
<green>This text must be green</green>
</omega>
</nu>
</lambda>
</omega>
</tree>
</test>
<test>
<xpath>//psi[@xml:lang="no"]/alpha[@token][@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]//rho[@xml:lang="en"][following-sibling::sigma[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/epsilon[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::kappa[@xml:lang="no"][@xml:id="id1"][preceding-sibling::*[position() = 1]][not(preceding-sibling::kappa or following-sibling::kappa)]//chi[contains(@title,"e")][@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[@object][@xml:lang="no-nb"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/rho[@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)]/mu[@xml:lang="en"][following-sibling::sigma[starts-with(concat(@delete,"-"),"100%-")][@xml:lang="nb"][following-sibling::*[position()=1]][following-sibling::nu[@xml:id="id5"][not(following-sibling::*)]//beta[contains(concat(@data,"$")," attribute value$")][not(child::node())][following-sibling::chi[@xml:lang="en-US"][@xml:id="id6"][not(following-sibling::*)]//eta[@xml:id="id7"][not(following-sibling::*)]/pi[@xml:id="id8"][not(following-sibling::*)]//phi[@xml:lang="no-nb"][@xml:id="id9"][following-sibling::gamma[starts-with(@attrib,"conten")][preceding-sibling::*[position() = 1]]//delta[@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::omicron[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]]][position() = 1]]][position() = 1]]][position() = 1]]]]</xpath>
<tree>
<psi xml:lang="no">
<alpha token="attribute-value" xml:lang="no">
<rho xml:lang="en"/>
<sigma xml:lang="en-GB">
<epsilon xml:lang="nb"/>
<kappa xml:lang="no" xml:id="id1">
<chi title="true" xml:lang="en-GB" xml:id="id2"/>
<upsilon object="this.nodeValue" xml:lang="no-nb" xml:id="id3">
<rho xml:lang="en" xml:id="id4">
<mu xml:lang="en"/>
<sigma delete="100%" xml:lang="nb"/>
<nu xml:id="id5">
<beta data="another attribute value"/>
<chi xml:lang="en-US" xml:id="id6">
<eta xml:id="id7">
<pi xml:id="id8">
<phi xml:lang="no-nb" xml:id="id9"/>
<gamma attrib="content">
<delta xml:lang="en-GB"/>
<omicron xml:lang="en-GB">
<green>This text must be green</green>
</omicron>
</gamma>
</pi>
</eta>
</chi>
</nu>
</rho>
</upsilon>
</kappa>
</sigma>
</alpha>
</psi>
</tree>
</test>
<test>
<xpath>//pi[@src="this.nodeValue"][@xml:lang="nb"]/lambda[starts-with(concat(@and,"-"),"this-")][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::psi[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]]/eta[not(child::node())][following-sibling::gamma[starts-with(concat(@token,"-"),"attribute-")][@xml:lang="en"]//delta[@content][following-sibling::*[position()=2]][not(child::node())][following-sibling::kappa[preceding-sibling::*[position() = 1]][following-sibling::gamma[@xml:lang="no"][not(following-sibling::*)]//gamma[starts-with(concat(@true,"-"),"123456789-")][not(preceding-sibling::*)][not(following-sibling::*)]/*[starts-with(concat(@insert,"-"),"123456789-")]//alpha[contains(concat(@false,"$"),"%$")][@xml:lang="no"][@xml:id="id2"]//chi[not(following-sibling::chi)]/phi[@xml:lang="nb"][not(preceding-sibling::*)]//upsilon[@xml:id="id3"][not(child::node())][following-sibling::mu[not(following-sibling::*)]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<pi src="this.nodeValue" xml:lang="nb">
<lambda and="this-is-att-value" xml:id="id1"/>
<psi xml:lang="en-GB">
<eta/>
<gamma token="attribute-value" xml:lang="en">
<delta content="solid 1px green"/>
<kappa/>
<gamma xml:lang="no">
<gamma true="123456789">
<any insert="123456789">
<alpha false="100%" xml:lang="no" xml:id="id2">
<chi>
<phi xml:lang="nb">
<upsilon xml:id="id3"/>
<mu>
<green>This text must be green</green>
</mu>
</phi>
</chi>
</alpha>
</any>
</gamma>
</gamma>
</gamma>
</psi>
</pi>
</tree>
</test>
<test>
<xpath>//xi[contains(@insert,"00%")][@xml:lang="en-GB"][@xml:id="id1"]//mu[@false][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[starts-with(concat(@delete,"-"),"attribute-")][@xml:lang="en-GB"][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[@content][not(following-sibling::*)]/tau[not(preceding-sibling::*)][following-sibling::alpha[@xml:id="id3"][not(following-sibling::*)]//mu[contains(concat(@src,"$"),"px green$")][@xml:lang="en-US"][not(child::node())][following-sibling::phi[@or][not(following-sibling::*)]/chi[starts-with(concat(@data,"-"),"false-")][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::nu[@xml:id="id4"][following-sibling::iota[@xml:id="id5"][not(following-sibling::*)]//tau[starts-with(concat(@data,"-"),"content-")][not(preceding-sibling::*)][following-sibling::delta[@xml:lang="en"][not(following-sibling::*)]//phi[@xml:lang="en"][@xml:id="id6"][not(preceding-sibling::*)]/psi[not(preceding-sibling::*)][not(following-sibling::*)]/kappa[contains(concat(@attribute,"$"),"false$")][@xml:lang="en"][not(following-sibling::*)]/epsilon[contains(concat(@src,"$"),"e$")][@xml:lang="en"][@xml:id="id7"]//tau[@insert][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::xi[@xml:id="id8"][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<xi insert="100%" xml:lang="en-GB" xml:id="id1">
<mu false="solid 1px green"/>
<kappa delete="attribute" xml:lang="en-GB" xml:id="id2"/>
<nu content="this-is-att-value">
<tau/>
<alpha xml:id="id3">
<mu src="solid 1px green" xml:lang="en-US"/>
<phi or="100%">
<chi data="false"/>
<nu xml:id="id4"/>
<iota xml:id="id5">
<tau data="content"/>
<delta xml:lang="en">
<phi xml:lang="en" xml:id="id6">
<psi>
<kappa attribute="false" xml:lang="en">
<epsilon src="true" xml:lang="en" xml:id="id7">
<tau insert="attribute value"/>
<xi xml:id="id8">
<green>This text must be green</green>
</xi>
</epsilon>
</kappa>
</psi>
</phi>
</delta>
</iota>
</phi>
</alpha>
</nu>
</xi>
</tree>
</test>
<test>
<xpath>//beta[contains(@attrib,"ue")]/nu[contains(@title,"fals")][@xml:id="id1"][not(preceding-sibling::*)]/rho[@insert][@xml:id="id2"][not(preceding-sibling::*)]/kappa[not(following-sibling::*)]//upsilon[@and][@xml:id="id3"][not(preceding-sibling::*)]//chi[not(preceding-sibling::*)][following-sibling::delta[preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]]</xpath>
<tree>
<beta attrib="this.nodeValue">
<nu title="false" xml:id="id1">
<rho insert="this.nodeValue" xml:id="id2">
<kappa>
<upsilon and="solid 1px green" xml:id="id3">
<chi/>
<delta>
<green>This text must be green</green>
</delta>
</upsilon>
</kappa>
</rho>
</nu>
</beta>
</tree>
</test>
<test>
<xpath>//zeta[@xml:lang="en"][@xml:id="id1"]/delta[@and][@xml:lang="en"]/omicron[@xml:lang="no"][following-sibling::iota[contains(@number,"t")][@xml:lang="nb"][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::beta[contains(concat(@number,"$"),"k$")][@xml:lang="no"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/phi[not(preceding-sibling::*)]/omicron[contains(@class,"lue")][@xml:lang="no-nb"][@xml:id="id3"][not(preceding-sibling::*)]//omicron[not(preceding-sibling::*)]/omicron[@class="this-is-att-value"][@xml:id="id4"]/epsilon[starts-with(@false,"this.node")][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/xi[starts-with(@desciption,"co")][@xml:lang="no-nb"]/mu[@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]/xi[@xml:lang="en-US"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::upsilon[starts-with(concat(@name,"-"),"true-")][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/tau[@xml:id="id8"][not(child::node())][following-sibling::theta[@xml:lang="no"][not(child::node())][following-sibling::pi[contains(concat(@data,"$"),"lue$")][@xml:lang="en"][@xml:id="id9"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//*[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::phi[@xml:lang="en"][not(child::node())][following-sibling::psi[@xml:lang="en-US"][not(following-sibling::*)]/lambda[@xml:lang="en-GB"][@xml:id="id10"][position() = 1]]][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<zeta xml:lang="en" xml:id="id1">
<delta and="_blank" xml:lang="en">
<omicron xml:lang="no"/>
<iota number="content" xml:lang="nb" xml:id="id2"/>
<beta number="_blank" xml:lang="no">
<phi>
<omicron class="this.nodeValue" xml:lang="no-nb" xml:id="id3">
<omicron>
<omicron class="this-is-att-value" xml:id="id4">
<epsilon false="this.nodeValue" xml:id="id5">
<xi desciption="content" xml:lang="no-nb">
<mu xml:lang="en-GB">
<xi xml:lang="en-US" xml:id="id6"/>
<upsilon name="true" xml:id="id7">
<tau xml:id="id8"/>
<theta xml:lang="no"/>
<pi data="this.nodeValue" xml:lang="en" xml:id="id9">
<any xml:lang="nb"/>
<phi xml:lang="en"/>
<psi xml:lang="en-US">
<lambda xml:lang="en-GB" xml:id="id10">
<green>This text must be green</green>
</lambda>
</psi>
</pi>
</upsilon>
</mu>
</xi>
</epsilon>
</omicron>
</omicron>
</omicron>
</phi>
</beta>
</delta>
</zeta>
</tree>
</test>
<test>
<xpath>//phi[@xml:id="id1"]//kappa[starts-with(concat(@att,"-"),"123456789-")][@xml:lang="no"][not(following-sibling::*)]//epsilon[@number][@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[@xml:lang="no"][@xml:id="id3"][not(following-sibling::*)]//beta[contains(@desciption,"6789")][@xml:lang="no"][@xml:id="id4"][not(following-sibling::beta)][not(child::node())][following-sibling::delta[@name][@xml:lang="en-US"][@xml:id="id5"][preceding-sibling::*[position() = 1]]//phi[@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[starts-with(@false,"a")][@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::psi[contains(concat(@number,"$"),"%$")][@xml:lang="en"][preceding-sibling::*[position() = 2]][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<phi xml:id="id1">
<kappa att="123456789" xml:lang="no">
<epsilon number="content" xml:lang="no" xml:id="id2">
<zeta xml:lang="no" xml:id="id3">
<beta desciption="123456789" xml:lang="no" xml:id="id4"/>
<delta name="attribute" xml:lang="en-US" xml:id="id5">
<phi xml:lang="no-nb"/>
<eta false="attribute" xml:lang="no"/>
<psi number="100%" xml:lang="en">
<green>This text must be green</green>
</psi>
</delta>
</zeta>
</epsilon>
</kappa>
</phi>
</tree>
</test>
<test>
<xpath>//beta[contains(concat(@false,"$"),"t-value$")][@xml:lang="en-GB"][@xml:id="id1"]//*[@xml:lang="en"][not(child::node())][following-sibling::rho[@false][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::omega[preceding-sibling::*[position() = 2]][following-sibling::omicron[@token="attribute"][@xml:lang="no-nb"][@xml:id="id2"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//zeta[@content][@xml:lang="nb"]/phi[@attrib][@xml:id="id3"]/nu[not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::*[@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//rho[following-sibling::sigma[@xml:lang="no-nb"][@xml:id="id5"][not(child::node())][following-sibling::omega[starts-with(concat(@number,"-"),"solid 1px green-")][@xml:lang="en-US"][@xml:id="id6"]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<beta false="this-is-att-value" xml:lang="en-GB" xml:id="id1">
<any xml:lang="en"/>
<rho false="solid 1px green"/>
<omega/>
<omicron token="attribute" xml:lang="no-nb" xml:id="id2">
<zeta content="solid 1px green" xml:lang="nb">
<phi attrib="attribute" xml:id="id3">
<nu/>
<any xml:id="id4">
<rho/>
<sigma xml:lang="no-nb" xml:id="id5"/>
<omega number="solid 1px green" xml:lang="en-US" xml:id="id6">
<green>This text must be green</green>
</omega>
</any>
</phi>
</zeta>
</omicron>
</beta>
</tree>
</test>
<test>
<xpath>//*/delta[@xml:lang="en-GB"][not(preceding-sibling::*)]//lambda[not(preceding-sibling::*)]//lambda[@abort][@xml:lang="no"][@xml:id="id1"][following-sibling::*[position()=8]][not(child::node())][following-sibling::phi[following-sibling::*[position()=7]][following-sibling::psi[@xml:id="id2"][preceding-sibling::*[position() = 2]][following-sibling::upsilon[starts-with(concat(@attribute,"-"),"this-")][@xml:lang="en"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::upsilon[contains(concat(@att,"$"),"t$")][@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 4]][following-sibling::*[position()=4]][following-sibling::rho[@xml:lang="en-GB"][@xml:id="id4"][preceding-sibling::*[position() = 5]][following-sibling::*[position()=3]][following-sibling::pi[@xml:id="id5"][preceding-sibling::*[position() = 6]][not(preceding-sibling::pi or following-sibling::pi)][not(child::node())][following-sibling::alpha[contains(concat(@attr,"$"),"456789$")][@xml:lang="no"][@xml:id="id6"][following-sibling::*[position()=1]][following-sibling::beta[contains(@data,"an")][@xml:lang="en-US"]/rho[@att][@xml:lang="nb"][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]//tau[contains(concat(@class,"$"),"another attribute value$")][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::omega[@xml:id="id9"][preceding-sibling::*[position() = 1]][following-sibling::lambda[@xml:lang="no"][preceding-sibling::*[position() = 2]][not(following-sibling::*)][position() = 1]]]]]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<any>
<delta xml:lang="en-GB">
<lambda>
<lambda abort="this.nodeValue" xml:lang="no" xml:id="id1"/>
<phi/>
<psi xml:id="id2"/>
<upsilon attribute="this-is-att-value" xml:lang="en"/>
<upsilon att="content" xml:lang="no" xml:id="id3"/>
<rho xml:lang="en-GB" xml:id="id4"/>
<pi xml:id="id5"/>
<alpha attr="123456789" xml:lang="no" xml:id="id6"/>
<beta data="_blank" xml:lang="en-US">
<rho att="100%" xml:lang="nb" xml:id="id7">
<tau class="another attribute value" xml:id="id8"/>
<omega xml:id="id9"/>
<lambda xml:lang="no">
<green>This text must be green</green>
</lambda>
</rho>
</beta>
</lambda>
</delta>
</any>
</tree>
</test>
<test>
<xpath>//theta[contains(concat(@attr,"$"),"ue$")]/zeta[@xml:lang="en-US"][not(preceding-sibling::*)]/rho[starts-with(concat(@insert,"-"),"attribute value-")][@xml:lang="nb"][@xml:id="id1"]/theta[starts-with(concat(@and,"-"),"this.nodeValue-")][@xml:lang="en"][not(preceding-sibling::*)][following-sibling::xi[@xml:lang="en"]/alpha[contains(@att,"hi")][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::chi[@xml:lang="nb"][preceding-sibling::*[position() = 1]]//chi[@attrib="another attribute value"][@xml:id="id3"][following-sibling::*[position()=1]][following-sibling::psi[starts-with(@number,"_blank")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//epsilon[not(preceding-sibling::*)][following-sibling::gamma[@true][@xml:lang="en-GB"][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<theta attr="true">
<zeta xml:lang="en-US">
<rho insert="attribute value" xml:lang="nb" xml:id="id1">
<theta and="this.nodeValue" xml:lang="en"/>
<xi xml:lang="en">
<alpha att="this-is-att-value" xml:id="id2"/>
<chi xml:lang="nb">
<chi attrib="another attribute value" xml:id="id3"/>
<psi number="_blank">
<epsilon/>
<gamma true="this-is-att-value" xml:lang="en-GB">
<green>This text must be green</green>
</gamma>
</psi>
</chi>
</xi>
</rho>
</zeta>
</theta>
</tree>
</test>
<test>
<xpath>//tau[@xml:lang="no"][@xml:id="id1"]//nu//omicron[not(preceding-sibling::*)][following-sibling::beta[@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//chi[@string][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::tau[contains(@src,"s")][@xml:lang="no-nb"][following-sibling::nu[@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::gamma[@xml:lang="en-US"][@xml:id="id5"]/omega[contains(concat(@abort,"$"),"eValue$")][@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]/psi[not(child::node())][following-sibling::alpha[starts-with(@name,"this.n")][@xml:id="id7"][following-sibling::*[position()=1]][following-sibling::tau[@xml:id="id8"][not(following-sibling::*)]//lambda[@xml:id="id9"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::omicron[starts-with(concat(@true,"-"),"attribute value-")][@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@xml:lang="no-nb"][@xml:id="id10"]]]]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<tau xml:lang="no" xml:id="id1">
<nu>
<omicron/>
<beta xml:lang="no" xml:id="id2">
<chi string="123456789" xml:id="id3"/>
<tau src="false" xml:lang="no-nb"/>
<nu xml:lang="no" xml:id="id4"/>
<gamma xml:lang="en-US" xml:id="id5">
<omega abort="this.nodeValue" xml:id="id6">
<psi/>
<alpha name="this.nodeValue" xml:id="id7"/>
<tau xml:id="id8">
<lambda xml:id="id9"/>
<omicron true="attribute value" xml:lang="en"/>
<phi xml:lang="no-nb" xml:id="id10">
<green>This text must be green</green>
</phi>
</tau>
</omega>
</gamma>
</beta>
</nu>
</tau>
</tree>
</test>
<test>
<xpath>//*[@data="false"][@xml:id="id1"]/mu[@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//phi[@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]/tau[@xml:lang="no-nb"][not(child::node())][following-sibling::lambda[@xml:lang="en-GB"][following-sibling::zeta[@xml:id="id3"][following-sibling::eta[@class][@xml:id="id4"][not(child::node())][following-sibling::sigma[@attrib][@xml:lang="no-nb"][not(following-sibling::*)]//mu[not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[@delete][@xml:lang="en"][@xml:id="id5"][preceding-sibling::*[position() = 1]]//gamma[not(preceding-sibling::*)]//upsilon[@data][@xml:id="id6"][not(following-sibling::*)]//beta/psi[contains(@number," green")][@xml:lang="en-GB"][@xml:id="id7"][following-sibling::*[position()=1]][following-sibling::alpha[@attrib][@xml:id="id8"][preceding-sibling::*[position() = 1]]//delta[contains(concat(@class,"$"),"this-is-att-value$")][@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::eta[@xml:id="id9"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//zeta[@xml:lang="en-GB"][@xml:id="id10"][position() = 1]][position() = 1]]][position() = 1]]]]]</xpath>
<tree>
<any data="false" xml:id="id1">
<mu xml:lang="nb" xml:id="id2">
<phi xml:lang="en-GB">
<tau xml:lang="no-nb"/>
<lambda xml:lang="en-GB"/>
<zeta xml:id="id3"/>
<eta class="another attribute value" xml:id="id4"/>
<sigma attrib="this-is-att-value" xml:lang="no-nb">
<mu/>
<sigma delete="this.nodeValue" xml:lang="en" xml:id="id5">
<gamma>
<upsilon data="this-is-att-value" xml:id="id6">
<beta>
<psi number="solid 1px green" xml:lang="en-GB" xml:id="id7"/>
<alpha attrib="100%" xml:id="id8">
<delta class="this-is-att-value" xml:lang="no-nb"/>
<eta xml:id="id9">
<zeta xml:lang="en-GB" xml:id="id10">
<green>This text must be green</green>
</zeta>
</eta>
</alpha>
</beta>
</upsilon>
</gamma>
</sigma>
</sigma>
</phi>
</mu>
</any>
</tree>
</test>
<test>
<xpath>//lambda[contains(concat(@src,"$"),"-value$")]/omega[not(child::node())][following-sibling::zeta[@data][@xml:lang="en-GB"][@xml:id="id1"][preceding-sibling::*[position() = 1]][following-sibling::omega[starts-with(concat(@attrib,"-"),"this.nodeValue-")][@xml:id="id2"]//nu[contains(@number,"00")][not(preceding-sibling::*)][following-sibling::sigma[@xml:lang="en-US"][@xml:id="id3"][not(following-sibling::*)]/delta[starts-with(@true,"this-is-att")][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[starts-with(@abort,"solid 1px gr")][@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[not(following-sibling::*)]/eta[@xml:lang="no-nb"][@xml:id="id6"][following-sibling::sigma[starts-with(concat(@desciption,"-"),"123456789-")][@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::iota[@insert="this-is-att-value"][@xml:id="id7"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::*[@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 3]][not(preceding-sibling::any)]/tau[@token="123456789"][@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)]//nu[starts-with(@token,"_blan")][@xml:lang="no-nb"][@xml:id="id10"][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[preceding-sibling::*[position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<lambda src="this-is-att-value">
<omega/>
<zeta data="this-is-att-value" xml:lang="en-GB" xml:id="id1"/>
<omega attrib="this.nodeValue" xml:id="id2">
<nu number="100%"/>
<sigma xml:lang="en-US" xml:id="id3">
<delta true="this-is-att-value" xml:id="id4">
<zeta abort="solid 1px green" xml:id="id5"/>
<gamma>
<eta xml:lang="no-nb" xml:id="id6"/>
<sigma desciption="123456789" xml:lang="nb"/>
<iota insert="this-is-att-value" xml:id="id7"/>
<any xml:lang="en-GB" xml:id="id8">
<tau token="123456789" xml:id="id9">
<nu token="_blank" xml:lang="no-nb" xml:id="id10"/>
<delta>
<green>This text must be green</green>
</delta>
</tau>
</any>
</gamma>
</delta>
</sigma>
</omega>
</lambda>
</tree>
</test>
<test>
<xpath>//upsilon[starts-with(@content,"attribute valu")][@xml:lang="en"][@xml:id="id1"]/iota[contains(concat(@attrib,"$"),"tribute value$")][not(preceding-sibling::*)][following-sibling::alpha[starts-with(concat(@false,"-"),"123456789-")][@xml:lang="no-nb"][@xml:id="id2"]//nu[contains(concat(@abort,"$"),"rue$")][@xml:id="id3"][following-sibling::omicron[preceding-sibling::*[position() = 1]][following-sibling::*[position()=6]][following-sibling::epsilon[@xml:lang="en-GB"][following-sibling::*[position()=5]][not(child::node())][following-sibling::mu[contains(concat(@data,"$"),"ute value$")][following-sibling::pi[@xml:id="id4"][not(child::node())][following-sibling::gamma[@desciption][@xml:lang="nb"][following-sibling::omicron[@insert][@xml:lang="en-US"][not(child::node())][following-sibling::sigma[preceding-sibling::*[position() = 7]][not(following-sibling::*)]//omega[@attribute][@xml:lang="no"][@xml:id="id5"][not(following-sibling::*)]//gamma[@xml:lang="en"][@xml:id="id6"][following-sibling::*[position()=1]][following-sibling::tau[@xml:id="id7"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/omicron[starts-with(@delete,"false")][not(preceding-sibling::*)]//rho[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::delta//lambda[@xml:lang="en"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::omega[@xml:id="id9"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/*[contains(@or,"ntent")][@xml:lang="nb"][@xml:id="id10"][not(preceding-sibling::*)]/kappa[contains(@name,"reen")][@xml:lang="en-GB"][@xml:id="id11"][not(following-sibling::*)]//nu[@xml:lang="no"][@xml:id="id12"][following-sibling::*[position()=2]][not(child::node())][following-sibling::rho[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::phi[@xml:lang="en-US"][@xml:id="id13"]]]]]][position() = 1]]]][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<upsilon content="attribute value" xml:lang="en" xml:id="id1">
<iota attrib="another attribute value"/>
<alpha false="123456789" xml:lang="no-nb" xml:id="id2">
<nu abort="true" xml:id="id3"/>
<omicron/>
<epsilon xml:lang="en-GB"/>
<mu data="attribute value"/>
<pi xml:id="id4"/>
<gamma desciption="100%" xml:lang="nb"/>
<omicron insert="content" xml:lang="en-US"/>
<sigma>
<omega attribute="attribute value" xml:lang="no" xml:id="id5">
<gamma xml:lang="en" xml:id="id6"/>
<tau xml:id="id7">
<omicron delete="false">
<rho xml:lang="nb"/>
<delta>
<lambda xml:lang="en" xml:id="id8"/>
<omega xml:id="id9">
<any or="content" xml:lang="nb" xml:id="id10">
<kappa name="solid 1px green" xml:lang="en-GB" xml:id="id11">
<nu xml:lang="no" xml:id="id12"/>
<rho/>
<phi xml:lang="en-US" xml:id="id13">
<green>This text must be green</green>
</phi>
</kappa>
</any>
</omega>
</delta>
</omicron>
</tau>
</omega>
</sigma>
</alpha>
</upsilon>
</tree>
</test>
<test>
<xpath>//gamma[@object][@xml:lang="en-GB"][@xml:id="id1"]//tau[@class][@xml:id="id2"][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//mu[@xml:id="id4"]//pi[starts-with(concat(@true,"-"),"_blank-")][@xml:lang="no"][@xml:id="id5"][not(child::node())][following-sibling::eta[@class="true"][@xml:lang="en-GB"][@xml:id="id6"][preceding-sibling::*[position() = 1]]/theta[@src][not(preceding-sibling::*)][not(following-sibling::*)]//eta[starts-with(@attrib,"true")][@xml:lang="no-nb"][@xml:id="id7"][not(following-sibling::*)]//zeta[starts-with(concat(@insert,"-"),"this.nodeValue-")][not(preceding-sibling::*)][following-sibling::xi[starts-with(concat(@attr,"-"),"another attribute value-")][not(child::node())][following-sibling::tau[@xml:id="id8"][preceding-sibling::*[position() = 2]]/lambda[@and][not(following-sibling::*)]//kappa[not(following-sibling::*)]//delta[@xml:lang="no"][@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)]/omicron[@xml:lang="no-nb"][not(following-sibling::*)]/rho[@xml:lang="en"][following-sibling::*[position()=1]][following-sibling::*[@true][@xml:lang="no"][@xml:id="id10"][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<gamma object="100%" xml:lang="en-GB" xml:id="id1">
<tau class="content" xml:id="id2"/>
<psi xml:id="id3">
<mu xml:id="id4">
<pi true="_blank" xml:lang="no" xml:id="id5"/>
<eta class="true" xml:lang="en-GB" xml:id="id6">
<theta src="true">
<eta attrib="true" xml:lang="no-nb" xml:id="id7">
<zeta insert="this.nodeValue"/>
<xi attr="another attribute value"/>
<tau xml:id="id8">
<lambda and="attribute value">
<kappa>
<delta xml:lang="no" xml:id="id9">
<omicron xml:lang="no-nb">
<rho xml:lang="en"/>
<any true="attribute" xml:lang="no" xml:id="id10">
<green>This text must be green</green>
</any>
</omicron>
</delta>
</kappa>
</lambda>
</tau>
</eta>
</theta>
</eta>
</mu>
</psi>
</gamma>
</tree>
</test>
<test>
<xpath>//phi[contains(concat(@object,"$")," 1px green$")][@xml:id="id1"]//xi[starts-with(@attr,"content")]//epsilon[@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@xml:lang="no"][preceding-sibling::*[position() = 2]]/iota[@abort][@xml:id="id3"][not(following-sibling::*)]]]</xpath>
<tree>
<phi object="solid 1px green" xml:id="id1">
<xi attr="content">
<epsilon xml:id="id2"/>
<any/>
<psi xml:lang="no">
<iota abort="123456789" xml:id="id3">
<green>This text must be green</green>
</iota>
</psi>
</xi>
</phi>
</tree>
</test>
<test>
<xpath>//psi[@xml:lang="en"][@xml:id="id1"]/nu/pi[@attribute][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::nu[@xml:lang="nb"][preceding-sibling::*[position() = 1]]/beta[@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]//psi[@xml:id="id4"][not(child::node())][following-sibling::lambda[@xml:lang="no"]/rho[@xml:lang="no-nb"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//mu[@xml:lang="no-nb"][@xml:id="id6"][not(child::node())][following-sibling::tau[@or="content"][@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::rho[preceding-sibling::*[position() = 2]]/kappa[@xml:lang="en"][not(preceding-sibling::*)]/tau[starts-with(concat(@delete,"-"),"false-")][@xml:lang="en-GB"][@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[contains(@and,"100")][@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::omicron[starts-with(concat(@title,"-"),"attribute-")][@xml:id="id8"][not(following-sibling::*)]//sigma[contains(@data,"fals")][@xml:lang="en-GB"][@xml:id="id9"][not(preceding-sibling::*)]//theta[@and="true"][@xml:lang="nb"][not(following-sibling::*)][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<psi xml:lang="en" xml:id="id1">
<nu>
<pi attribute="this-is-att-value" xml:id="id2"/>
<nu xml:lang="nb">
<beta xml:id="id3">
<psi xml:id="id4"/>
<lambda xml:lang="no">
<rho xml:lang="no-nb" xml:id="id5">
<mu xml:lang="no-nb" xml:id="id6"/>
<tau or="content" xml:lang="nb"/>
<rho>
<kappa xml:lang="en">
<tau delete="false" xml:lang="en-GB" xml:id="id7"/>
<omicron and="100%" xml:lang="en"/>
<omicron title="attribute-value" xml:id="id8">
<sigma data="false" xml:lang="en-GB" xml:id="id9">
<theta and="true" xml:lang="nb">
<green>This text must be green</green>
</theta>
</sigma>
</omicron>
</kappa>
</rho>
</rho>
</lambda>
</beta>
</nu>
</nu>
</psi>
</tree>
</test>
<test>
<xpath>//iota[starts-with(@title,"solid 1")]//nu[@xml:lang="no-nb"][not(child::node())][following-sibling::beta[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::kappa[preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::theta[@xml:id="id1"]/nu[contains(@number,"e valu")][not(preceding-sibling::*)][not(following-sibling::*)]//mu[@string="content"][@xml:lang="no"][not(preceding-sibling::*)]//*[not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::chi[@xml:lang="en-GB"][@xml:id="id2"][preceding-sibling::*[position() = 1]]/zeta[starts-with(@attrib,"this-is-att-valu")][@xml:lang="nb"][@xml:id="id3"]//*[@xml:id="id4"][following-sibling::*[position()=2]][not(child::node())][following-sibling::zeta[not(child::node())][following-sibling::omicron[contains(@number,"ibute")]/delta[contains(concat(@number,"$"),"his.nodeValue$")][@xml:lang="en-GB"][not(child::node())][following-sibling::lambda[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/beta[@class][@xml:lang="nb"][not(following-sibling::*)]/zeta[@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::mu[@number="false"][@xml:lang="en"][following-sibling::zeta[following-sibling::*[position()=1]][following-sibling::nu[@class][@xml:lang="en"][@xml:id="id6"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/epsilon[@abort][@xml:id="id7"][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<iota title="solid 1px green">
<nu xml:lang="no-nb"/>
<beta xml:lang="en-GB"/>
<kappa/>
<theta xml:id="id1">
<nu number="attribute value">
<mu string="content" xml:lang="no">
<any/>
<chi xml:lang="en-GB" xml:id="id2">
<zeta attrib="this-is-att-value" xml:lang="nb" xml:id="id3">
<any xml:id="id4"/>
<zeta/>
<omicron number="attribute">
<delta number="this.nodeValue" xml:lang="en-GB"/>
<lambda xml:lang="en-GB">
<beta class="solid 1px green" xml:lang="nb">
<zeta xml:lang="en-GB" xml:id="id5"/>
<mu number="false" xml:lang="en"/>
<zeta/>
<nu class="false" xml:lang="en" xml:id="id6">
<epsilon abort="_blank" xml:id="id7">
<green>This text must be green</green>
</epsilon>
</nu>
</beta>
</lambda>
</omicron>
</zeta>
</chi>
</mu>
</nu>
</theta>
</iota>
</tree>
</test>
<test>
<xpath>//phi//theta[@xml:lang="en-GB"]//*[@attribute][@xml:id="id1"][following-sibling::*[position()=6]][not(child::node())][following-sibling::*[@xml:lang="no-nb"][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::nu[@object][@xml:id="id3"][not(child::node())][following-sibling::alpha[contains(concat(@true,"$"),"value$")][@xml:id="id4"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=3]][following-sibling::omicron[preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::phi[@or][@xml:lang="en-US"][following-sibling::*[position()=1]][not(child::node())][following-sibling::chi[@xml:lang="en-US"][preceding-sibling::*[position() = 6]][not(following-sibling::*)]/delta[@name][@xml:lang="en-GB"][@xml:id="id5"][following-sibling::*[position()=3]][not(child::node())][following-sibling::nu[@xml:lang="en-US"][not(child::node())][following-sibling::nu[@xml:id="id6"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::zeta[@data][@xml:id="id7"][not(following-sibling::*)]//alpha[@insert="solid 1px green"][@xml:lang="en"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::theta[@xml:lang="en-US"][@xml:id="id9"][preceding-sibling::*[position() = 1]][following-sibling::kappa[contains(concat(@abort,"$"),"other attribute value$")][@xml:lang="en"][@xml:id="id10"][preceding-sibling::*[position() = 2]]//gamma[@insert][@xml:lang="no-nb"][following-sibling::*[position()=1]][not(child::node())][following-sibling::tau[@xml:lang="en-GB"][not(following-sibling::*)]//gamma[@xml:lang="nb"][@xml:id="id11"][not(preceding-sibling::*)][not(following-sibling::*)]/zeta[contains(@true,"rue")][@xml:lang="en-GB"][not(following-sibling::*)][position() = 1]]][position() = 1]]]]]]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<phi>
<theta xml:lang="en-GB">
<any attribute="false" xml:id="id1"/>
<any xml:lang="no-nb" xml:id="id2"/>
<nu object="attribute value" xml:id="id3"/>
<alpha true="attribute value" xml:id="id4"/>
<omicron/>
<phi or="attribute-value" xml:lang="en-US"/>
<chi xml:lang="en-US">
<delta name="this-is-att-value" xml:lang="en-GB" xml:id="id5"/>
<nu xml:lang="en-US"/>
<nu xml:id="id6"/>
<zeta data="123456789" xml:id="id7">
<alpha insert="solid 1px green" xml:lang="en" xml:id="id8"/>
<theta xml:lang="en-US" xml:id="id9"/>
<kappa abort="another attribute value" xml:lang="en" xml:id="id10">
<gamma insert="_blank" xml:lang="no-nb"/>
<tau xml:lang="en-GB">
<gamma xml:lang="nb" xml:id="id11">
<zeta true="true" xml:lang="en-GB">
<green>This text must be green</green>
</zeta>
</gamma>
</tau>
</kappa>
</zeta>
</chi>
</theta>
</phi>
</tree>
</test>
<test>
<xpath>//phi[@xml:lang="nb"]/upsilon[@xml:lang="no-nb"][@xml:id="id1"]/psi[@xml:id="id2"]//kappa[@name][@xml:lang="en"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::omicron[@xml:lang="en-GB"][following-sibling::*[position()=1]][not(preceding-sibling::omicron)][not(child::node())][following-sibling::alpha[@xml:lang="en"][@xml:id="id4"][preceding-sibling::*[position() = 2]]//lambda[starts-with(concat(@class,"-"),"_blank-")][@xml:lang="no-nb"][not(preceding-sibling::*)]/alpha[@attribute][@xml:id="id5"][not(preceding-sibling::*)]/delta[@xml:id="id6"]/delta[contains(concat(@title,"$"),"3456789$")][following-sibling::omicron[contains(@true,"_blan")][@xml:lang="en"][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/sigma[contains(@token,"3456")][@xml:lang="en-US"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::xi[starts-with(concat(@title,"-"),"attribute-")][@xml:id="id9"][preceding-sibling::*[position() = 1]]//sigma[@attr][@xml:lang="en-US"][@xml:id="id10"][not(following-sibling::*)]/phi[contains(@desciption,"nother a")][following-sibling::*[position()=2]][not(child::node())][following-sibling::zeta[contains(concat(@true,"$"),"ue$")][@xml:lang="en-US"][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[starts-with(concat(@name,"-"),"solid 1px green-")][@xml:lang="no-nb"][@xml:id="id11"][preceding-sibling::*[position() = 2]]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<phi xml:lang="nb">
<upsilon xml:lang="no-nb" xml:id="id1">
<psi xml:id="id2">
<kappa name="content" xml:lang="en" xml:id="id3"/>
<omicron xml:lang="en-GB"/>
<alpha xml:lang="en" xml:id="id4">
<lambda class="_blank" xml:lang="no-nb">
<alpha attribute="attribute" xml:id="id5">
<delta xml:id="id6">
<delta title="123456789"/>
<omicron true="_blank" xml:lang="en" xml:id="id7">
<sigma token="123456789" xml:lang="en-US" xml:id="id8"/>
<xi title="attribute-value" xml:id="id9">
<sigma attr="100%" xml:lang="en-US" xml:id="id10">
<phi desciption="another attribute value"/>
<zeta true="true" xml:lang="en-US"/>
<alpha name="solid 1px green" xml:lang="no-nb" xml:id="id11">
<green>This text must be green</green>
</alpha>
</sigma>
</xi>
</omicron>
</delta>
</alpha>
</lambda>
</alpha>
</psi>
</upsilon>
</phi>
</tree>
</test>
<test>
<xpath>//delta[@xml:id="id1"]//eta[@xml:lang="en-US"][@xml:id="id2"]//*[starts-with(@attrib,"false")][@xml:lang="no"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::alpha[contains(concat(@src,"$"),"lue$")][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::delta[@xml:lang="en-GB"][@xml:id="id5"][not(following-sibling::*)]/*[@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[@xml:id="id6"][preceding-sibling::*[position() = 1]]/sigma[contains(@src,"l")][@xml:lang="no-nb"][@xml:id="id7"]/lambda[@xml:lang="no-nb"]//iota[contains(concat(@src,"$"),"ttribute value$")][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::kappa[@xml:lang="en-US"]//eta[starts-with(@desciption,"attribute va")][not(following-sibling::*)]//psi[following-sibling::*[position()=1]][following-sibling::rho[@attr][@xml:lang="no-nb"][@xml:id="id8"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<delta xml:id="id1">
<eta xml:lang="en-US" xml:id="id2">
<any attrib="false" xml:lang="no" xml:id="id3"/>
<alpha src="attribute value" xml:id="id4"/>
<delta xml:lang="en-GB" xml:id="id5">
<any xml:lang="nb"/>
<rho xml:id="id6">
<sigma src="_blank" xml:lang="no-nb" xml:id="id7">
<lambda xml:lang="no-nb">
<iota src="attribute value" xml:lang="nb"/>
<kappa xml:lang="en-US">
<eta desciption="attribute value">
<psi/>
<rho attr="this-is-att-value" xml:lang="no-nb" xml:id="id8">
<green>This text must be green</green>
</rho>
</eta>
</kappa>
</lambda>
</sigma>
</rho>
</delta>
</eta>
</delta>
</tree>
</test>
<test>
<xpath>//rho[@xml:id="id1"]/tau[@string][@xml:id="id2"]//alpha[@insert][@xml:lang="no-nb"][@xml:id="id3"][not(preceding-sibling::*)]//lambda[starts-with(@or,"1234567")][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=3]][following-sibling::theta[@xml:lang="nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::nu[@xml:lang="no"][@xml:id="id6"][not(child::node())][following-sibling::iota[contains(@title,"en")][@xml:lang="no"][@xml:id="id7"]/phi[contains(@or,"e")][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::sigma[@xml:lang="en-US"][@xml:id="id8"]//*[contains(concat(@src,"$"),"e$")][@xml:lang="nb"][not(child::node())][following-sibling::eta[starts-with(concat(@attr,"-"),"attribute-")][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//gamma[@xml:lang="no-nb"][following-sibling::omicron[contains(concat(@insert,"$"),"blank$")][@xml:lang="en-GB"][@xml:id="id9"][preceding-sibling::*[position() = 1]][position() = 1]]]][position() = 1]]]]</xpath>
<tree>
<rho xml:id="id1">
<tau string="attribute" xml:id="id2">
<alpha insert="attribute value" xml:lang="no-nb" xml:id="id3">
<lambda or="123456789" xml:id="id4"/>
<theta xml:lang="nb" xml:id="id5"/>
<nu xml:lang="no" xml:id="id6"/>
<iota title="solid 1px green" xml:lang="no" xml:id="id7">
<phi or="true"/>
<sigma xml:lang="en-US" xml:id="id8">
<any src="attribute value" xml:lang="nb"/>
<eta attr="attribute" xml:lang="no">
<gamma xml:lang="no-nb"/>
<omicron insert="_blank" xml:lang="en-GB" xml:id="id9">
<green>This text must be green</green>
</omicron>
</eta>
</sigma>
</iota>
</alpha>
</tau>
</rho>
</tree>
</test>
<test>
<xpath>//iota[contains(concat(@attr,"$"),"e$")][@xml:lang="no-nb"]/chi[@att][@xml:lang="en-GB"]//kappa[@name="content"][@xml:lang="en-GB"][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::delta[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::phi[starts-with(concat(@title,"-"),"attribute-")][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//xi[@attribute][not(preceding-sibling::*)]//phi[@xml:lang="en"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::*[contains(concat(@content,"$"),"ue$")][@xml:lang="nb"][@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/xi[@class][@xml:id="id5"][following-sibling::*[position()=1]][following-sibling::zeta/iota[starts-with(@object,"c")][@xml:lang="en-US"][following-sibling::*[starts-with(concat(@token,"-"),"another attribute value-")][@xml:id="id6"][preceding-sibling::*[position() = 1]]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota attr="attribute value" xml:lang="no-nb">
<chi att="attribute" xml:lang="en-GB">
<kappa name="content" xml:lang="en-GB" xml:id="id1"/>
<delta xml:id="id2"/>
<phi title="attribute">
<xi attribute="solid 1px green">
<phi xml:lang="en" xml:id="id3"/>
<any content="this-is-att-value" xml:lang="nb" xml:id="id4">
<xi class="this-is-att-value" xml:id="id5"/>
<zeta>
<iota object="content" xml:lang="en-US"/>
<any token="another attribute value" xml:id="id6">
<green>This text must be green</green>
</any>
</zeta>
</any>
</xi>
</phi>
</chi>
</iota>
</tree>
</test>
<test>
<xpath>//chi[@xml:lang="no"]//theta[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::xi[contains(concat(@or,"$"),"false$")][following-sibling::*[position()=2]][following-sibling::beta[@content="true"][not(following-sibling::beta)][following-sibling::phi[@xml:lang="en-US"][not(following-sibling::*)]/epsilon[contains(concat(@title,"$")," value$")][@xml:id="id1"][not(preceding-sibling::*)]/theta[starts-with(@content,"a")][@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)]/xi[starts-with(@true,"true")][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::delta[contains(@insert,"other att")][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/chi[contains(concat(@attr,"$"),"k$")][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::omicron[@xml:lang="no-nb"][following-sibling::alpha[@xml:lang="no-nb"][@xml:id="id4"]//lambda[contains(@insert,"ttr")][@xml:lang="nb"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::tau[@or="attribute value"][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::nu[contains(@string,"thi")][@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 2]]/nu[@xml:lang="en-GB"][@xml:id="id7"][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<chi xml:lang="no">
<theta xml:lang="en-US"/>
<xi or="false"/>
<beta content="true"/>
<phi xml:lang="en-US">
<epsilon title="another attribute value" xml:id="id1">
<theta content="another attribute value" xml:lang="en-GB" xml:id="id2">
<xi true="true" xml:lang="nb"/>
<delta insert="another attribute value" xml:lang="no">
<chi attr="_blank" xml:id="id3"/>
<omicron xml:lang="no-nb"/>
<alpha xml:lang="no-nb" xml:id="id4">
<lambda insert="attribute-value" xml:lang="nb" xml:id="id5">
<zeta xml:lang="en-GB"/>
<tau or="attribute value" xml:lang="en-US"/>
<nu string="this.nodeValue" xml:lang="en-US" xml:id="id6">
<nu xml:lang="en-GB" xml:id="id7">
<green>This text must be green</green>
</nu>
</nu>
</lambda>
</alpha>
</delta>
</theta>
</epsilon>
</phi>
</chi>
</tree>
</test>
<test>
<xpath>//iota[@xml:lang="en-US"][@xml:id="id1"]/omega[@xml:lang="en"][@xml:id="id2"][not(following-sibling::*)][not(preceding-sibling::omega)]//eta[starts-with(@number,"1234567")][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::kappa[@xml:lang="no"][not(child::node())][following-sibling::theta[starts-with(concat(@string,"-"),"solid 1px green-")][@xml:lang="en-US"][@xml:id="id3"]/nu[@object][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::nu[starts-with(concat(@src,"-"),"attribute-")][@xml:id="id4"]//kappa[@xml:lang="no"][@xml:id="id5"][not(child::node())][following-sibling::beta[starts-with(@name,"content")][@xml:lang="en"][@xml:id="id6"][preceding-sibling::*[position() = 1]]]]][position() = 1]]</xpath>
<tree>
<iota xml:lang="en-US" xml:id="id1">
<omega xml:lang="en" xml:id="id2">
<eta number="123456789" xml:lang="nb"/>
<kappa xml:lang="no"/>
<theta string="solid 1px green" xml:lang="en-US" xml:id="id3">
<nu object="another attribute value" xml:lang="nb"/>
<nu src="attribute" xml:id="id4">
<kappa xml:lang="no" xml:id="id5"/>
<beta name="content" xml:lang="en" xml:id="id6">
<green>This text must be green</green>
</beta>
</nu>
</theta>
</omega>
</iota>
</tree>
</test>
<test>
<xpath>//iota[@xml:lang="no"][@xml:id="id1"]//zeta[@xml:id="id2"][not(preceding-sibling::*)]//delta[@xml:lang="en"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/mu[@xml:id="id4"]//nu[not(preceding-sibling::*)][following-sibling::*[position()=4]][following-sibling::upsilon[@attr="solid 1px green"][following-sibling::mu[@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::alpha[@xml:lang="en"][@xml:id="id6"][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[@xml:id="id7"]//pi[@xml:id="id8"]]]][position() = 1]]</xpath>
<tree>
<iota xml:lang="no" xml:id="id1">
<zeta xml:id="id2">
<delta xml:lang="en" xml:id="id3">
<mu xml:id="id4">
<nu/>
<upsilon attr="solid 1px green"/>
<mu xml:lang="en-GB" xml:id="id5"/>
<alpha xml:lang="en" xml:id="id6"/>
<delta xml:id="id7">
<pi xml:id="id8">
<green>This text must be green</green>
</pi>
</delta>
</mu>
</delta>
</zeta>
</iota>
</tree>
</test>
<test>
<xpath>//omega[starts-with(@abort,"anoth")]//beta[@string][@xml:lang="no"][not(child::node())][following-sibling::xi[contains(concat(@content,"$"),"other attribute value$")][@xml:id="id1"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::lambda[contains(@class,"_")][following-sibling::*[position()=2]][not(child::node())][following-sibling::eta[@true][@xml:lang="en-GB"][@xml:id="id2"][following-sibling::omega[starts-with(concat(@false,"-"),"content-")][@xml:lang="nb"][preceding-sibling::*[position() = 4]][not(following-sibling::*)][position() = 1]]][position() = 1]]]</xpath>
<tree>
<omega abort="another attribute value">
<beta string="attribute" xml:lang="no"/>
<xi content="another attribute value" xml:id="id1"/>
<lambda class="_blank"/>
<eta true="true" xml:lang="en-GB" xml:id="id2"/>
<omega false="content" xml:lang="nb">
<green>This text must be green</green>
</omega>
</omega>
</tree>
</test>
<test>
<xpath>//mu[@xml:id="id1"]//xi[@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)]/omicron[@xml:id="id3"][following-sibling::xi[@xml:lang="en-GB"][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::zeta[@xml:id="id5"][preceding-sibling::*[position() = 2]]/xi[@string][@xml:lang="en-US"][not(preceding-sibling::*)]/xi[@att="content"][@xml:id="id6"][following-sibling::alpha[@xml:id="id7"][preceding-sibling::*[position() = 1]]//nu[@attrib][@xml:id="id8"][not(preceding-sibling::*)]/tau[starts-with(@att,"attribut")][@xml:id="id9"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[starts-with(@token,"this.nodeValue")][@xml:lang="nb"][@xml:id="id10"][not(preceding-sibling::lambda)][not(child::node())][following-sibling::alpha[@xml:lang="nb"][@xml:id="id11"]//delta[@delete][@xml:lang="no"][not(child::node())][following-sibling::upsilon[@class][@xml:lang="no"][@xml:id="id12"][following-sibling::phi[@xml:lang="en"][preceding-sibling::*[position() = 2]][following-sibling::lambda[@xml:lang="nb"][following-sibling::alpha[contains(@token,"s-is-a")][preceding-sibling::*[position() = 4]][not(following-sibling::*)]//epsilon[starts-with(@name,"another attribute val")][@xml:id="id13"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[@xml:lang="en-GB"][@xml:id="id14"][following-sibling::epsilon[starts-with(@token,"12345")][@xml:id="id15"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::pi[not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]]][position() = 1]]]]]</xpath>
<tree>
<mu xml:id="id1">
<xi xml:lang="no" xml:id="id2">
<omicron xml:id="id3"/>
<xi xml:lang="en-GB" xml:id="id4"/>
<zeta xml:id="id5">
<xi string="content" xml:lang="en-US">
<xi att="content" xml:id="id6"/>
<alpha xml:id="id7">
<nu attrib="true" xml:id="id8">
<tau att="attribute" xml:id="id9"/>
<lambda token="this.nodeValue" xml:lang="nb" xml:id="id10"/>
<alpha xml:lang="nb" xml:id="id11">
<delta delete="_blank" xml:lang="no"/>
<upsilon class="attribute-value" xml:lang="no" xml:id="id12"/>
<phi xml:lang="en"/>
<lambda xml:lang="nb"/>
<alpha token="this-is-att-value">
<epsilon name="another attribute value" xml:id="id13">
<phi xml:lang="en-GB" xml:id="id14"/>
<epsilon token="123456789" xml:id="id15"/>
<pi>
<green>This text must be green</green>
</pi>
</epsilon>
</alpha>
</alpha>
</nu>
</alpha>
</xi>
</zeta>
</xi>
</mu>
</tree>
</test>
<test>
<xpath>//gamma[@xml:lang="en"]/xi[contains(concat(@number,"$"),"ribute-value$")][@xml:lang="en"][@xml:id="id1"][not(preceding-sibling::*)]/*[contains(concat(@object,"$"),"lank$")][@xml:id="id2"][following-sibling::psi[preceding-sibling::*[position() = 1]]//pi[not(preceding-sibling::*)][not(following-sibling::*)]/eta[@title="this.nodeValue"][@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon[@xml:lang="no-nb"][@xml:id="id3"][not(child::node())][following-sibling::chi[starts-with(concat(@name,"-"),"attribute-")][@xml:lang="en-GB"][@xml:id="id4"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//tau[contains(@number,"k")][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::phi[preceding-sibling::*[position() = 1]][following-sibling::*[@xml:lang="en"][@xml:id="id6"]//omicron[@xml:lang="en-GB"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::eta[@xml:id="id8"][not(following-sibling::*)]//delta[contains(@abort,"al")][not(preceding-sibling::delta or following-sibling::delta)]/*[starts-with(concat(@and,"-"),"attribute value-")][@xml:lang="no"][@xml:id="id9"][not(preceding-sibling::*)][following-sibling::eta[contains(@insert,"nk")][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::gamma[@xml:lang="no-nb"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/sigma[@xml:lang="en-GB"][not(child::node())][following-sibling::zeta[starts-with(concat(@src,"-"),"solid 1px green-")][@xml:lang="en"][not(following-sibling::*)]//eta[@data][@xml:lang="nb"][not(following-sibling::*)][position() = 1]]]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<gamma xml:lang="en">
<xi number="attribute-value" xml:lang="en" xml:id="id1">
<any object="_blank" xml:id="id2"/>
<psi>
<pi>
<eta title="this.nodeValue" xml:lang="nb"/>
<epsilon xml:lang="no-nb" xml:id="id3"/>
<chi name="attribute-value" xml:lang="en-GB" xml:id="id4">
<tau number="_blank" xml:id="id5"/>
<phi/>
<any xml:lang="en" xml:id="id6">
<omicron xml:lang="en-GB" xml:id="id7"/>
<eta xml:id="id8">
<delta abort="another attribute value">
<any and="attribute value" xml:lang="no" xml:id="id9"/>
<eta insert="_blank"/>
<gamma xml:lang="no-nb">
<sigma xml:lang="en-GB"/>
<zeta src="solid 1px green" xml:lang="en">
<eta data="_blank" xml:lang="nb">
<green>This text must be green</green>
</eta>
</zeta>
</gamma>
</delta>
</eta>
</any>
</chi>
</pi>
</psi>
</xi>
</gamma>
</tree>
</test>
<test>
<xpath>//mu[starts-with(@abort,"anothe")]/pi[@xml:id="id1"][not(child::node())][following-sibling::nu[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[following-sibling::omega[@class="_blank"][following-sibling::delta[@object][@xml:lang="en"][following-sibling::*[position()=1]][not(child::node())][following-sibling::pi/zeta[@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@attr][@xml:lang="no-nb"][@xml:id="id2"][following-sibling::sigma[contains(concat(@string,"$"),"789$")][@xml:lang="no"]//chi[not(preceding-sibling::*)][not(child::node())][following-sibling::zeta[@and][@xml:id="id3"]//eta[not(preceding-sibling::*)][not(child::node())][following-sibling::mu[starts-with(concat(@true,"-"),"true-")][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::*[starts-with(concat(@or,"-"),"123456789-")][@xml:id="id5"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/omicron[@xml:id="id6"][following-sibling::sigma[@attr][@xml:lang="en-US"][preceding-sibling::*[position() = 1]]/*[starts-with(concat(@insert,"-"),"this.nodeValue-")][@xml:lang="en"]][position() = 1]]]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<mu abort="another attribute value">
<pi xml:id="id1"/>
<nu/>
<delta/>
<omega class="_blank"/>
<delta object="attribute value" xml:lang="en"/>
<pi>
<zeta xml:lang="no-nb"/>
<xi attr="123456789" xml:lang="no-nb" xml:id="id2"/>
<sigma string="123456789" xml:lang="no">
<chi/>
<zeta and="attribute-value" xml:id="id3">
<eta/>
<mu true="true" xml:id="id4"/>
<any or="123456789" xml:id="id5">
<omicron xml:id="id6"/>
<sigma attr="123456789" xml:lang="en-US">
<any insert="this.nodeValue" xml:lang="en">
<green>This text must be green</green>
</any>
</sigma>
</any>
</zeta>
</sigma>
</pi>
</mu>
</tree>
</test>
<test>
<xpath>//omega[contains(concat(@desciption,"$"),"ute$")][@xml:lang="no"]//iota[@xml:lang="en-US"][@xml:id="id1"][following-sibling::*[position()=2]][following-sibling::psi[following-sibling::chi[starts-with(@true,"12345678")][@xml:lang="no-nb"][preceding-sibling::*[position() = 2]]/omega[starts-with(@attribute,"solid 1px")][@xml:lang="en"][not(preceding-sibling::*)][following-sibling::delta[@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::zeta[preceding-sibling::*[position() = 2]][not(following-sibling::*)]//gamma[@xml:lang="no"][not(preceding-sibling::*)][following-sibling::sigma[contains(@att,"e")][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::theta[@xml:lang="en"][@xml:id="id3"][not(following-sibling::*)]//iota[starts-with(concat(@attr,"-"),"123456789-")][not(following-sibling::*)][position() = 1]][position() = 1]]][position() = 1]]]]</xpath>
<tree>
<omega desciption="attribute" xml:lang="no">
<iota xml:lang="en-US" xml:id="id1"/>
<psi/>
<chi true="123456789" xml:lang="no-nb">
<omega attribute="solid 1px green" xml:lang="en"/>
<delta xml:lang="en"/>
<zeta>
<gamma xml:lang="no"/>
<sigma att="attribute" xml:id="id2"/>
<theta xml:lang="en" xml:id="id3">
<iota attr="123456789">
<green>This text must be green</green>
</iota>
</theta>
</zeta>
</chi>
</omega>
</tree>
</test>
<test>
<xpath>//beta/mu[@desciption][@xml:lang="no"][following-sibling::*[position()=2]][not(child::node())][following-sibling::alpha[@xml:id="id1"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::tau[starts-with(concat(@attribute,"-"),"attribute-")][not(following-sibling::*)]//beta[contains(@or,"content")][@xml:lang="en"][@xml:id="id2"]/chi[@abort][not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::alpha[@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::eta[@attrib][@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::gamma[@xml:id="id5"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<beta>
<mu desciption="attribute" xml:lang="no"/>
<alpha xml:id="id1"/>
<tau attribute="attribute">
<beta or="content" xml:lang="en" xml:id="id2">
<chi abort="123456789"/>
<alpha xml:id="id3"/>
<eta attrib="attribute value" xml:id="id4"/>
<gamma xml:id="id5">
<green>This text must be green</green>
</gamma>
</beta>
</tau>
</beta>
</tree>
</test>
<test>
<xpath>//iota[@xml:lang="en-US"][@xml:id="id1"]/psi[contains(@data,"se")][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::gamma[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/delta[contains(concat(@token,"$"),"nk$")][@xml:lang="en-GB"][@xml:id="id2"][not(following-sibling::*)]//nu[@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::phi[starts-with(@and,"this-is-att-val")][not(child::node())][following-sibling::eta[contains(@attribute,"is-is-att-v")][@xml:id="id4"][not(following-sibling::*)]/nu[@xml:id="id5"][not(preceding-sibling::*)][not(preceding-sibling::nu)]//tau[not(preceding-sibling::*)][following-sibling::alpha[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//rho[@false][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::omicron[preceding-sibling::*[position() = 1]][not(following-sibling::*)]//chi[not(preceding-sibling::*)]//mu[@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::kappa[@xml:lang="en-GB"][@xml:id="id6"][not(following-sibling::*)]/zeta[@name="another attribute value"][not(preceding-sibling::*)]//delta[@insert="123456789"][not(following-sibling::*)]/iota[@xml:id="id7"][not(preceding-sibling::*)]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota xml:lang="en-US" xml:id="id1">
<psi data="false"/>
<gamma xml:lang="no">
<delta token="_blank" xml:lang="en-GB" xml:id="id2">
<nu xml:id="id3"/>
<phi and="this-is-att-value"/>
<eta attribute="this-is-att-value" xml:id="id4">
<nu xml:id="id5">
<tau/>
<alpha xml:lang="en-GB">
<rho false="false" xml:lang="no"/>
<omicron>
<chi>
<mu xml:lang="en-GB"/>
<kappa xml:lang="en-GB" xml:id="id6">
<zeta name="another attribute value">
<delta insert="123456789">
<iota xml:id="id7">
<green>This text must be green</green>
</iota>
</delta>
</zeta>
</kappa>
</chi>
</omicron>
</alpha>
</nu>
</eta>
</delta>
</gamma>
</iota>
</tree>
</test>
<test>
<xpath>//upsilon[@xml:id="id1"]//omega[@xml:lang="en-US"]/kappa[@desciption][not(preceding-sibling::*)]//omicron[@and="100%"][@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::mu[preceding-sibling::*[position() = 1]][following-sibling::theta[@title][@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/pi[@and="attribute-value"][@xml:lang="en"][@xml:id="id3"]/upsilon[@xml:lang="nb"][following-sibling::omicron[@att="true"][@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/mu[@or][@xml:id="id5"][not(following-sibling::*)]]][position() = 1]]</xpath>
<tree>
<upsilon xml:id="id1">
<omega xml:lang="en-US">
<kappa desciption="true">
<omicron and="100%" xml:lang="no"/>
<mu/>
<theta title="attribute" xml:lang="no" xml:id="id2">
<pi and="attribute-value" xml:lang="en" xml:id="id3">
<upsilon xml:lang="nb"/>
<omicron att="true" xml:id="id4">
<mu or="false" xml:id="id5">
<green>This text must be green</green>
</mu>
</omicron>
</pi>
</theta>
</kappa>
</omega>
</upsilon>
</tree>
</test>
<test>
<xpath>//zeta/gamma[@class][@xml:id="id1"][not(following-sibling::*)]/sigma[@delete][@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::mu[contains(@and,"ute-value")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/upsilon[contains(concat(@string,"$"),"attribute-value$")][@xml:lang="no-nb"][@xml:id="id3"]//epsilon[@desciption][@xml:lang="no-nb"][@xml:id="id4"][not(preceding-sibling::*)]/sigma[@xml:id="id5"][following-sibling::*[position()=11]][following-sibling::xi[@xml:lang="en-GB"][@xml:id="id6"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=10]][following-sibling::omicron[@xml:lang="en-GB"][following-sibling::omicron[@content][@xml:id="id7"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::eta[@true][@xml:lang="nb"][preceding-sibling::*[position() = 4]][following-sibling::*[position()=7]][following-sibling::tau[@xml:id="id8"][following-sibling::psi[@xml:id="id9"][not(child::node())][following-sibling::delta[contains(concat(@and,"$"),"nt$")][@xml:id="id10"][preceding-sibling::*[position() = 7]][following-sibling::*[position()=4]][following-sibling::zeta[@xml:id="id11"][following-sibling::alpha[not(child::node())][following-sibling::iota[preceding-sibling::*[position() = 10]][following-sibling::psi[@string="false"][preceding-sibling::*[position() = 11]]][position() = 1]]]]][position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<zeta>
<gamma class="this-is-att-value" xml:id="id1">
<sigma delete="false" xml:lang="nb" xml:id="id2"/>
<mu and="attribute-value">
<upsilon string="attribute-value" xml:lang="no-nb" xml:id="id3">
<epsilon desciption="attribute" xml:lang="no-nb" xml:id="id4">
<sigma xml:id="id5"/>
<xi xml:lang="en-GB" xml:id="id6"/>
<omicron xml:lang="en-GB"/>
<omicron content="this.nodeValue" xml:id="id7"/>
<eta true="false" xml:lang="nb"/>
<tau xml:id="id8"/>
<psi xml:id="id9"/>
<delta and="content" xml:id="id10"/>
<zeta xml:id="id11"/>
<alpha/>
<iota/>
<psi string="false">
<green>This text must be green</green>
</psi>
</epsilon>
</upsilon>
</mu>
</gamma>
</zeta>
</tree>
</test>
<test>
<xpath>//pi[@xml:id="id1"]//tau[following-sibling::*[position()=1]][following-sibling::rho[starts-with(concat(@and,"-"),"attribute-")][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/phi[following-sibling::*[position()=6]][not(child::node())][following-sibling::omicron[@xml:lang="en"][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::alpha[@xml:id="id3"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=4]][following-sibling::theta[@token][@xml:lang="en-GB"][following-sibling::*[position()=3]][following-sibling::alpha[contains(concat(@string,"$"),"123456789$")][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::chi[@xml:id="id4"][preceding-sibling::*[position() = 5]][following-sibling::iota//pi[@name][@xml:id="id5"][not(preceding-sibling::*)]/phi[@xml:id="id6"][not(child::node())][following-sibling::pi[@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::theta[contains(@attrib,"olid 1p")][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::pi[@false][@xml:id="id8"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<pi xml:id="id1">
<tau/>
<rho and="attribute-value" xml:lang="en">
<phi/>
<omicron xml:lang="en" xml:id="id2"/>
<alpha xml:id="id3"/>
<theta token="attribute value" xml:lang="en-GB"/>
<alpha string="123456789"/>
<chi xml:id="id4"/>
<iota>
<pi name="123456789" xml:id="id5">
<phi xml:id="id6"/>
<pi xml:id="id7"/>
<theta attrib="solid 1px green"/>
<pi false="this.nodeValue" xml:id="id8">
<green>This text must be green</green>
</pi>
</pi>
</iota>
</rho>
</pi>
</tree>
</test>
<test>
<xpath>//iota[@xml:lang="no"][@xml:id="id1"]/chi[contains(@name,"0")][@xml:lang="en-GB"][following-sibling::*[position()=2]][not(child::node())][following-sibling::*[@attr][@xml:id="id2"][following-sibling::epsilon[@xml:lang="en"][@xml:id="id3"][not(following-sibling::epsilon)]/psi[starts-with(@title,"attrib")][@xml:lang="no-nb"][@xml:id="id4"][following-sibling::*[position()=2]][not(child::node())][following-sibling::iota[@xml:lang="nb"][@xml:id="id5"][following-sibling::*[position()=1]][not(preceding-sibling::iota)][not(child::node())][following-sibling::epsilon[@xml:lang="en"][@xml:id="id6"][not(following-sibling::*)]//omicron[@src][@xml:lang="en-US"][@xml:id="id7"][following-sibling::*[position()=3]][following-sibling::upsilon[contains(@and,"fa")][@xml:id="id8"][following-sibling::sigma[@xml:lang="no"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::zeta[starts-with(concat(@and,"-"),"123456789-")][@xml:lang="en-GB"][preceding-sibling::*[position() = 3]]]]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota xml:lang="no" xml:id="id1">
<chi name="100%" xml:lang="en-GB"/>
<any attr="this.nodeValue" xml:id="id2"/>
<epsilon xml:lang="en" xml:id="id3">
<psi title="attribute" xml:lang="no-nb" xml:id="id4"/>
<iota xml:lang="nb" xml:id="id5"/>
<epsilon xml:lang="en" xml:id="id6">
<omicron src="true" xml:lang="en-US" xml:id="id7"/>
<upsilon and="false" xml:id="id8"/>
<sigma xml:lang="no"/>
<zeta and="123456789" xml:lang="en-GB">
<green>This text must be green</green>
</zeta>
</epsilon>
</epsilon>
</iota>
</tree>
</test>
<test>
<xpath>//lambda[@xml:lang="no-nb"][@xml:id="id1"]//rho[@xml:id="id2"][not(child::node())][following-sibling::chi[not(following-sibling::*)]/rho[@xml:lang="no"][@xml:id="id3"][not(child::node())][following-sibling::kappa[@xml:lang="en"][following-sibling::*[@or][@xml:lang="en-GB"][@xml:id="id4"]//mu[@xml:lang="en"][@xml:id="id5"]//psi[following-sibling::pi[@number][not(following-sibling::*)]/beta[@xml:lang="en-GB"][following-sibling::*[position()=2]][following-sibling::lambda[@or][@xml:id="id6"][following-sibling::gamma[starts-with(concat(@insert,"-"),"content-")][@xml:lang="no"][@xml:id="id7"][not(following-sibling::*)]//*[@xml:lang="en-US"][@xml:id="id8"]]]]]][position() = 1]]</xpath>
<tree>
<lambda xml:lang="no-nb" xml:id="id1">
<rho xml:id="id2"/>
<chi>
<rho xml:lang="no" xml:id="id3"/>
<kappa xml:lang="en"/>
<any or="this.nodeValue" xml:lang="en-GB" xml:id="id4">
<mu xml:lang="en" xml:id="id5">
<psi/>
<pi number="123456789">
<beta xml:lang="en-GB"/>
<lambda or="100%" xml:id="id6"/>
<gamma insert="content" xml:lang="no" xml:id="id7">
<any xml:lang="en-US" xml:id="id8">
<green>This text must be green</green>
</any>
</gamma>
</pi>
</mu>
</any>
</chi>
</lambda>
</tree>
</test>
<test>
<xpath>//kappa[@data][@xml:lang="no"][@xml:id="id1"]//rho[contains(concat(@object,"$"),"te value$")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::rho)][following-sibling::phi[following-sibling::tau[@xml:lang="en-GB"][@xml:id="id2"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/mu[@attribute][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::alpha[@xml:lang="en-US"][@xml:id="id3"][not(following-sibling::*)]/alpha[@xml:id="id4"][following-sibling::pi[contains(concat(@att,"$"),"lank$")][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::chi[starts-with(concat(@and,"-"),"attribute value-")][@xml:lang="no"][preceding-sibling::*[position() = 2]][not(following-sibling::*)][position() = 1]]]]]]</xpath>
<tree>
<kappa data="this.nodeValue" xml:lang="no" xml:id="id1">
<rho object="another attribute value" xml:lang="no-nb"/>
<phi/>
<tau xml:lang="en-GB" xml:id="id2">
<mu attribute="100%" xml:lang="nb"/>
<alpha xml:lang="en-US" xml:id="id3">
<alpha xml:id="id4"/>
<pi att="_blank" xml:lang="en"/>
<chi and="attribute value" xml:lang="no">
<green>This text must be green</green>
</chi>
</alpha>
</tau>
</kappa>
</tree>
</test>
<test>
<xpath>//omicron[@xml:id="id1"]/kappa[@xml:lang="nb"][@xml:id="id2"][not(child::node())][following-sibling::gamma[@xml:id="id3"][not(following-sibling::*)]/rho[@xml:lang="nb"][not(preceding-sibling::*)]/rho[@xml:lang="en-US"]//upsilon[starts-with(@desciption,"false")][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::delta[starts-with(@delete,"123456789")][@xml:lang="no"][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::upsilon[@data="content"][@xml:lang="no"][@xml:id="id6"][preceding-sibling::*[position() = 2]]/beta[contains(@title,"n")][@xml:lang="en-GB"][@xml:id="id7"][not(following-sibling::*)]/omicron[@xml:lang="no"][not(child::node())][following-sibling::gamma[@false][@xml:id="id8"]/iota[following-sibling::*[position()=3]][not(child::node())][following-sibling::omega[contains(concat(@title,"$"),"3456789$")][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::iota[@xml:lang="no-nb"][preceding-sibling::*[position() = 2]][following-sibling::epsilon[@xml:lang="en-GB"][@xml:id="id9"]/zeta[contains(@delete,"reen")]]]]]][position() = 1]]]</xpath>
<tree>
<omicron xml:id="id1">
<kappa xml:lang="nb" xml:id="id2"/>
<gamma xml:id="id3">
<rho xml:lang="nb">
<rho xml:lang="en-US">
<upsilon desciption="false" xml:id="id4"/>
<delta delete="123456789" xml:lang="no" xml:id="id5"/>
<upsilon data="content" xml:lang="no" xml:id="id6">
<beta title="solid 1px green" xml:lang="en-GB" xml:id="id7">
<omicron xml:lang="no"/>
<gamma false="attribute value" xml:id="id8">
<iota/>
<omega title="123456789"/>
<iota xml:lang="no-nb"/>
<epsilon xml:lang="en-GB" xml:id="id9">
<zeta delete="solid 1px green">
<green>This text must be green</green>
</zeta>
</epsilon>
</gamma>
</beta>
</upsilon>
</rho>
</rho>
</gamma>
</omicron>
</tree>
</test>
<test>
<xpath>//phi[@xml:id="id1"]//theta[starts-with(concat(@desciption,"-"),"false-")][@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::upsilon[starts-with(@or,"_blan")][@xml:lang="no-nb"][@xml:id="id3"][following-sibling::theta[contains(concat(@content,"$"),"100%$")][@xml:lang="en-US"][@xml:id="id4"][not(child::node())][following-sibling::beta[starts-with(concat(@title,"-"),"false-")][@xml:lang="nb"][not(following-sibling::*)]//iota[@delete][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//tau[starts-with(@att,"this-is-att-va")][not(preceding-sibling::*)]/iota[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]//theta[@xml:lang="en"][@xml:id="id6"][not(child::node())][following-sibling::*[contains(@and,"-value")][@xml:lang="nb"]/rho[following-sibling::epsilon[@abort][@xml:lang="no-nb"][@xml:id="id7"][not(following-sibling::*)]//epsilon[@attrib][not(child::node())][following-sibling::eta[preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<phi xml:id="id1">
<theta desciption="false" xml:lang="en-US" xml:id="id2"/>
<upsilon or="_blank" xml:lang="no-nb" xml:id="id3"/>
<theta content="100%" xml:lang="en-US" xml:id="id4"/>
<beta title="false" xml:lang="nb">
<iota delete="another attribute value" xml:id="id5">
<tau att="this-is-att-value">
<iota xml:lang="no">
<theta xml:lang="en" xml:id="id6"/>
<any and="attribute-value" xml:lang="nb">
<rho/>
<epsilon abort="100%" xml:lang="no-nb" xml:id="id7">
<epsilon attrib="solid 1px green"/>
<eta>
<green>This text must be green</green>
</eta>
</epsilon>
</any>
</iota>
</tau>
</iota>
</beta>
</phi>
</tree>
</test>
<test>
<xpath>//kappa[@abort]//delta[contains(@attr,"alu")][@xml:lang="en-US"][@xml:id="id1"][not(preceding-sibling::*)]//epsilon[starts-with(concat(@attribute,"-"),"_blank-")][@xml:lang="no"][not(child::node())][following-sibling::omicron[@delete][@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][following-sibling::theta[starts-with(@and,"attribute v")][@xml:id="id2"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::delta[not(child::node())][following-sibling::alpha[@xml:id="id3"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]/eta[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/pi[not(preceding-sibling::*)]/theta[not(child::node())][following-sibling::beta[starts-with(@string,"a")][@xml:lang="nb"][not(following-sibling::*)]//epsilon[contains(@att,"olid 1px gr")][@xml:id="id4"][following-sibling::delta[@or="solid 1px green"][@xml:lang="nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//pi[not(child::node())][following-sibling::eta[@xml:lang="nb"][not(child::node())][following-sibling::epsilon[@xml:id="id6"][following-sibling::lambda[@xml:lang="en-US"][@xml:id="id7"][not(child::node())][following-sibling::phi[@attr="123456789"][@xml:id="id8"][following-sibling::*[position()=1]][following-sibling::omega[@xml:lang="en-GB"]//lambda[@xml:id="id9"][not(preceding-sibling::*)]//omicron[@attr="content"][@xml:lang="no-nb"][not(child::node())][following-sibling::pi[@xml:lang="en"][@xml:id="id10"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/xi[@xml:id="id11"]]]]][position() = 1]]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<kappa abort="another attribute value">
<delta attr="attribute-value" xml:lang="en-US" xml:id="id1">
<epsilon attribute="_blank" xml:lang="no"/>
<omicron delete="attribute-value" xml:lang="en-GB"/>
<theta and="attribute value" xml:id="id2"/>
<delta/>
<alpha xml:id="id3">
<eta xml:lang="no-nb">
<pi>
<theta/>
<beta string="attribute" xml:lang="nb">
<epsilon att="solid 1px green" xml:id="id4"/>
<delta or="solid 1px green" xml:lang="nb" xml:id="id5">
<pi/>
<eta xml:lang="nb"/>
<epsilon xml:id="id6"/>
<lambda xml:lang="en-US" xml:id="id7"/>
<phi attr="123456789" xml:id="id8"/>
<omega xml:lang="en-GB">
<lambda xml:id="id9">
<omicron attr="content" xml:lang="no-nb"/>
<pi xml:lang="en" xml:id="id10">
<xi xml:id="id11">
<green>This text must be green</green>
</xi>
</pi>
</lambda>
</omega>
</delta>
</beta>
</pi>
</eta>
</alpha>
</delta>
</kappa>
</tree>
</test>
<test>
<xpath>//*[@xml:id="id1"]/delta[@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[@xml:lang="nb"][@xml:id="id3"]//theta[@src][@xml:lang="en"][following-sibling::eta[@xml:id="id4"]/chi[@abort][@xml:id="id5"][not(child::node())][following-sibling::iota[starts-with(@false,"tru")][@xml:lang="nb"][not(following-sibling::*)]/psi[@att="solid 1px green"][@xml:lang="no-nb"]//kappa[@or][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::rho[@xml:id="id6"][following-sibling::*[position()=2]][following-sibling::kappa[@xml:id="id7"][following-sibling::*[position()=1]][not(child::node())][following-sibling::chi[@xml:id="id8"][not(following-sibling::*)]//kappa[starts-with(@attribute,"another a")][@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[starts-with(concat(@insert,"-"),"attribute-")][@xml:lang="en-GB"][not(following-sibling::*)]/*[@and][@xml:lang="no-nb"][@xml:id="id9"][not(following-sibling::*)]//omicron[@xml:lang="nb"][@xml:id="id10"][not(preceding-sibling::*)]/phi[@xml:id="id11"][not(child::node())][following-sibling::tau[@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::pi[@xml:id="id12"][following-sibling::iota[@name="123456789"][preceding-sibling::*[position() = 3]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<any xml:id="id1">
<delta xml:lang="en-US" xml:id="id2"/>
<upsilon xml:lang="nb" xml:id="id3">
<theta src="123456789" xml:lang="en"/>
<eta xml:id="id4">
<chi abort="false" xml:id="id5"/>
<iota false="true" xml:lang="nb">
<psi att="solid 1px green" xml:lang="no-nb">
<kappa or="123456789" xml:lang="nb"/>
<rho xml:id="id6"/>
<kappa xml:id="id7"/>
<chi xml:id="id8">
<kappa attribute="another attribute value" xml:lang="en-US"/>
<sigma insert="attribute-value" xml:lang="en-GB">
<any and="another attribute value" xml:lang="no-nb" xml:id="id9">
<omicron xml:lang="nb" xml:id="id10">
<phi xml:id="id11"/>
<tau xml:lang="en"/>
<pi xml:id="id12"/>
<iota name="123456789">
<green>This text must be green</green>
</iota>
</omicron>
</any>
</sigma>
</chi>
</psi>
</iota>
</eta>
</upsilon>
</any>
</tree>
</test>
<test>
<xpath>//iota[contains(@and,"ute value")][@xml:id="id1"]/nu[contains(@and," ")][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::psi[starts-with(@token,"fals")][@xml:lang="en-US"][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::tau[not(following-sibling::*)]/gamma[starts-with(@content,"a")][@xml:lang="en-GB"]//alpha[@data][@xml:lang="en-US"][not(preceding-sibling::*)]//upsilon[contains(concat(@true,"$"),"tribute-value$")][not(following-sibling::*)]/chi[contains(@data,"alue")][@xml:lang="nb"][@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@src="another attribute value"][not(following-sibling::*)]//pi[@false][@xml:lang="no"]]][position() = 1]]</xpath>
<tree>
<iota and="another attribute value" xml:id="id1">
<nu and="another attribute value" xml:lang="no"/>
<psi token="false" xml:lang="en-US" xml:id="id2"/>
<tau>
<gamma content="attribute-value" xml:lang="en-GB">
<alpha data="this.nodeValue" xml:lang="en-US">
<upsilon true="attribute-value">
<chi data="another attribute value" xml:lang="nb" xml:id="id3"/>
<omicron src="another attribute value">
<pi false="true" xml:lang="no">
<green>This text must be green</green>
</pi>
</omicron>
</upsilon>
</alpha>
</gamma>
</tau>
</iota>
</tree>
</test>
<test>
<xpath>//eta/alpha[@xml:lang="no-nb"][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[@xml:lang="nb"]//iota/delta[contains(@token,"alue")][@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::omega[@xml:id="id3"][preceding-sibling::*[position() = 1]]//theta[@xml:id="id4"][not(preceding-sibling::*)]/delta[@xml:lang="no-nb"][not(preceding-sibling::*)]//theta[@xml:lang="nb"][@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::psi[@xml:lang="en-US"]//lambda//beta[@data][@xml:lang="no-nb"][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[contains(concat(@object,"$"),"bute value$")][@xml:lang="en-US"][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/alpha[@and][@xml:lang="en-US"][@xml:id="id8"]//*[@xml:lang="en-US"][not(preceding-sibling::*)][not(following-sibling::*)]/alpha[not(preceding-sibling::*)][following-sibling::*[preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@or][@xml:id="id9"][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<eta>
<alpha xml:lang="no-nb" xml:id="id1"/>
<sigma xml:lang="nb">
<iota>
<delta token="attribute value" xml:lang="en" xml:id="id2"/>
<omega xml:id="id3">
<theta xml:id="id4">
<delta xml:lang="no-nb">
<theta xml:lang="nb" xml:id="id5"/>
<psi xml:lang="en-US">
<lambda>
<beta data="content" xml:lang="no-nb" xml:id="id6"/>
<kappa object="another attribute value" xml:lang="en-US" xml:id="id7">
<alpha and="_blank" xml:lang="en-US" xml:id="id8">
<any xml:lang="en-US">
<alpha/>
<any/>
<phi or="attribute" xml:id="id9">
<green>This text must be green</green>
</phi>
</any>
</alpha>
</kappa>
</lambda>
</psi>
</delta>
</theta>
</omega>
</iota>
</sigma>
</eta>
</tree>
</test>
<test>
<xpath>//delta//delta[contains(@attr,"att")][@xml:lang="en-GB"][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::iota[@xml:lang="en-GB"]//mu[starts-with(@true,"this.nodeVa")][@xml:lang="en"][@xml:id="id2"][not(child::node())][following-sibling::upsilon[@xml:lang="no-nb"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(preceding-sibling::upsilon)]//lambda[starts-with(concat(@attribute,"-"),"_blank-")][@xml:lang="en-GB"][@xml:id="id4"]//theta[@data][@xml:lang="en-GB"][following-sibling::gamma[preceding-sibling::*[position() = 1]][following-sibling::omega[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]]/omega[@xml:id="id5"][not(preceding-sibling::*)]//xi[@class][@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[contains(@string,"this-is-a")][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@number][@xml:id="id6"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//eta[not(preceding-sibling::*)][not(following-sibling::*)]//eta[@xml:id="id7"][following-sibling::omega[@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::omicron[contains(concat(@src,"$"),"his.nodeValue$")][@xml:id="id9"][preceding-sibling::*[position() = 2]]//upsilon[starts-with(@name,"fals")][@xml:id="id10"][not(preceding-sibling::*)][following-sibling::beta[@xml:lang="no"][@xml:id="id11"][not(following-sibling::*)]/alpha[@delete][@xml:id="id12"][not(preceding-sibling::*)]/pi[starts-with(@name,"a")][@xml:lang="no"][@xml:id="id13"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[contains(concat(@attribute,"$"),"blank$")]/alpha[@xml:lang="en-US"][not(preceding-sibling::*)]//alpha[@true="123456789"][@xml:lang="en-GB"][@xml:id="id14"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]]]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<delta>
<delta attr="attribute value" xml:lang="en-GB" xml:id="id1"/>
<iota xml:lang="en-GB">
<mu true="this.nodeValue" xml:lang="en" xml:id="id2"/>
<upsilon xml:lang="no-nb" xml:id="id3">
<lambda attribute="_blank" xml:lang="en-GB" xml:id="id4">
<theta data="another attribute value" xml:lang="en-GB"/>
<gamma/>
<omega xml:lang="en-GB">
<omega xml:id="id5">
<xi class="true" xml:lang="no"/>
<rho string="this-is-att-value"/>
<phi number="attribute value" xml:id="id6">
<eta>
<eta xml:id="id7"/>
<omega xml:lang="en-GB" xml:id="id8"/>
<omicron src="this.nodeValue" xml:id="id9">
<upsilon name="false" xml:id="id10"/>
<beta xml:lang="no" xml:id="id11">
<alpha delete="this.nodeValue" xml:id="id12">
<pi name="another attribute value" xml:lang="no" xml:id="id13"/>
<lambda attribute="_blank">
<alpha xml:lang="en-US">
<alpha true="123456789" xml:lang="en-GB" xml:id="id14">
<green>This text must be green</green>
</alpha>
</alpha>
</lambda>
</alpha>
</beta>
</omicron>
</eta>
</phi>
</omega>
</omega>
</lambda>
</upsilon>
</iota>
</delta>
</tree>
</test>
<test>
<xpath>//tau/tau[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/lambda[@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::*[position()=4]][following-sibling::upsilon[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::xi[@number="attribute-value"][@xml:lang="nb"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][following-sibling::chi[contains(@attribute,"bu")][@xml:id="id1"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=1]][following-sibling::epsilon[@xml:lang="no"][@xml:id="id2"]/nu[@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=3]][following-sibling::mu[starts-with(concat(@token,"-"),"solid 1px green-")][preceding-sibling::*[position() = 1]][following-sibling::tau[@xml:lang="no-nb"][@xml:id="id4"][not(child::node())][following-sibling::chi[@xml:lang="nb"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/upsilon[starts-with(@string,"attribute-")][@xml:lang="en"][@xml:id="id5"][not(preceding-sibling::*)]/alpha[@true="attribute-value"][@xml:lang="en-US"][@xml:id="id6"][not(preceding-sibling::*)][position() = 1]][position() = 1]]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<tau>
<tau xml:lang="no-nb">
<lambda xml:lang="no-nb"/>
<upsilon xml:lang="no"/>
<xi number="attribute-value" xml:lang="nb"/>
<chi attribute="attribute value" xml:id="id1"/>
<epsilon xml:lang="no" xml:id="id2">
<nu xml:id="id3"/>
<mu token="solid 1px green"/>
<tau xml:lang="no-nb" xml:id="id4"/>
<chi xml:lang="nb">
<upsilon string="attribute-value" xml:lang="en" xml:id="id5">
<alpha true="attribute-value" xml:lang="en-US" xml:id="id6">
<green>This text must be green</green>
</alpha>
</upsilon>
</chi>
</epsilon>
</tau>
</tau>
</tree>
</test>
<test>
<xpath>//alpha[starts-with(@attr,"attribute valu")][@xml:id="id1"]/psi[contains(concat(@src,"$"),"-att-value$")][@xml:lang="en"]//sigma[@xml:id="id2"][not(preceding-sibling::*)]//kappa[contains(@attrib,"attri")][@xml:id="id3"][not(preceding-sibling::*)]/alpha[@attr][@xml:id="id4"][not(following-sibling::*)]//alpha[contains(concat(@string,"$"),"89$")][@xml:lang="en-US"]//tau[@xml:lang="en"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]</xpath>
<tree>
<alpha attr="attribute value" xml:id="id1">
<psi src="this-is-att-value" xml:lang="en">
<sigma xml:id="id2">
<kappa attrib="attribute value" xml:id="id3">
<alpha attr="true" xml:id="id4">
<alpha string="123456789" xml:lang="en-US">
<tau xml:lang="en" xml:id="id5">
<green>This text must be green</green>
</tau>
</alpha>
</alpha>
</kappa>
</sigma>
</psi>
</alpha>
</tree>
</test>
<test>
<xpath>//phi[@xml:id="id1"]/rho[not(following-sibling::*)]/mu[not(preceding-sibling::*)][not(following-sibling::*)]/mu[@data="this-is-att-value"][following-sibling::alpha[@xml:lang="en-US"][following-sibling::eta[@xml:id="id2"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::chi[@xml:lang="no-nb"][@xml:id="id3"][not(following-sibling::*)]/psi[contains(concat(@title,"$"),"value$")][@xml:lang="en"]//tau[contains(concat(@class,"$"),"ue$")][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::alpha[not(following-sibling::*)]/tau[@xml:lang="en-GB"][@xml:id="id5"]//omicron[contains(concat(@abort,"$"),"bute value$")][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::phi[@xml:lang="en"][not(following-sibling::*)]//alpha[@xml:id="id7"]/sigma[@attribute="123456789"][@xml:lang="en"][@xml:id="id8"][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<phi xml:id="id1">
<rho>
<mu>
<mu data="this-is-att-value"/>
<alpha xml:lang="en-US"/>
<eta xml:id="id2"/>
<chi xml:lang="no-nb" xml:id="id3">
<psi title="attribute value" xml:lang="en">
<tau class="attribute-value" xml:id="id4"/>
<alpha>
<tau xml:lang="en-GB" xml:id="id5">
<omicron abort="another attribute value" xml:id="id6"/>
<phi xml:lang="en">
<alpha xml:id="id7">
<sigma attribute="123456789" xml:lang="en" xml:id="id8">
<green>This text must be green</green>
</sigma>
</alpha>
</phi>
</tau>
</alpha>
</psi>
</chi>
</mu>
</rho>
</phi>
</tree>
</test>
<test>
<xpath>//sigma[contains(@false,"0%")][@xml:lang="no-nb"]/tau[@insert][@xml:id="id1"]//*[@title="false"][not(preceding-sibling::*)][not(following-sibling::*)]/sigma[contains(concat(@false,"$"),"nk$")][@xml:id="id2"][following-sibling::*[position()=3]][following-sibling::nu[@number][@xml:id="id3"][following-sibling::*[@object][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::omicron[contains(@att,"nk")][@xml:id="id4"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//omicron[@or][@xml:id="id5"][not(preceding-sibling::*)]//omega[contains(concat(@delete,"$"),"ue$")][not(preceding-sibling::*)]/gamma[starts-with(concat(@abort,"-"),"false-")][@xml:lang="en-US"][@xml:id="id6"][following-sibling::sigma[@xml:lang="en-GB"][@xml:id="id7"][following-sibling::*[position()=2]][following-sibling::alpha[@xml:id="id8"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::psi[@xml:lang="en-US"]/lambda[@data][@xml:lang="nb"][@xml:id="id9"][not(preceding-sibling::lambda)][not(child::node())][following-sibling::zeta[starts-with(concat(@delete,"-"),"true-")][@xml:lang="en-GB"]/pi[not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<sigma false="100%" xml:lang="no-nb">
<tau insert="true" xml:id="id1">
<any title="false">
<sigma false="_blank" xml:id="id2"/>
<nu number="attribute" xml:id="id3"/>
<any object="attribute value"/>
<omicron att="_blank" xml:id="id4">
<omicron or="another attribute value" xml:id="id5">
<omega delete="true">
<gamma abort="false" xml:lang="en-US" xml:id="id6"/>
<sigma xml:lang="en-GB" xml:id="id7"/>
<alpha xml:id="id8"/>
<psi xml:lang="en-US">
<lambda data="another attribute value" xml:lang="nb" xml:id="id9"/>
<zeta delete="true" xml:lang="en-GB">
<pi>
<green>This text must be green</green>
</pi>
</zeta>
</psi>
</omega>
</omicron>
</omicron>
</any>
</tau>
</sigma>
</tree>
</test>
<test>
<xpath>//pi[@xml:lang="no-nb"][@xml:id="id1"]//eta[@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]]/omega[@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon[@xml:lang="en-US"][@xml:id="id3"][following-sibling::*[position()=1]][not(child::node())][following-sibling::upsilon[starts-with(@object,"a")][@xml:lang="nb"][not(following-sibling::*)]][position() = 1]]]</xpath>
<tree>
<pi xml:lang="no-nb" xml:id="id1">
<eta xml:lang="no-nb"/>
<nu xml:lang="en-GB">
<omega xml:id="id2"/>
<epsilon xml:lang="en-US" xml:id="id3"/>
<upsilon object="another attribute value" xml:lang="nb">
<green>This text must be green</green>
</upsilon>
</nu>
</pi>
</tree>
</test>
<test>
<xpath>//upsilon[@xml:lang="nb"]//nu[following-sibling::*[position()=2]][not(child::node())][following-sibling::rho[contains(concat(@and,"$"),"-att-value$")][@xml:lang="en"][not(child::node())][following-sibling::beta[not(following-sibling::*)]//lambda[not(preceding-sibling::*)][not(following-sibling::*)]//mu[starts-with(@title,"false")][@xml:lang="en"][not(preceding-sibling::*)][following-sibling::rho[@name="this.nodeValue"][@xml:lang="en-GB"][@xml:id="id1"]/chi[@or="this-is-att-value"][@xml:lang="en-GB"][not(preceding-sibling::*)]/sigma[contains(concat(@att,"$"),"e$")][@xml:id="id2"][not(preceding-sibling::*)]//tau[not(preceding-sibling::*)][not(child::node())][following-sibling::omega[@xml:id="id3"]//pi[@xml:lang="en-US"][following-sibling::sigma[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//xi[@string][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/psi[contains(@title,"nk")][@xml:id="id5"][following-sibling::beta[contains(concat(@desciption,"$")," value$")][@xml:id="id6"][not(preceding-sibling::beta)][not(child::node())][following-sibling::rho[@src][@xml:lang="en-US"][@xml:id="id7"][preceding-sibling::*[position() = 2]][following-sibling::xi[contains(@number," va")][@xml:lang="nb"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=1]][following-sibling::iota[not(following-sibling::*)]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<upsilon xml:lang="nb">
<nu/>
<rho and="this-is-att-value" xml:lang="en"/>
<beta>
<lambda>
<mu title="false" xml:lang="en"/>
<rho name="this.nodeValue" xml:lang="en-GB" xml:id="id1">
<chi or="this-is-att-value" xml:lang="en-GB">
<sigma att="false" xml:id="id2">
<tau/>
<omega xml:id="id3">
<pi xml:lang="en-US"/>
<sigma xml:lang="no">
<xi string="solid 1px green" xml:id="id4">
<psi title="_blank" xml:id="id5"/>
<beta desciption="attribute value" xml:id="id6"/>
<rho src="100%" xml:lang="en-US" xml:id="id7"/>
<xi number="attribute value" xml:lang="nb"/>
<iota>
<green>This text must be green</green>
</iota>
</xi>
</sigma>
</omega>
</sigma>
</chi>
</rho>
</lambda>
</beta>
</upsilon>
</tree>
</test>
<test>
<xpath>//theta[@att][@xml:lang="no"]/phi[@xml:lang="en-GB"][@xml:id="id1"][not(preceding-sibling::*)]//omicron[@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/omicron[@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::iota[@xml:lang="nb"][@xml:id="id3"][preceding-sibling::*[position() = 1]]//xi[contains(@name,"tribut")][@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::xi[not(following-sibling::*)]//epsilon[@xml:lang="en-US"][@xml:id="id5"][not(preceding-sibling::*)]]]</xpath>
<tree>
<theta att="false" xml:lang="no">
<phi xml:lang="en-GB" xml:id="id1">
<omicron xml:lang="en-GB" xml:id="id2">
<omicron xml:lang="no-nb"/>
<iota xml:lang="nb" xml:id="id3">
<xi name="attribute value" xml:lang="en" xml:id="id4"/>
<xi>
<epsilon xml:lang="en-US" xml:id="id5">
<green>This text must be green</green>
</epsilon>
</xi>
</iota>
</omicron>
</phi>
</theta>
</tree>
</test>
<test>
<xpath>//xi[@abort="100%"][@xml:lang="en-GB"][@xml:id="id1"]//theta[starts-with(@src,"this-is-att-valu")][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::alpha[preceding-sibling::*[position() = 1]]//phi[not(preceding-sibling::*)][following-sibling::sigma[@name][@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::chi[@xml:lang="no-nb"][@xml:id="id3"][preceding-sibling::*[position() = 2]]//rho[@xml:lang="no-nb"][@xml:id="id4"][not(following-sibling::*)]/zeta[following-sibling::theta[@xml:lang="nb"][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<xi abort="100%" xml:lang="en-GB" xml:id="id1">
<theta src="this-is-att-value" xml:id="id2"/>
<alpha>
<phi/>
<sigma name="100%" xml:lang="no"/>
<chi xml:lang="no-nb" xml:id="id3">
<rho xml:lang="no-nb" xml:id="id4">
<zeta/>
<theta xml:lang="nb">
<green>This text must be green</green>
</theta>
</rho>
</chi>
</alpha>
</xi>
</tree>
</test>
<test>
<xpath>//xi[@xml:lang="no"]//lambda[@att][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]/zeta[contains(concat(@att,"$"),"his.nodeValue$")][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::psi[contains(concat(@true,"$"),"ue$")][@xml:lang="en-US"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::omega[contains(@insert,"alse")][@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::xi[not(child::node())][following-sibling::pi[starts-with(@att,"solid 1px gre")][@xml:id="id4"][preceding-sibling::*[position() = 5]][position() = 1]]]]]]</xpath>
<tree>
<xi xml:lang="no">
<lambda att="attribute value" xml:id="id1">
<zeta att="this.nodeValue" xml:id="id2"/>
<sigma/>
<psi true="attribute value" xml:lang="en-US"/>
<omega insert="false" xml:lang="en-US" xml:id="id3"/>
<xi/>
<pi att="solid 1px green" xml:id="id4">
<green>This text must be green</green>
</pi>
</lambda>
</xi>
</tree>
</test>
<test>
<xpath>//kappa[@xml:id="id1"]/pi[contains(concat(@object,"$"),"3456789$")][@xml:id="id2"][following-sibling::zeta[@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 1]]//rho[starts-with(@object,"another attribute valu")][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//epsilon[@xml:id="id5"][not(child::node())][following-sibling::nu[preceding-sibling::*[position() = 1]][following-sibling::phi[@attribute="100%"][@xml:id="id6"][preceding-sibling::*[position() = 2]]/theta[@xml:lang="en"][following-sibling::upsilon[starts-with(concat(@delete,"-"),"this.nodeValue-")][@xml:id="id7"]/chi[@false][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::pi[starts-with(@src,"this.nodeVal")][@xml:id="id8"][preceding-sibling::*[position() = 1]]//iota[@xml:lang="en"][@xml:id="id9"][following-sibling::chi[contains(@and,".no")][@xml:lang="nb"][@xml:id="id10"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//nu[starts-with(concat(@content,"-"),"this.nodeValue-")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[starts-with(@object,"fal")][@xml:lang="en-GB"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<kappa xml:id="id1">
<pi object="123456789" xml:id="id2"/>
<zeta xml:lang="no" xml:id="id3">
<rho object="another attribute value" xml:id="id4">
<epsilon xml:id="id5"/>
<nu/>
<phi attribute="100%" xml:id="id6">
<theta xml:lang="en"/>
<upsilon delete="this.nodeValue" xml:id="id7">
<chi false="content" xml:lang="nb"/>
<pi src="this.nodeValue" xml:id="id8">
<iota xml:lang="en" xml:id="id9"/>
<chi and="this.nodeValue" xml:lang="nb" xml:id="id10">
<nu content="this.nodeValue" xml:lang="en-GB"/>
<rho object="false" xml:lang="en-GB">
<green>This text must be green</green>
</rho>
</chi>
</pi>
</upsilon>
</phi>
</rho>
</zeta>
</kappa>
</tree>
</test>
<test>
<xpath>//beta[contains(concat(@attr,"$"),"1px green$")][@xml:id="id1"]/eta[@xml:lang="en"][not(preceding-sibling::*)]/sigma[@xml:id="id2"][not(preceding-sibling::*)]//zeta[not(following-sibling::*)]/lambda[@xml:lang="no"][not(preceding-sibling::*)]/theta[@xml:lang="no-nb"][@xml:id="id3"][not(following-sibling::*)]/omicron[@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)]//omicron[not(preceding-sibling::*)][not(following-sibling::*)]//xi[@xml:lang="no"][not(following-sibling::*)]/lambda[not(following-sibling::*)]/alpha[contains(concat(@desciption,"$"),"123456789$")][@xml:lang="en-US"][@xml:id="id5"]</xpath>
<tree>
<beta attr="solid 1px green" xml:id="id1">
<eta xml:lang="en">
<sigma xml:id="id2">
<zeta>
<lambda xml:lang="no">
<theta xml:lang="no-nb" xml:id="id3">
<omicron xml:lang="no" xml:id="id4">
<omicron>
<xi xml:lang="no">
<lambda>
<alpha desciption="123456789" xml:lang="en-US" xml:id="id5">
<green>This text must be green</green>
</alpha>
</lambda>
</xi>
</omicron>
</omicron>
</theta>
</lambda>
</zeta>
</sigma>
</eta>
</beta>
</tree>
</test>
<test>
<xpath>//mu[@name][@xml:lang="no"]/phi[@xml:lang="no-nb"][not(following-sibling::*)]/theta[contains(concat(@data,"$"),"lank$")][@xml:lang="en-GB"][@xml:id="id1"][not(following-sibling::*)]/xi[starts-with(@insert,"con")][not(following-sibling::*)]//tau[not(preceding-sibling::*)][following-sibling::beta[@attrib][not(following-sibling::*)]//gamma[contains(@title,"se")][@xml:lang="no-nb"][following-sibling::zeta[@insert="this-is-att-value"][not(child::node())][following-sibling::alpha[@xml:lang="en-US"][not(child::node())][following-sibling::zeta[@content="attribute-value"][preceding-sibling::*[position() = 3]][following-sibling::kappa[@xml:lang="no-nb"][@xml:id="id2"][preceding-sibling::*[position() = 4]][following-sibling::*[position()=6]][not(child::node())][following-sibling::beta[@desciption][@xml:lang="no-nb"][not(child::node())][following-sibling::pi[@delete="_blank"][preceding-sibling::*[position() = 6]][following-sibling::*[position()=4]][not(child::node())][following-sibling::gamma[contains(@insert,"ute")][@xml:lang="nb"][@xml:id="id3"][preceding-sibling::*[position() = 7]][following-sibling::*[position()=3]][not(child::node())][following-sibling::*[@true][@xml:lang="no"][@xml:id="id4"][following-sibling::pi[@xml:lang="en"][@xml:id="id5"][preceding-sibling::*[position() = 9]][following-sibling::*[position()=1]][not(child::node())][following-sibling::eta[@false][@xml:lang="no"]//upsilon[@xml:id="id6"][not(preceding-sibling::*)]//psi[@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::rho[@attribute][@xml:lang="no-nb"][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::delta[@attribute="_blank"][@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//omega[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]][position() = 1]]][position() = 1]]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<mu name="solid 1px green" xml:lang="no">
<phi xml:lang="no-nb">
<theta data="_blank" xml:lang="en-GB" xml:id="id1">
<xi insert="content">
<tau/>
<beta attrib="false">
<gamma title="false" xml:lang="no-nb"/>
<zeta insert="this-is-att-value"/>
<alpha xml:lang="en-US"/>
<zeta content="attribute-value"/>
<kappa xml:lang="no-nb" xml:id="id2"/>
<beta desciption="100%" xml:lang="no-nb"/>
<pi delete="_blank"/>
<gamma insert="attribute" xml:lang="nb" xml:id="id3"/>
<any true="content" xml:lang="no" xml:id="id4"/>
<pi xml:lang="en" xml:id="id5"/>
<eta false="another attribute value" xml:lang="no">
<upsilon xml:id="id6">
<psi xml:lang="no-nb"/>
<rho attribute="another attribute value" xml:lang="no-nb" xml:id="id7"/>
<delta attribute="_blank" xml:lang="en-GB" xml:id="id8">
<omega xml:lang="no-nb">
<green>This text must be green</green>
</omega>
</delta>
</upsilon>
</eta>
</beta>
</xi>
</theta>
</phi>
</mu>
</tree>
</test>
<test>
<xpath>//alpha[@xml:lang="nb"][@xml:id="id1"]/sigma[@xml:id="id2"][not(following-sibling::*)]/xi[@content="attribute"][@xml:lang="no-nb"][@xml:id="id3"][following-sibling::pi[starts-with(concat(@content,"-"),"123456789-")][preceding-sibling::*[position() = 1]][following-sibling::lambda[preceding-sibling::*[position() = 2]][not(following-sibling::*)]//xi[@attribute][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[contains(concat(@attr,"$"),"0%$")][not(preceding-sibling::eta)][following-sibling::kappa[@xml:lang="no-nb"][@xml:id="id4"][not(following-sibling::*)]/xi[@xml:lang="no-nb"][not(child::node())][following-sibling::tau[@xml:lang="no-nb"][@xml:id="id5"][not(child::node())][following-sibling::sigma[@true="attribute-value"]/sigma[@token][@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]/epsilon[contains(@delete,"ibute-value")][@xml:lang="no-nb"][@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]//*[@xml:id="id7"][following-sibling::epsilon[@or="attribute value"][@xml:lang="en-GB"][not(child::node())][following-sibling::theta[@delete="this-is-att-value"][@xml:id="id8"][not(following-sibling::*)]//delta[contains(concat(@true,"$"),"deValue$")][following-sibling::delta[@name="_blank"][@xml:lang="no"][following-sibling::beta[@xml:lang="nb"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//omega[@xml:lang="en-US"][@xml:id="id9"][following-sibling::*[position()=1]][following-sibling::zeta[starts-with(concat(@attr,"-"),"attribute-")][@xml:lang="en-US"][@xml:id="id10"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<alpha xml:lang="nb" xml:id="id1">
<sigma xml:id="id2">
<xi content="attribute" xml:lang="no-nb" xml:id="id3"/>
<pi content="123456789"/>
<lambda>
<xi attribute="this.nodeValue"/>
<eta attr="100%"/>
<kappa xml:lang="no-nb" xml:id="id4">
<xi xml:lang="no-nb"/>
<tau xml:lang="no-nb" xml:id="id5"/>
<sigma true="attribute-value">
<sigma token="content" xml:lang="en">
<epsilon delete="attribute-value" xml:lang="no-nb" xml:id="id6">
<any xml:id="id7"/>
<epsilon or="attribute value" xml:lang="en-GB"/>
<theta delete="this-is-att-value" xml:id="id8">
<delta true="this.nodeValue"/>
<delta name="_blank" xml:lang="no"/>
<beta xml:lang="nb">
<omega xml:lang="en-US" xml:id="id9"/>
<zeta attr="attribute" xml:lang="en-US" xml:id="id10">
<green>This text must be green</green>
</zeta>
</beta>
</theta>
</epsilon>
</sigma>
</sigma>
</kappa>
</lambda>
</sigma>
</alpha>
</tree>
</test>
<test>
<xpath>//upsilon[@xml:lang="en"][@xml:id="id1"]/rho[starts-with(@src,"f")][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::epsilon[contains(concat(@title,"$"),"t$")][@xml:id="id3"][not(following-sibling::*)]//lambda[contains(concat(@token,"$"),"-value$")][not(child::node())][following-sibling::iota[starts-with(concat(@and,"-"),"attribute value-")][@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/pi[@xml:lang="en"][@xml:id="id4"][not(following-sibling::*)]//kappa[@xml:id="id5"][following-sibling::*[position()=1]][not(child::node())][following-sibling::omega[@xml:lang="no"][preceding-sibling::*[position() = 1]]//theta[starts-with(@abort,"soli")][@xml:id="id6"]//delta[@attribute="this.nodeValue"][@xml:lang="en-GB"][@xml:id="id7"][not(following-sibling::*)]][position() = 1]]]</xpath>
<tree>
<upsilon xml:lang="en" xml:id="id1">
<rho src="false" xml:id="id2"/>
<epsilon title="content" xml:id="id3">
<lambda token="attribute-value"/>
<iota and="attribute value" xml:lang="nb">
<pi xml:lang="en" xml:id="id4">
<kappa xml:id="id5"/>
<omega xml:lang="no">
<theta abort="solid 1px green" xml:id="id6">
<delta attribute="this.nodeValue" xml:lang="en-GB" xml:id="id7">
<green>This text must be green</green>
</delta>
</theta>
</omega>
</pi>
</iota>
</epsilon>
</upsilon>
</tree>
</test>
<test>
<xpath>//zeta[starts-with(concat(@attrib,"-"),"this.nodeValue-")][@xml:lang="no-nb"][@xml:id="id1"]/nu[@xml:lang="nb"][following-sibling::alpha[starts-with(@attrib,"th")][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[@insert][@xml:id="id3"][not(child::node())][following-sibling::gamma[@xml:lang="en-US"][not(child::node())][following-sibling::mu[@xml:lang="no-nb"][preceding-sibling::*[position() = 4]][following-sibling::delta[preceding-sibling::*[position() = 5]][following-sibling::*[position()=2]][following-sibling::rho[@xml:lang="no"][following-sibling::pi[@false][preceding-sibling::*[position() = 7]]/*[starts-with(@insert,"tr")][not(preceding-sibling::*)][not(preceding-sibling::any)]//alpha[following-sibling::eta[following-sibling::phi[@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::upsilon[@xml:lang="nb"]/beta[@xml:lang="en-GB"]/lambda[@name="this-is-att-value"][not(preceding-sibling::*)][following-sibling::kappa[@xml:lang="en-GB"][@xml:id="id5"]/alpha[@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]/eta[contains(concat(@desciption,"$"),"%$")][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::eta[contains(@or,"nk")][@xml:id="id8"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::pi[@xml:id="id9"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::delta[@xml:lang="no"][@xml:id="id10"][not(child::node())][following-sibling::zeta[@xml:lang="en-GB"][@xml:id="id11"][preceding-sibling::*[position() = 4]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]]]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<zeta attrib="this.nodeValue" xml:lang="no-nb" xml:id="id1">
<nu xml:lang="nb"/>
<alpha attrib="this.nodeValue" xml:id="id2"/>
<delta insert="_blank" xml:id="id3"/>
<gamma xml:lang="en-US"/>
<mu xml:lang="no-nb"/>
<delta/>
<rho xml:lang="no"/>
<pi false="attribute value">
<any insert="true">
<alpha/>
<eta/>
<phi xml:id="id4"/>
<upsilon xml:lang="nb">
<beta xml:lang="en-GB">
<lambda name="this-is-att-value"/>
<kappa xml:lang="en-GB" xml:id="id5">
<alpha xml:id="id6">
<eta desciption="100%" xml:id="id7"/>
<eta or="_blank" xml:id="id8"/>
<pi xml:id="id9"/>
<delta xml:lang="no" xml:id="id10"/>
<zeta xml:lang="en-GB" xml:id="id11">
<green>This text must be green</green>
</zeta>
</alpha>
</kappa>
</beta>
</upsilon>
</any>
</pi>
</zeta>
</tree>
</test>
<test>
<xpath>//upsilon[@name="123456789"]//theta[@xml:lang="no"][not(following-sibling::*)]//nu[contains(concat(@attrib,"$"),"te$")][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::chi[starts-with(@object,"false")][not(following-sibling::*)]/pi[@xml:lang="no"][not(following-sibling::*)]/rho[starts-with(concat(@false,"-"),"attribute-")][@xml:id="id2"][not(child::node())][following-sibling::lambda[preceding-sibling::*[position() = 1]]/alpha[contains(concat(@string,"$"),"false$")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]//iota[@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]/rho[@true][@xml:id="id3"][not(preceding-sibling::*)]//iota[starts-with(@src,"1234567")][@xml:lang="no-nb"][not(preceding-sibling::*)]/upsilon[@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/zeta[@or="attribute value"][not(following-sibling::*)]/gamma[contains(concat(@or,"$"),"reen$")][@xml:id="id5"][not(preceding-sibling::*)]//rho[@attr="another attribute value"]//phi[@xml:id="id6"][following-sibling::chi[starts-with(@title,"1234567")][preceding-sibling::*[position() = 1]]//xi[not(child::node())][following-sibling::pi[starts-with(concat(@number,"-"),"solid 1px green-")][@xml:id="id7"]/theta[@xml:lang="en-GB"][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[@xml:lang="no"][@xml:id="id8"][not(following-sibling::*)]/iota[@attribute="attribute value"][@xml:lang="en-US"][@xml:id="id9"][not(following-sibling::*)]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<upsilon name="123456789">
<theta xml:lang="no">
<nu attrib="attribute" xml:id="id1"/>
<chi object="false">
<pi xml:lang="no">
<rho false="attribute-value" xml:id="id2"/>
<lambda>
<alpha string="false" xml:lang="en-GB">
<iota xml:lang="en-GB">
<rho true="_blank" xml:id="id3">
<iota src="123456789" xml:lang="no-nb">
<upsilon xml:lang="en-US" xml:id="id4">
<zeta or="attribute value">
<gamma or="solid 1px green" xml:id="id5">
<rho attr="another attribute value">
<phi xml:id="id6"/>
<chi title="123456789">
<xi/>
<pi number="solid 1px green" xml:id="id7">
<theta xml:lang="en-GB"/>
<theta xml:lang="no" xml:id="id8">
<iota attribute="attribute value" xml:lang="en-US" xml:id="id9">
<green>This text must be green</green>
</iota>
</theta>
</pi>
</chi>
</rho>
</gamma>
</zeta>
</upsilon>
</iota>
</rho>
</iota>
</alpha>
</lambda>
</pi>
</chi>
</theta>
</upsilon>
</tree>
</test>
<test>
<xpath>//phi//kappa[@object][@xml:lang="en-US"][@xml:id="id1"]/theta[@xml:id="id2"][not(preceding-sibling::*)][following-sibling::iota[@xml:id="id3"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::chi[contains(@attrib,"k")][@xml:lang="en-GB"][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[starts-with(concat(@name,"-"),"100%-")][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/epsilon[starts-with(@true,"attribute-va")][not(following-sibling::*)]/mu[@xml:lang="en"][@xml:id="id4"][not(child::node())][following-sibling::beta[@false][preceding-sibling::*[position() = 1]][following-sibling::omicron[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::tau[not(following-sibling::*)]/nu[@attribute][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::lambda[@number][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::mu[contains(@true,"cont")][@xml:lang="en-GB"][@xml:id="id5"][not(child::node())][following-sibling::delta[contains(@title,"value")][@xml:lang="en-US"]/omega[@content][not(preceding-sibling::*)][not(child::node())][following-sibling::theta[starts-with(@attrib,"t")][@xml:lang="en"][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(preceding-sibling::theta or following-sibling::theta)]//rho//sigma[@xml:id="id7"][not(preceding-sibling::*)][position() = 1]]]][position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<phi>
<kappa object="this-is-att-value" xml:lang="en-US" xml:id="id1">
<theta xml:id="id2"/>
<iota xml:id="id3"/>
<chi attrib="_blank" xml:lang="en-GB"/>
<psi name="100%">
<epsilon true="attribute-value">
<mu xml:lang="en" xml:id="id4"/>
<beta false="attribute-value"/>
<omicron xml:lang="en-GB"/>
<tau>
<nu attribute="this-is-att-value" xml:lang="no"/>
<lambda number="attribute value" xml:lang="no-nb"/>
<mu true="content" xml:lang="en-GB" xml:id="id5"/>
<delta title="this-is-att-value" xml:lang="en-US">
<omega content="this-is-att-value"/>
<theta attrib="this-is-att-value" xml:lang="en" xml:id="id6">
<rho>
<sigma xml:id="id7">
<green>This text must be green</green>
</sigma>
</rho>
</theta>
</delta>
</tau>
</epsilon>
</psi>
</kappa>
</phi>
</tree>
</test>
<test>
<xpath>//alpha[starts-with(concat(@class,"-"),"content-")][@xml:lang="nb"][@xml:id="id1"]/*[@src="123456789"][following-sibling::omega[contains(@string,"blank")][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//psi[@false][not(child::node())][following-sibling::zeta[starts-with(concat(@desciption,"-"),"solid 1px green-")][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::omega[starts-with(concat(@token,"-"),"100%-")][@xml:lang="en-GB"][@xml:id="id3"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//nu[@xml:lang="no-nb"][@xml:id="id4"][not(preceding-sibling::*)]//pi[@xml:lang="no"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::omega[contains(concat(@object,"$")," attribute value$")][following-sibling::gamma[contains(@attr,"nt")][@xml:id="id6"][not(following-sibling::*)]//beta[@xml:id="id7"][not(following-sibling::*)]/alpha[starts-with(concat(@true,"-"),"attribute-")][@xml:lang="en-US"][@xml:id="id8"]/iota[@xml:lang="nb"][not(child::node())][following-sibling::omega[@xml:lang="nb"][@xml:id="id9"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/omega[@att="attribute value"][@xml:lang="en-US"][@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]//delta[starts-with(@insert,"thi")][@xml:lang="no"][@xml:id="id11"][not(preceding-sibling::*)]/chi[@xml:lang="no-nb"][@xml:id="id12"][not(following-sibling::*)]/psi[starts-with(@object,"an")][@xml:lang="en-US"][not(child::node())][following-sibling::upsilon[@xml:id="id13"][preceding-sibling::*[position() = 1]][following-sibling::pi[@xml:lang="en"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//delta[@xml:lang="en-GB"][@xml:id="id14"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<alpha class="content" xml:lang="nb" xml:id="id1">
<any src="123456789"/>
<omega string="_blank" xml:lang="no">
<psi false="this-is-att-value"/>
<zeta desciption="solid 1px green" xml:id="id2"/>
<omega token="100%" xml:lang="en-GB" xml:id="id3">
<nu xml:lang="no-nb" xml:id="id4">
<pi xml:lang="no" xml:id="id5"/>
<omega object="another attribute value"/>
<gamma attr="content" xml:id="id6">
<beta xml:id="id7">
<alpha true="attribute-value" xml:lang="en-US" xml:id="id8">
<iota xml:lang="nb"/>
<omega xml:lang="nb" xml:id="id9">
<omega att="attribute value" xml:lang="en-US" xml:id="id10">
<delta insert="this.nodeValue" xml:lang="no" xml:id="id11">
<chi xml:lang="no-nb" xml:id="id12">
<psi object="another attribute value" xml:lang="en-US"/>
<upsilon xml:id="id13"/>
<pi xml:lang="en">
<delta xml:lang="en-GB" xml:id="id14">
<green>This text must be green</green>
</delta>
</pi>
</chi>
</delta>
</omega>
</omega>
</alpha>
</beta>
</gamma>
</nu>
</omega>
</omega>
</alpha>
</tree>
</test>
<test>
<xpath>//omega[@xml:lang="en"]//gamma[@data][not(preceding-sibling::*)]//pi[@xml:id="id1"][not(preceding-sibling::*)][following-sibling::mu[starts-with(concat(@att,"-"),"attribute value-")][@xml:lang="no"][following-sibling::chi[@attr][@xml:lang="no-nb"]/epsilon[@and="attribute-value"][@xml:lang="en"][following-sibling::upsilon[starts-with(concat(@token,"-"),"123456789-")][@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/xi[contains(@desciption,"%")][@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::xi[not(child::node())][following-sibling::eta[@xml:lang="en-US"][preceding-sibling::*[position() = 2]][following-sibling::omega[@xml:id="id3"][not(child::node())][following-sibling::phi[@xml:id="id4"][not(child::node())][following-sibling::psi[preceding-sibling::*[position() = 5]][not(child::node())][following-sibling::pi[@xml:id="id5"][preceding-sibling::*[position() = 6]][following-sibling::mu[@xml:id="id6"][preceding-sibling::*[position() = 7]][following-sibling::omega[contains(@false,"this")][@xml:lang="en"][@xml:id="id7"][preceding-sibling::*[position() = 8]][following-sibling::*[position()=1]][following-sibling::beta[not(following-sibling::*)]/alpha[@xml:lang="en"][not(preceding-sibling::*)]//rho[@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]//chi[contains(@attribute,"bute")][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::tau[@xml:lang="nb"][@xml:id="id9"][following-sibling::delta[not(child::node())][following-sibling::zeta[@xml:lang="no"][not(following-sibling::*)]/iota[@xml:id="id10"][not(following-sibling::*)]]][position() = 1]]]][position() = 1]]]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<omega xml:lang="en">
<gamma data="this-is-att-value">
<pi xml:id="id1"/>
<mu att="attribute value" xml:lang="no"/>
<chi attr="_blank" xml:lang="no-nb">
<epsilon and="attribute-value" xml:lang="en"/>
<upsilon token="123456789" xml:lang="nb">
<xi desciption="100%" xml:lang="en" xml:id="id2"/>
<xi/>
<eta xml:lang="en-US"/>
<omega xml:id="id3"/>
<phi xml:id="id4"/>
<psi/>
<pi xml:id="id5"/>
<mu xml:id="id6"/>
<omega false="this-is-att-value" xml:lang="en" xml:id="id7"/>
<beta>
<alpha xml:lang="en">
<rho xml:id="id8">
<chi attribute="attribute" xml:lang="en-GB"/>
<tau xml:lang="nb" xml:id="id9"/>
<delta/>
<zeta xml:lang="no">
<iota xml:id="id10">
<green>This text must be green</green>
</iota>
</zeta>
</rho>
</alpha>
</beta>
</upsilon>
</chi>
</gamma>
</omega>
</tree>
</test>
<test>
<xpath>//*[contains(concat(@name,"$"),"ue$")][@xml:lang="en-US"]//kappa[starts-with(@desciption,"10")][@xml:id="id1"][following-sibling::omicron[contains(concat(@att,"$"),"er attribute value$")][@xml:lang="no"][@xml:id="id2"][not(following-sibling::*)]/rho[@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/tau[@title="content"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//nu[@xml:lang="no"]//alpha[following-sibling::chi[@attr][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::chi[position()=1]][not(child::node())][following-sibling::rho[following-sibling::*[position()=2]][not(child::node())][following-sibling::chi[preceding-sibling::*[position() = 3]][following-sibling::mu[@insert="attribute-value"][@xml:id="id6"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]//lambda[@content="123456789"][@xml:lang="no"][following-sibling::*[position()=1]][following-sibling::*[contains(concat(@or,"$"),"nk$")][@xml:lang="en-GB"][@xml:id="id7"]/eta[@xml:lang="en-US"]/zeta[contains(@content,"attribu")][not(preceding-sibling::*)][not(following-sibling::*)]//rho[@xml:id="id8"][not(preceding-sibling::*)][following-sibling::*[position()=3]][following-sibling::tau[starts-with(@false,"this.nodeVa")][@xml:id="id9"][following-sibling::chi[contains(@att," valu")][@xml:id="id10"][following-sibling::*[position()=1]][following-sibling::xi[contains(concat(@false,"$"),"ibute$")][@xml:lang="en-US"][@xml:id="id11"][not(following-sibling::*)]//omega[starts-with(concat(@and,"-"),"100%-")][@xml:lang="nb"][@xml:id="id12"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<any name="true" xml:lang="en-US">
<kappa desciption="100%" xml:id="id1"/>
<omicron att="another attribute value" xml:lang="no" xml:id="id2">
<rho xml:id="id3">
<tau title="content" xml:id="id4">
<nu xml:lang="no">
<alpha/>
<chi attr="another attribute value" xml:id="id5"/>
<rho/>
<chi/>
<mu insert="attribute-value" xml:id="id6">
<lambda content="123456789" xml:lang="no"/>
<any or="_blank" xml:lang="en-GB" xml:id="id7">
<eta xml:lang="en-US">
<zeta content="attribute value">
<rho xml:id="id8"/>
<tau false="this.nodeValue" xml:id="id9"/>
<chi att="attribute value" xml:id="id10"/>
<xi false="attribute" xml:lang="en-US" xml:id="id11">
<omega and="100%" xml:lang="nb" xml:id="id12"/>
<omicron xml:lang="en-US">
<green>This text must be green</green>
</omicron>
</xi>
</zeta>
</eta>
</any>
</mu>
</nu>
</tau>
</rho>
</omicron>
</any>
</tree>
</test>
<test>
<xpath>//nu/kappa[@xml:id="id1"]//phi[@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::xi[contains(@attribute,"id 1p")][@xml:lang="en-GB"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/iota[starts-with(concat(@and,"-"),"another attribute value-")][@xml:id="id4"][not(child::node())][following-sibling::omicron[@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/nu[@desciption][following-sibling::gamma[@false][@xml:id="id6"][following-sibling::xi[@true="this-is-att-value"][@xml:lang="nb"][@xml:id="id7"][preceding-sibling::*[position() = 2]]/mu[starts-with(concat(@name,"-"),"this-")][@xml:lang="nb"][@xml:id="id8"][not(child::node())][following-sibling::lambda[starts-with(concat(@token,"-"),"attribute-")][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]]//eta[starts-with(@desciption,"so")][@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]//phi[not(preceding-sibling::*)][not(child::node())][following-sibling::psi[@xml:id="id9"][preceding-sibling::*[position() = 1]][following-sibling::alpha[contains(concat(@content,"$"),"alue$")][@xml:lang="en-US"][@xml:id="id10"][preceding-sibling::*[position() = 2]][following-sibling::*[following-sibling::*[position()=2]][not(child::node())][following-sibling::kappa[contains(concat(@token,"$"),"ue$")][preceding-sibling::*[position() = 4]][following-sibling::phi[@xml:lang="en-US"][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]]]]</xpath>
<tree>
<nu>
<kappa xml:id="id1">
<phi xml:lang="en-US" xml:id="id2"/>
<xi attribute="solid 1px green" xml:lang="en-GB" xml:id="id3">
<iota and="another attribute value" xml:id="id4"/>
<omicron xml:lang="en-GB" xml:id="id5">
<nu desciption="solid 1px green"/>
<gamma false="attribute-value" xml:id="id6"/>
<xi true="this-is-att-value" xml:lang="nb" xml:id="id7">
<mu name="this-is-att-value" xml:lang="nb" xml:id="id8"/>
<lambda token="attribute" xml:lang="no-nb">
<eta desciption="solid 1px green" xml:lang="en">
<phi/>
<psi xml:id="id9"/>
<alpha content="this-is-att-value" xml:lang="en-US" xml:id="id10"/>
<any/>
<kappa token="true"/>
<phi xml:lang="en-US">
<green>This text must be green</green>
</phi>
</eta>
</lambda>
</xi>
</omicron>
</xi>
</kappa>
</nu>
</tree>
</test>
<test>
<xpath>//theta[@xml:lang="no"]//chi[contains(concat(@title,"$"),"lue$")][@xml:id="id1"]/phi[not(child::node())][following-sibling::eta[@xml:id="id2"][preceding-sibling::*[position() = 1]]/kappa[starts-with(concat(@src,"-"),"100%-")][@xml:lang="en"][@xml:id="id3"][following-sibling::psi[contains(concat(@true,"$"),"content$")][@xml:lang="en-US"][@xml:id="id4"]/sigma[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::tau[@abort="this.nodeValue"][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//eta[following-sibling::*[position()=1]][not(child::node())][following-sibling::omicron[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]]/psi[@class][@xml:lang="en-US"][@xml:id="id5"][not(following-sibling::*)]/nu[@delete][following-sibling::kappa[@xml:lang="en-GB"]//xi[starts-with(@insert,"attri")][@xml:lang="en-US"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::tau[starts-with(concat(@class,"-"),"content-")][@xml:id="id7"][not(preceding-sibling::tau)]/nu[@or="false"][@xml:id="id8"]/theta[@xml:lang="no"][@xml:id="id9"][following-sibling::*[position()=1]][not(child::node())][following-sibling::upsilon[starts-with(concat(@and,"-"),"this-")][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<theta xml:lang="no">
<chi title="this.nodeValue" xml:id="id1">
<phi/>
<eta xml:id="id2">
<kappa src="100%" xml:lang="en" xml:id="id3"/>
<psi true="content" xml:lang="en-US" xml:id="id4">
<sigma xml:lang="en"/>
<tau abort="this.nodeValue" xml:lang="en">
<eta/>
<omicron xml:lang="en-GB">
<psi class="attribute" xml:lang="en-US" xml:id="id5">
<nu delete="this.nodeValue"/>
<kappa xml:lang="en-GB">
<xi insert="attribute-value" xml:lang="en-US" xml:id="id6"/>
<tau class="content" xml:id="id7">
<nu or="false" xml:id="id8">
<theta xml:lang="no" xml:id="id9"/>
<upsilon and="this-is-att-value">
<green>This text must be green</green>
</upsilon>
</nu>
</tau>
</kappa>
</psi>
</omicron>
</tau>
</psi>
</eta>
</chi>
</theta>
</tree>
</test>
<test>
<xpath>//phi[contains(concat(@or,"$"),"deValue$")][@xml:lang="en-GB"][@xml:id="id1"]/gamma[not(following-sibling::*)]/pi[@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//sigma[@number="false"][@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]//tau[@src][@xml:lang="nb"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//alpha[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::rho[@xml:id="id5"][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@object][@xml:id="id6"][not(following-sibling::*)]//tau[not(preceding-sibling::*)][following-sibling::iota[@xml:lang="no-nb"][following-sibling::mu[@attrib="attribute value"][@xml:lang="en"][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<phi or="this.nodeValue" xml:lang="en-GB" xml:id="id1">
<gamma>
<pi xml:id="id2">
<sigma number="false" xml:lang="en-US" xml:id="id3">
<tau src="false" xml:lang="nb" xml:id="id4">
<alpha xml:lang="nb"/>
<rho xml:id="id5"/>
<psi object="this.nodeValue" xml:id="id6">
<tau/>
<iota xml:lang="no-nb"/>
<mu attrib="attribute value" xml:lang="en">
<green>This text must be green</green>
</mu>
</psi>
</tau>
</sigma>
</pi>
</gamma>
</phi>
</tree>
</test>
<test>
<xpath>//rho/theta[starts-with(@name,"cont")][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::phi[@content="attribute-value"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/eta[starts-with(concat(@number,"-"),"_blank-")][@xml:lang="no"][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]/chi[@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//sigma[@xml:lang="no-nb"][not(following-sibling::*)]//omicron[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::nu[contains(concat(@att,"$"),"100%$")][@xml:lang="en"][not(following-sibling::*)]/sigma[contains(@attribute,"e")][@xml:lang="en-GB"][not(preceding-sibling::*)]//sigma[contains(@object,"s")]/omega[@xml:lang="nb"][@xml:id="id3"]//omega[@token][@xml:lang="nb"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//mu[@xml:lang="en"][following-sibling::*[position()=1]][following-sibling::upsilon[contains(@class,"s-att-value")][@xml:lang="en-US"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/rho[starts-with(@abort,"attri")][@xml:lang="nb"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::theta[following-sibling::nu[@insert="attribute-value"]//rho[starts-with(concat(@content,"-"),"true-")][@xml:lang="en"][@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[following-sibling::omicron[@class][@xml:lang="en"][@xml:id="id8"][preceding-sibling::*[position() = 2]]/chi[starts-with(concat(@false,"-"),"attribute-")][not(preceding-sibling::*)][not(following-sibling::*)]/lambda[@xml:lang="no-nb"][@xml:id="id9"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::chi[@abort][@xml:lang="en-GB"][position() = 1]][position() = 1]]]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<rho>
<theta name="content" xml:lang="en-GB"/>
<phi content="attribute-value">
<eta number="_blank" xml:lang="no" xml:id="id1">
<chi xml:id="id2">
<sigma xml:lang="no-nb">
<omicron xml:lang="en-US"/>
<nu att="100%" xml:lang="en">
<sigma attribute="attribute" xml:lang="en-GB">
<sigma object="false">
<omega xml:lang="nb" xml:id="id3">
<omega token="attribute-value" xml:lang="nb" xml:id="id4">
<mu xml:lang="en"/>
<upsilon class="this-is-att-value" xml:lang="en-US" xml:id="id5">
<rho abort="attribute value" xml:lang="nb" xml:id="id6"/>
<theta/>
<nu insert="attribute-value">
<rho content="true" xml:lang="en" xml:id="id7"/>
<upsilon/>
<omicron class="this.nodeValue" xml:lang="en" xml:id="id8">
<chi false="attribute-value">
<lambda xml:lang="no-nb" xml:id="id9"/>
<chi abort="attribute value" xml:lang="en-GB">
<green>This text must be green</green>
</chi>
</chi>
</omicron>
</nu>
</upsilon>
</omega>
</omega>
</sigma>
</sigma>
</nu>
</sigma>
</chi>
</eta>
</phi>
</rho>
</tree>
</test>
<test>
<xpath>//mu[starts-with(concat(@insert,"-"),"attribute value-")][@xml:lang="no"]//zeta[not(child::node())][following-sibling::theta[@xml:lang="en"][@xml:id="id1"][preceding-sibling::*[position() = 1]][following-sibling::pi[starts-with(@string,"fal")][@xml:id="id2"][preceding-sibling::*[position() = 2]]/sigma[contains(@class,"ank")][following-sibling::*[position()=5]][not(child::node())][following-sibling::xi[@att="_blank"][@xml:lang="en-GB"][@xml:id="id3"][following-sibling::tau[@false][preceding-sibling::*[position() = 2]][following-sibling::*[position()=3]][not(child::node())][following-sibling::chi[contains(@and,"bute-value")][@xml:id="id4"][following-sibling::*[position()=2]][following-sibling::gamma[preceding-sibling::*[position() = 4]][following-sibling::iota[@xml:id="id5"][not(following-sibling::*)]//eta[@insert="_blank"][@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::nu[starts-with(concat(@title,"-"),"true-")][@xml:id="id6"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=4]][following-sibling::phi[@xml:id="id7"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=3]][not(child::node())][following-sibling::gamma[preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::eta[starts-with(concat(@att,"-"),"_blank-")][@xml:lang="en-US"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::alpha//omicron[not(preceding-sibling::*)]//omega[@xml:lang="no-nb"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::gamma[@title="_blank"][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//phi[@name][@xml:lang="no"][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]]]]]]]</xpath>
<tree>
<mu insert="attribute value" xml:lang="no">
<zeta/>
<theta xml:lang="en" xml:id="id1"/>
<pi string="false" xml:id="id2">
<sigma class="_blank"/>
<xi att="_blank" xml:lang="en-GB" xml:id="id3"/>
<tau false="this-is-att-value"/>
<chi and="attribute-value" xml:id="id4"/>
<gamma/>
<iota xml:id="id5">
<eta insert="_blank" xml:lang="no-nb"/>
<nu title="true" xml:id="id6"/>
<phi xml:id="id7"/>
<gamma/>
<eta att="_blank" xml:lang="en-US"/>
<alpha>
<omicron>
<omega xml:lang="no-nb" xml:id="id8"/>
<gamma title="_blank" xml:lang="no">
<phi name="attribute-value" xml:lang="no">
<green>This text must be green</green>
</phi>
</gamma>
</omicron>
</alpha>
</iota>
</pi>
</mu>
</tree>
</test>
<test>
<xpath>//upsilon[@attrib="123456789"][@xml:lang="no"]//alpha[@xml:lang="en"][following-sibling::delta[@attrib][@xml:lang="no-nb"][not(child::node())][following-sibling::lambda[starts-with(@attrib,"1")][@xml:lang="nb"][not(child::node())][following-sibling::eta[starts-with(@content,"attr")][@xml:lang="no-nb"][@xml:id="id1"][preceding-sibling::*[position() = 3]]/mu[@xml:id="id2"]/pi[@and][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/nu[@xml:lang="no"]/chi[@xml:id="id4"][following-sibling::*[position()=1]][not(child::node())][following-sibling::zeta[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//xi[starts-with(@false,"false")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[starts-with(@abort,"10")][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::epsilon[preceding-sibling::*[position() = 1]][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<upsilon attrib="123456789" xml:lang="no">
<alpha xml:lang="en"/>
<delta attrib="false" xml:lang="no-nb"/>
<lambda attrib="100%" xml:lang="nb"/>
<eta content="attribute-value" xml:lang="no-nb" xml:id="id1">
<mu xml:id="id2">
<pi and="content" xml:id="id3">
<nu xml:lang="no">
<chi xml:id="id4"/>
<zeta xml:lang="en-US">
<xi false="false" xml:lang="no-nb">
<zeta abort="100%"/>
<epsilon>
<green>This text must be green</green>
</epsilon>
</xi>
</zeta>
</nu>
</pi>
</mu>
</eta>
</upsilon>
</tree>
</test>
<test>
<xpath>//sigma[@token][@xml:id="id1"]//rho[@xml:id="id2"][not(preceding-sibling::*)]//theta[starts-with(concat(@number,"-"),"false-")][not(child::node())][following-sibling::alpha[@number="attribute-value"][@xml:lang="en"][@xml:id="id3"][preceding-sibling::*[position() = 1]]//psi[@title][@xml:lang="en-GB"][@xml:id="id4"][not(preceding-sibling::*)]//delta[starts-with(@insert,"fal")][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=5]][not(child::node())][following-sibling::theta[@xml:lang="en-GB"][following-sibling::*[position()=4]][not(child::node())][following-sibling::rho[starts-with(concat(@number,"-"),"another attribute value-")][not(child::node())][following-sibling::psi[@delete="false"][@xml:lang="no"][@xml:id="id5"][not(child::node())][following-sibling::psi[@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::pi[@attrib]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<sigma token="another attribute value" xml:id="id1">
<rho xml:id="id2">
<theta number="false"/>
<alpha number="attribute-value" xml:lang="en" xml:id="id3">
<psi title="true" xml:lang="en-GB" xml:id="id4">
<delta insert="false" xml:lang="en-US"/>
<theta xml:lang="en-GB"/>
<rho number="another attribute value"/>
<psi delete="false" xml:lang="no" xml:id="id5"/>
<psi xml:lang="en-US" xml:id="id6"/>
<pi attrib="this.nodeValue">
<green>This text must be green</green>
</pi>
</psi>
</alpha>
</rho>
</sigma>
</tree>
</test>
<test>
<xpath>//omega[@xml:lang="nb"]/chi[contains(concat(@true,"$"),"e$")][@xml:id="id1"]/xi[starts-with(@content,"1")][@xml:lang="en"][@xml:id="id2"][following-sibling::*[position()=1]][following-sibling::xi[@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/beta[@xml:lang="en-GB"][not(child::node())][following-sibling::omicron[@xml:lang="no-nb"][@xml:id="id3"]/pi[@src][@xml:lang="nb"]/phi[not(preceding-sibling::*)][following-sibling::eta[preceding-sibling::*[position() = 1]][not(following-sibling::*)]//sigma[@content][@xml:lang="en"][@xml:id="id4"][not(following-sibling::*)]//theta[@abort][@xml:id="id5"][following-sibling::psi[@att][@xml:lang="nb"][@xml:id="id6"][following-sibling::*[position()=1]][not(child::node())][following-sibling::omega[@xml:id="id7"][preceding-sibling::*[position() = 2]][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<omega xml:lang="nb">
<chi true="false" xml:id="id1">
<xi content="100%" xml:lang="en" xml:id="id2"/>
<xi xml:lang="nb">
<beta xml:lang="en-GB"/>
<omicron xml:lang="no-nb" xml:id="id3">
<pi src="_blank" xml:lang="nb">
<phi/>
<eta>
<sigma content="true" xml:lang="en" xml:id="id4">
<theta abort="100%" xml:id="id5"/>
<psi att="solid 1px green" xml:lang="nb" xml:id="id6"/>
<omega xml:id="id7">
<green>This text must be green</green>
</omega>
</sigma>
</eta>
</pi>
</omicron>
</xi>
</chi>
</omega>
</tree>
</test>
<test>
<xpath>//eta[@xml:lang="en-GB"]//alpha//phi[@xml:lang="no"][@xml:id="id1"][not(following-sibling::*)]/upsilon[@attribute][@xml:lang="no"][not(following-sibling::*)][not(following-sibling::upsilon)]//chi[following-sibling::*[position()=2]][following-sibling::upsilon[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::nu[@title="solid 1px green"][@xml:id="id2"][preceding-sibling::*[position() = 2]]/omicron[starts-with(@or,"fa")][not(child::node())][following-sibling::lambda[contains(concat(@token,"$"),"green$")][@xml:id="id3"][not(following-sibling::*)]/gamma[@xml:lang="no"][@xml:id="id4"][not(child::node())][following-sibling::omega[starts-with(@attrib,"a")][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/omicron[@xml:id="id5"][not(preceding-sibling::*)][following-sibling::epsilon[@xml:id="id6"][following-sibling::kappa[following-sibling::phi[contains(concat(@attribute,"$"),"k$")][@xml:lang="no-nb"][@xml:id="id7"][not(child::node())][following-sibling::iota[starts-with(concat(@delete,"-"),"100%-")][@xml:id="id8"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::*[@xml:lang="no-nb"][not(following-sibling::*)]//alpha[contains(concat(@number,"$"),"ibute-value$")]//omega[contains(@desciption,"0%")][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@xml:id="id9"][not(following-sibling::*)]//xi[@xml:lang="en"][not(preceding-sibling::*)]/beta[@xml:lang="en-GB"][not(preceding-sibling::*)]/upsilon[@xml:id="id10"][not(following-sibling::*)]]][position() = 1]]]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<eta xml:lang="en-GB">
<alpha>
<phi xml:lang="no" xml:id="id1">
<upsilon attribute="attribute-value" xml:lang="no">
<chi/>
<upsilon/>
<nu title="solid 1px green" xml:id="id2">
<omicron or="false"/>
<lambda token="solid 1px green" xml:id="id3">
<gamma xml:lang="no" xml:id="id4"/>
<omega attrib="attribute" xml:lang="no">
<omicron xml:id="id5"/>
<epsilon xml:id="id6"/>
<kappa/>
<phi attribute="_blank" xml:lang="no-nb" xml:id="id7"/>
<iota delete="100%" xml:id="id8"/>
<any xml:lang="no-nb">
<alpha number="attribute-value">
<omega desciption="100%"/>
<eta xml:id="id9">
<xi xml:lang="en">
<beta xml:lang="en-GB">
<upsilon xml:id="id10">
<green>This text must be green</green>
</upsilon>
</beta>
</xi>
</eta>
</alpha>
</any>
</omega>
</lambda>
</nu>
</upsilon>
</phi>
</alpha>
</eta>
</tree>
</test>
<test>
<xpath>//iota[contains(concat(@attribute,"$"),"ue$")]//chi[contains(concat(@object,"$"),"blank$")][@xml:id="id1"][not(preceding-sibling::*)]//delta[@xml:id="id2"]/iota[@title="123456789"][@xml:id="id3"]/beta[@xml:id="id4"][not(child::node())][following-sibling::rho[contains(@string,"sol")][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::mu[@true][@xml:lang="no"][following-sibling::*[position()=1]][not(child::node())][following-sibling::zeta[contains(concat(@and,"$"),"ibute-value$")]/rho[not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::tau[@xml:lang="en"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::nu[@xml:lang="no"][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota attribute="true">
<chi object="_blank" xml:id="id1">
<delta xml:id="id2">
<iota title="123456789" xml:id="id3">
<beta xml:id="id4"/>
<rho string="solid 1px green" xml:lang="en-US"/>
<mu true="this-is-att-value" xml:lang="no"/>
<zeta and="attribute-value">
<rho/>
<tau xml:lang="en" xml:id="id5"/>
<nu xml:lang="no">
<green>This text must be green</green>
</nu>
</zeta>
</iota>
</delta>
</chi>
</iota>
</tree>
</test>
<test>
<xpath>//omega[@name="false"][@xml:lang="no"][@xml:id="id1"]/lambda[@xml:id="id2"][not(preceding-sibling::lambda or following-sibling::lambda)]/xi[following-sibling::*[position()=1]][following-sibling::mu[@attr][@xml:lang="en-GB"][@xml:id="id3"]//sigma[contains(@number,"n")][@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::omega[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/xi[starts-with(concat(@src,"-"),"solid 1px green-")][@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/iota[@xml:lang="en-US"][not(preceding-sibling::*)]//omicron[@xml:lang="nb"][not(following-sibling::*)]//pi[contains(@false,"green")][@xml:lang="en-GB"][@xml:id="id6"]//*[starts-with(@or,"c")][not(preceding-sibling::*)][following-sibling::pi[@xml:lang="no"][preceding-sibling::*[position() = 1]]//lambda[@xml:lang="en"][@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[@attr="this.nodeValue"][@xml:lang="en-GB"]//xi[not(preceding-sibling::*)]//alpha[starts-with(concat(@class,"-"),"123456789-")][@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]//kappa[not(following-sibling::*)]//beta[@xml:lang="en-US"][not(preceding-sibling::beta)]/nu[@xml:lang="en-US"][not(child::node())][following-sibling::nu[@xml:id="id8"][preceding-sibling::*[position() = 1]][following-sibling::xi[@xml:id="id9"]//zeta[@xml:lang="no-nb"][not(parent::*/*[position()=2])]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<omega name="false" xml:lang="no" xml:id="id1">
<lambda xml:id="id2">
<xi/>
<mu attr="this.nodeValue" xml:lang="en-GB" xml:id="id3">
<sigma number="solid 1px green" xml:lang="en" xml:id="id4"/>
<omega xml:lang="en-GB">
<xi src="solid 1px green" xml:lang="en-GB" xml:id="id5">
<iota xml:lang="en-US">
<omicron xml:lang="nb">
<pi false="solid 1px green" xml:lang="en-GB" xml:id="id6">
<any or="content"/>
<pi xml:lang="no">
<lambda xml:lang="en" xml:id="id7"/>
<rho attr="this.nodeValue" xml:lang="en-GB">
<xi>
<alpha class="123456789" xml:lang="nb">
<kappa>
<beta xml:lang="en-US">
<nu xml:lang="en-US"/>
<nu xml:id="id8"/>
<xi xml:id="id9">
<zeta xml:lang="no-nb">
<green>This text must be green</green>
</zeta>
</xi>
</beta>
</kappa>
</alpha>
</xi>
</rho>
</pi>
</pi>
</omicron>
</iota>
</xi>
</omega>
</mu>
</lambda>
</omega>
</tree>
</test>
<test>
<xpath>//phi[starts-with(concat(@class,"-"),"true-")][@xml:id="id1"]//beta[@xml:lang="no-nb"][@xml:id="id2"][not(child::node())][following-sibling::theta[@delete][following-sibling::rho[@title][@xml:id="id3"][not(following-sibling::*)]//iota[starts-with(concat(@title,"-"),"_blank-")][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[contains(concat(@data,"$"),"s-is-att-value$")][@xml:lang="no"][preceding-sibling::*[position() = 1]]//epsilon[contains(concat(@content,"$"),"lue$")][@xml:lang="en-GB"][@xml:id="id4"]//delta[starts-with(@desciption,"_blan")][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=4]][not(child::node())][following-sibling::lambda[@and][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::mu[starts-with(concat(@data,"-"),"attribute-")][following-sibling::rho[contains(concat(@true,"$"),"ute value$")][@xml:id="id7"][following-sibling::psi[@desciption][@xml:lang="en-GB"][@xml:id="id8"][not(following-sibling::*)]/tau[@attrib][@xml:lang="en-US"][not(child::node())][following-sibling::omicron[@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::lambda[@xml:id="id9"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][not(child::node())][following-sibling::theta[preceding-sibling::*[position() = 3]][following-sibling::nu[preceding-sibling::*[position() = 4]][not(following-sibling::*)][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<phi class="true" xml:id="id1">
<beta xml:lang="no-nb" xml:id="id2"/>
<theta delete="solid 1px green"/>
<rho title="100%" xml:id="id3">
<iota title="_blank"/>
<eta data="this-is-att-value" xml:lang="no">
<epsilon content="attribute value" xml:lang="en-GB" xml:id="id4">
<delta desciption="_blank" xml:id="id5"/>
<lambda and="100%" xml:id="id6"/>
<mu data="attribute-value"/>
<rho true="attribute value" xml:id="id7"/>
<psi desciption="_blank" xml:lang="en-GB" xml:id="id8">
<tau attrib="false" xml:lang="en-US"/>
<omicron xml:lang="nb"/>
<lambda xml:id="id9"/>
<theta/>
<nu>
<green>This text must be green</green>
</nu>
</psi>
</epsilon>
</eta>
</rho>
</phi>
</tree>
</test>
<test>
<xpath>//nu[contains(concat(@or,"$"),"89$")]/iota[@desciption][@xml:lang="no"][@xml:id="id1"][not(child::node())][following-sibling::delta[contains(@attrib,"Value")][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::chi[@xml:lang="en"][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[@xml:lang="en-US"]/gamma[not(preceding-sibling::*)][not(following-sibling::*)]//xi[@and][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::rho[contains(@attr,"%")][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/eta[contains(@class," val")][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@delete][@xml:id="id3"][preceding-sibling::*[position() = 1]]//epsilon[contains(@true,"ue")][@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::alpha[@xml:id="id4"][following-sibling::*[position()=2]][following-sibling::tau[@xml:id="id5"][following-sibling::*[position()=1]][following-sibling::gamma[@xml:lang="no-nb"][not(following-sibling::*)]//psi[starts-with(concat(@string,"-"),"another attribute value-")][@xml:lang="no"][not(preceding-sibling::*)]/pi[@att][@xml:lang="en-US"][not(preceding-sibling::*)]/chi[starts-with(concat(@object,"-"),"false-")][not(preceding-sibling::*)][following-sibling::omicron[@false="100%"][@xml:lang="no"][@xml:id="id6"][following-sibling::xi[@xml:id="id7"][following-sibling::lambda[not(following-sibling::*)]//*[not(preceding-sibling::*)][not(child::node())][following-sibling::chi[@xml:lang="en-US"][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<nu or="123456789">
<iota desciption="solid 1px green" xml:lang="no" xml:id="id1"/>
<delta attrib="this.nodeValue" xml:lang="en-US"/>
<chi xml:lang="en"/>
<theta xml:lang="en-US">
<gamma>
<xi and="_blank" xml:lang="no"/>
<rho attr="100%" xml:lang="no">
<eta class="attribute value" xml:id="id2"/>
<psi delete="another attribute value" xml:id="id3">
<epsilon true="true" xml:lang="no"/>
<alpha xml:id="id4"/>
<tau xml:id="id5"/>
<gamma xml:lang="no-nb">
<psi string="another attribute value" xml:lang="no">
<pi att="false" xml:lang="en-US">
<chi object="false"/>
<omicron false="100%" xml:lang="no" xml:id="id6"/>
<xi xml:id="id7"/>
<lambda>
<any/>
<chi xml:lang="en-US">
<green>This text must be green</green>
</chi>
</lambda>
</pi>
</psi>
</gamma>
</psi>
</rho>
</gamma>
</theta>
</nu>
</tree>
</test>
<test>
<xpath>//iota[@xml:lang="no"]/psi[@attr][@xml:id="id1"][following-sibling::*[position()=2]][following-sibling::eta[@delete][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::xi[@object][not(following-sibling::*)]/pi[@att][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::xi[@abort][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota xml:lang="no">
<psi attr="attribute" xml:id="id1"/>
<eta delete="attribute"/>
<xi object="content">
<pi att="solid 1px green" xml:id="id2"/>
<xi abort="this.nodeValue" xml:id="id3">
<green>This text must be green</green>
</xi>
</xi>
</iota>
</tree>
</test>
<test>
<xpath>//upsilon//alpha[@content][@xml:id="id1"]//epsilon[contains(@attribute,"tent")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]//omega[@false="attribute value"][@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::kappa[@attribute][@xml:lang="no"][not(following-sibling::*)]/xi[starts-with(concat(@true,"-"),"content-")][@xml:lang="no-nb"][@xml:id="id2"][following-sibling::*[position()=1]][following-sibling::epsilon[@xml:lang="en"][preceding-sibling::*[position() = 1]]//xi[@xml:id="id3"][not(following-sibling::*)]//lambda[starts-with(@attr,"another attribute valu")][@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)]//gamma[@xml:lang="no-nb"][@xml:id="id5"][not(preceding-sibling::*)]/rho[starts-with(concat(@src,"-"),"_blank-")][not(preceding-sibling::*)][following-sibling::alpha[@xml:id="id6"]//omicron[@xml:lang="en-US"]/nu[@attribute][@xml:id="id7"][not(following-sibling::*)]//epsilon[contains(@src,"value")][@xml:lang="en-GB"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::sigma[@desciption="123456789"][not(child::node())][following-sibling::chi[starts-with(@attribute,"attribute-value")][@xml:lang="en-US"]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<upsilon>
<alpha content="solid 1px green" xml:id="id1">
<epsilon attribute="content" xml:lang="en-GB">
<omega false="attribute value" xml:lang="en"/>
<kappa attribute="100%" xml:lang="no">
<xi true="content" xml:lang="no-nb" xml:id="id2"/>
<epsilon xml:lang="en">
<xi xml:id="id3">
<lambda attr="another attribute value" xml:lang="en-US" xml:id="id4">
<gamma xml:lang="no-nb" xml:id="id5">
<rho src="_blank"/>
<alpha xml:id="id6">
<omicron xml:lang="en-US">
<nu attribute="attribute-value" xml:id="id7">
<epsilon src="attribute-value" xml:lang="en-GB" xml:id="id8"/>
<sigma desciption="123456789"/>
<chi attribute="attribute-value" xml:lang="en-US">
<green>This text must be green</green>
</chi>
</nu>
</omicron>
</alpha>
</gamma>
</lambda>
</xi>
</epsilon>
</kappa>
</epsilon>
</alpha>
</upsilon>
</tree>
</test>
<test>
<xpath>//beta[starts-with(@attrib,"f")][@xml:lang="no-nb"]//alpha[@data][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]/omega[starts-with(concat(@string,"-"),"solid 1px green-")][@xml:lang="en"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[starts-with(concat(@or,"-"),"attribute value-")][@xml:id="id2"]/theta[@xml:lang="en-US"][@xml:id="id3"][following-sibling::*[position()=1]][not(child::node())][following-sibling::chi[@xml:lang="nb"][@xml:id="id4"]/pi[@xml:lang="en"][@xml:id="id5"][not(following-sibling::*)]/alpha[starts-with(@string,"_")][@xml:lang="nb"][@xml:id="id6"][following-sibling::*[position()=2]][not(child::node())][following-sibling::pi[@xml:lang="en"][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::omega[contains(@object,"lank")][not(following-sibling::*)]//zeta[contains(concat(@attribute,"$"),"ue$")][@xml:id="id8"][not(preceding-sibling::*)]/rho[starts-with(concat(@false,"-"),"content-")][@xml:lang="en-US"][not(preceding-sibling::*)][not(following-sibling::*)]//mu[@xml:lang="nb"][@xml:id="id9"]//mu[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::beta[@class][@xml:lang="no"]//omega[@xml:lang="nb"][not(child::node())][following-sibling::pi[@xml:id="id10"][not(child::node())][following-sibling::beta[starts-with(concat(@and,"-"),"100%-")][@xml:lang="nb"][@xml:id="id11"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][following-sibling::omega[@xml:lang="en"][preceding-sibling::*[position() = 3]]/chi[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::psi[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::zeta[@string="123456789"][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<beta attrib="false" xml:lang="no-nb">
<alpha data="false" xml:id="id1">
<omega string="solid 1px green" xml:lang="en"/>
<upsilon or="attribute value" xml:id="id2">
<theta xml:lang="en-US" xml:id="id3"/>
<chi xml:lang="nb" xml:id="id4">
<pi xml:lang="en" xml:id="id5">
<alpha string="_blank" xml:lang="nb" xml:id="id6"/>
<pi xml:lang="en" xml:id="id7"/>
<omega object="_blank">
<zeta attribute="true" xml:id="id8">
<rho false="content" xml:lang="en-US">
<mu xml:lang="nb" xml:id="id9">
<mu xml:lang="en"/>
<beta class="_blank" xml:lang="no">
<omega xml:lang="nb"/>
<pi xml:id="id10"/>
<beta and="100%" xml:lang="nb" xml:id="id11"/>
<omega xml:lang="en">
<chi xml:lang="en"/>
<psi xml:lang="en-US"/>
<zeta string="123456789">
<green>This text must be green</green>
</zeta>
</omega>
</beta>
</mu>
</rho>
</zeta>
</omega>
</pi>
</chi>
</upsilon>
</alpha>
</beta>
</tree>
</test>
<test>
<xpath>//epsilon[starts-with(concat(@false,"-"),"100%-")]/kappa[@xml:id="id1"][following-sibling::mu[@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::zeta[preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[preceding-sibling::*[position() = 3]][not(following-sibling::*)]/alpha[not(preceding-sibling::*)][not(following-sibling::*)][not(preceding-sibling::alpha or following-sibling::alpha)]/*[@xml:lang="en"][following-sibling::omega[starts-with(concat(@att,"-"),"100%-")][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//*[@attrib="attribute-value"][@xml:id="id3"][not(child::node())][following-sibling::iota[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::psi[starts-with(@att,"soli")][@xml:id="id4"][preceding-sibling::*[position() = 2]]/xi[@xml:id="id5"]//*[@xml:id="id6"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::sigma[not(child::node())][following-sibling::pi[@xml:lang="no-nb"][@xml:id="id7"][preceding-sibling::*[position() = 2]]//tau[contains(@title,"is.nodeValue")][@xml:lang="en-GB"][not(preceding-sibling::*)]/pi[@xml:lang="no"][following-sibling::tau[@xml:lang="nb"][@xml:id="id8"][preceding-sibling::*[position() = 1]][following-sibling::upsilon[@xml:lang="no"]//alpha[not(following-sibling::*)]//epsilon[contains(@number,"e")]//tau[starts-with(concat(@token,"-"),"this-")][@xml:id="id9"][not(preceding-sibling::*)]/kappa[starts-with(concat(@name,"-"),"100%-")][not(preceding-sibling::*)][not(following-sibling::*)]]]][position() = 1]]][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<epsilon false="100%">
<kappa xml:id="id1"/>
<mu xml:id="id2"/>
<zeta/>
<alpha>
<alpha>
<any xml:lang="en"/>
<omega att="100%" xml:lang="no">
<any attrib="attribute-value" xml:id="id3"/>
<iota xml:lang="no-nb"/>
<psi att="solid 1px green" xml:id="id4">
<xi xml:id="id5">
<any xml:id="id6"/>
<sigma/>
<pi xml:lang="no-nb" xml:id="id7">
<tau title="this.nodeValue" xml:lang="en-GB">
<pi xml:lang="no"/>
<tau xml:lang="nb" xml:id="id8"/>
<upsilon xml:lang="no">
<alpha>
<epsilon number="false">
<tau token="this-is-att-value" xml:id="id9">
<kappa name="100%">
<green>This text must be green</green>
</kappa>
</tau>
</epsilon>
</alpha>
</upsilon>
</tau>
</pi>
</xi>
</psi>
</omega>
</alpha>
</alpha>
</epsilon>
</tree>
</test>
<test>
<xpath>//kappa[contains(@object,"ttrib")]//tau[@abort][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//tau[contains(concat(@content,"$"),"een$")][following-sibling::mu[@object][not(child::node())][following-sibling::psi[preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::iota[@xml:lang="en-US"]//psi[starts-with(@content,"123456")][@xml:id="id2"][not(preceding-sibling::*)]/omicron[@string][@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)]/chi[@content="_blank"][@xml:lang="nb"][@xml:id="id4"][not(child::node())][following-sibling::gamma[@or="this.nodeValue"][@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(following-sibling::gamma)][not(child::node())][following-sibling::mu[@name][@xml:lang="en-US"][@xml:id="id6"][not(child::node())][following-sibling::eta[@xml:id="id7"][not(following-sibling::*)]/phi][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<kappa object="attribute">
<tau abort="123456789" xml:id="id1">
<tau content="solid 1px green"/>
<mu object="attribute value"/>
<psi/>
<iota xml:lang="en-US">
<psi content="123456789" xml:id="id2">
<omicron string="false" xml:lang="en-US" xml:id="id3">
<chi content="_blank" xml:lang="nb" xml:id="id4"/>
<gamma or="this.nodeValue" xml:lang="en-GB" xml:id="id5"/>
<mu name="true" xml:lang="en-US" xml:id="id6"/>
<eta xml:id="id7">
<phi>
<green>This text must be green</green>
</phi>
</eta>
</omicron>
</psi>
</iota>
</tau>
</kappa>
</tree>
</test>
<test>
<xpath>//beta[@attr="this.nodeValue"][@xml:lang="no-nb"]/theta[starts-with(@title,"100")]/omicron[@abort="true"][@xml:lang="en-GB"][not(child::node())][following-sibling::phi[@xml:id="id1"]/chi[contains(@attr,"u")][@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 1]]//sigma[@string="this-is-att-value"][not(following-sibling::*)]//epsilon[@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/epsilon[@name="content"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//alpha[starts-with(@string,"attribute")][@xml:lang="no-nb"][@xml:id="id6"][not(preceding-sibling::*)]//chi[@xml:lang="en-GB"][@xml:id="id7"][position() = 1]]]</xpath>
<tree>
<beta attr="this.nodeValue" xml:lang="no-nb">
<theta title="100%">
<omicron abort="true" xml:lang="en-GB"/>
<phi xml:id="id1">
<chi attr="true" xml:lang="en-GB" xml:id="id2"/>
<nu xml:lang="no" xml:id="id3">
<sigma string="this-is-att-value">
<epsilon xml:id="id4">
<epsilon name="content" xml:id="id5">
<alpha string="attribute value" xml:lang="no-nb" xml:id="id6">
<chi xml:lang="en-GB" xml:id="id7">
<green>This text must be green</green>
</chi>
</alpha>
</epsilon>
</epsilon>
</sigma>
</nu>
</phi>
</theta>
</beta>
</tree>
</test>
<test>
<xpath>//omicron/zeta[@xml:lang="en-US"][not(preceding-sibling::*)]/*[not(preceding-sibling::*)][not(following-sibling::*)]/mu[starts-with(concat(@false,"-"),"false-")][@xml:lang="nb"][not(following-sibling::*)]/beta[contains(concat(@and,"$"),"100%$")][@xml:lang="en-US"][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[@desciption][@xml:lang="en"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//rho[@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]/kappa[contains(@token,"nten")][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::pi[contains(@token,"olid 1px ")][@xml:id="id3"][following-sibling::alpha[@name="this-is-att-value"][not(following-sibling::*)]//psi[@xml:lang="nb"][@xml:id="id4"]//epsilon[not(preceding-sibling::*)][not(child::node())][following-sibling::nu[@xml:lang="no"][following-sibling::epsilon[@xml:lang="en"][@xml:id="id5"][following-sibling::epsilon[@object][@xml:lang="no-nb"][not(child::node())][following-sibling::omicron[@xml:lang="en-GB"][@xml:id="id6"][not(following-sibling::*)]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<omicron>
<zeta xml:lang="en-US">
<any>
<mu false="false" xml:lang="nb">
<beta and="100%" xml:lang="en-US" xml:id="id1"/>
<pi desciption="this-is-att-value" xml:lang="en" xml:id="id2">
<rho xml:lang="nb">
<kappa token="content" xml:lang="nb"/>
<pi token="solid 1px green" xml:id="id3"/>
<alpha name="this-is-att-value">
<psi xml:lang="nb" xml:id="id4">
<epsilon/>
<nu xml:lang="no"/>
<epsilon xml:lang="en" xml:id="id5"/>
<epsilon object="another attribute value" xml:lang="no-nb"/>
<omicron xml:lang="en-GB" xml:id="id6">
<green>This text must be green</green>
</omicron>
</psi>
</alpha>
</rho>
</pi>
</mu>
</any>
</zeta>
</omicron>
</tree>
</test>
<test>
<xpath>//psi[@number][@xml:lang="en"]/xi[contains(@name,"id ")]/omega[starts-with(concat(@insert,"-"),"123456789-")][not(preceding-sibling::*)][not(child::node())][following-sibling::psi[@xml:id="id1"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[@src][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::gamma[@xml:lang="no"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=2]][following-sibling::mu[@xml:lang="en-US"][@xml:id="id2"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::sigma[@attrib="_blank"][@xml:id="id3"][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<psi number="solid 1px green" xml:lang="en">
<xi name="solid 1px green">
<omega insert="123456789"/>
<psi xml:id="id1"/>
<delta src="123456789"/>
<gamma xml:lang="no"/>
<mu xml:lang="en-US" xml:id="id2"/>
<sigma attrib="_blank" xml:id="id3">
<green>This text must be green</green>
</sigma>
</xi>
</psi>
</tree>
</test>
<test>
<xpath>//mu[@xml:id="id1"]//beta[@xml:lang="en-US"][@xml:id="id2"][not(following-sibling::*)]//lambda[not(preceding-sibling::*)][not(following-sibling::*)]/omicron[contains(concat(@desciption,"$"),"e$")][@xml:lang="no-nb"][@xml:id="id3"][not(following-sibling::*)]//xi[@xml:lang="en-GB"]/nu[contains(concat(@abort,"$"),"e$")][@xml:id="id4"][not(following-sibling::*)]/nu[starts-with(@string,"this.n")][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@xml:lang="en-US"][following-sibling::omicron[preceding-sibling::*[position() = 2]]/gamma[@xml:lang="nb"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//mu[@class][@xml:lang="en-US"][@xml:id="id6"][following-sibling::*[@xml:lang="no"][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::eta[@xml:lang="en-GB"][@xml:id="id8"][not(following-sibling::*)]//xi[@xml:id="id9"][not(preceding-sibling::*)]//omega[@name="_blank"][@xml:lang="no-nb"][@xml:id="id10"][not(following-sibling::*)]//pi[starts-with(@and,"solid 1px g")][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]]]]</xpath>
<tree>
<mu xml:id="id1">
<beta xml:lang="en-US" xml:id="id2">
<lambda>
<omicron desciption="this.nodeValue" xml:lang="no-nb" xml:id="id3">
<xi xml:lang="en-GB">
<nu abort="false" xml:id="id4">
<nu string="this.nodeValue"/>
<omicron xml:lang="en-US"/>
<omicron>
<gamma xml:lang="nb" xml:id="id5">
<mu class="attribute" xml:lang="en-US" xml:id="id6"/>
<any xml:lang="no" xml:id="id7"/>
<eta xml:lang="en-GB" xml:id="id8">
<xi xml:id="id9">
<omega name="_blank" xml:lang="no-nb" xml:id="id10">
<pi and="solid 1px green">
<green>This text must be green</green>
</pi>
</omega>
</xi>
</eta>
</gamma>
</omicron>
</nu>
</xi>
</omicron>
</lambda>
</beta>
</mu>
</tree>
</test>
<test>
<xpath>//rho[contains(concat(@desciption,"$"),"tribute value$")][@xml:lang="nb"]/alpha[contains(concat(@string,"$"),"e$")][@xml:lang="nb"][@xml:id="id1"][following-sibling::lambda[@name][@xml:lang="nb"][@xml:id="id2"][not(child::node())][following-sibling::eta[@insert][@xml:id="id3"]/theta[@xml:id="id4"]//chi[@xml:lang="no-nb"][@xml:id="id5"][not(child::node())][following-sibling::eta[@xml:id="id6"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::mu[@xml:lang="nb"][not(following-sibling::*)]//zeta[@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]//lambda[@xml:id="id8"][not(following-sibling::*)]//psi[@xml:lang="nb"][@xml:id="id9"][following-sibling::omega[@false="attribute"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[contains(@data,"e")][@xml:lang="no"][preceding-sibling::*[position() = 2]][following-sibling::phi[@number="another attribute value"][@xml:lang="en-US"][@xml:id="id10"][following-sibling::beta[@token][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::chi[@false][@xml:id="id11"][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<rho desciption="attribute value" xml:lang="nb">
<alpha string="attribute-value" xml:lang="nb" xml:id="id1"/>
<lambda name="100%" xml:lang="nb" xml:id="id2"/>
<eta insert="_blank" xml:id="id3">
<theta xml:id="id4">
<chi xml:lang="no-nb" xml:id="id5"/>
<eta xml:id="id6"/>
<mu xml:lang="nb">
<zeta xml:id="id7">
<lambda xml:id="id8">
<psi xml:lang="nb" xml:id="id9"/>
<omega false="attribute"/>
<delta data="attribute-value" xml:lang="no"/>
<phi number="another attribute value" xml:lang="en-US" xml:id="id10"/>
<beta token="attribute"/>
<chi false="attribute-value" xml:id="id11">
<green>This text must be green</green>
</chi>
</lambda>
</zeta>
</mu>
</theta>
</eta>
</rho>
</tree>
</test>
<test>
<xpath>//alpha[@xml:lang="en-GB"]/lambda[@xml:lang="en"][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::iota[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//rho[@attr][@xml:lang="en-US"][@xml:id="id3"][not(following-sibling::*)]//eta[starts-with(concat(@desciption,"-"),"this-")][@xml:lang="no"][not(child::node())][following-sibling::*[@or="another attribute value"][not(child::node())][following-sibling::beta[contains(concat(@object,"$"),"other attribute value$")][@xml:lang="nb"][@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][not(child::node())][following-sibling::omega[starts-with(@string,"thi")][@xml:lang="nb"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=1]][following-sibling::omicron[@attr][not(following-sibling::*)]/theta[@att][@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::chi[@xml:lang="nb"][not(following-sibling::*)]//beta[not(preceding-sibling::*)]/nu[@or][@xml:lang="no"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/iota[starts-with(@delete,"conten")][not(preceding-sibling::iota)][not(child::node())][following-sibling::lambda[contains(concat(@attrib,"$"),"9$")][@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::omicron[@xml:id="id6"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/phi[@xml:id="id7"][not(preceding-sibling::*)]/lambda[starts-with(@attrib,"conten")]/zeta[@xml:lang="en"]//lambda[starts-with(@content,"at")][@xml:lang="en-US"][not(preceding-sibling::*)]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<alpha xml:lang="en-GB">
<lambda xml:lang="en" xml:id="id1"/>
<iota xml:id="id2">
<rho attr="_blank" xml:lang="en-US" xml:id="id3">
<eta desciption="this-is-att-value" xml:lang="no"/>
<any or="another attribute value"/>
<beta object="another attribute value" xml:lang="nb" xml:id="id4"/>
<omega string="this.nodeValue" xml:lang="nb"/>
<omicron attr="100%">
<theta att="false" xml:lang="en"/>
<chi xml:lang="nb">
<beta>
<nu or="this-is-att-value" xml:lang="no" xml:id="id5">
<iota delete="content"/>
<lambda attrib="123456789" xml:lang="en"/>
<omicron xml:id="id6">
<phi xml:id="id7">
<lambda attrib="content">
<zeta xml:lang="en">
<lambda content="attribute" xml:lang="en-US">
<green>This text must be green</green>
</lambda>
</zeta>
</lambda>
</phi>
</omicron>
</nu>
</beta>
</chi>
</omicron>
</rho>
</iota>
</alpha>
</tree>
</test>
<test>
<xpath>//omicron/chi[@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@src][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::beta[starts-with(concat(@false,"-"),"this-")][preceding-sibling::*[position() = 2]]/phi[@string][@xml:id="id3"]//beta[contains(concat(@name,"$"),"r attribute value$")][@xml:lang="no-nb"][not(preceding-sibling::*)]//gamma[@att][following-sibling::beta[not(following-sibling::*)]//*[@number][following-sibling::*[position()=1]][not(child::node())][following-sibling::xi[contains(@class,"r")]/rho[@xml:id="id4"][not(child::node())][following-sibling::sigma[@insert][@xml:id="id5"][preceding-sibling::*[position() = 1]]/gamma[@xml:lang="nb"][@xml:id="id6"][not(child::node())][following-sibling::iota[@xml:lang="en"][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::psi[starts-with(@name,"100%")][not(following-sibling::*)]//epsilon[@xml:lang="no-nb"][not(preceding-sibling::*)]/theta[@xml:lang="nb"][not(child::node())][following-sibling::zeta[contains(@false,"bu")][@xml:id="id8"][not(following-sibling::*)]/nu[following-sibling::epsilon[starts-with(@attribute,"tr")]]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<omicron>
<chi xml:id="id1"/>
<tau src="_blank" xml:id="id2"/>
<beta false="this-is-att-value">
<phi string="_blank" xml:id="id3">
<beta name="another attribute value" xml:lang="no-nb">
<gamma att="true"/>
<beta>
<any number="true"/>
<xi class="true">
<rho xml:id="id4"/>
<sigma insert="attribute-value" xml:id="id5">
<gamma xml:lang="nb" xml:id="id6"/>
<iota xml:lang="en" xml:id="id7"/>
<psi name="100%">
<epsilon xml:lang="no-nb">
<theta xml:lang="nb"/>
<zeta false="attribute-value" xml:id="id8">
<nu/>
<epsilon attribute="true">
<green>This text must be green</green>
</epsilon>
</zeta>
</epsilon>
</psi>
</sigma>
</xi>
</beta>
</beta>
</phi>
</beta>
</omicron>
</tree>
</test>
<test>
<xpath>//beta[@xml:id="id1"]/upsilon[@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::delta[@xml:id="id3"][following-sibling::chi[not(following-sibling::*)]/sigma[starts-with(@content,"12345678")][@xml:lang="en-GB"][@xml:id="id4"][following-sibling::lambda[@xml:lang="no-nb"][@xml:id="id5"][not(child::node())][following-sibling::delta[@xml:lang="en-GB"][@xml:id="id6"][following-sibling::omega[@xml:lang="en-GB"][preceding-sibling::*[position() = 3]]/eta[following-sibling::omicron[@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::upsilon[preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::eta[@insert="solid 1px green"][@xml:lang="no"][@xml:id="id7"][following-sibling::theta[@xml:id="id8"][preceding-sibling::*[position() = 4]]//zeta[@delete][not(preceding-sibling::*)][following-sibling::alpha[contains(@data,"ue")][not(child::node())][following-sibling::alpha[@xml:lang="no-nb"][not(following-sibling::*)]/kappa[@attr][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[starts-with(@token,"attr")][following-sibling::xi[@insert][@xml:lang="nb"][@xml:id="id9"][following-sibling::phi//alpha[starts-with(concat(@token,"-"),"content-")][@xml:lang="no"][@xml:id="id10"][not(child::node())][following-sibling::delta[@xml:lang="en-GB"][@xml:id="id11"][preceding-sibling::*[position() = 1]][position() = 1]]][position() = 1]]]]][position() = 1]][position() = 1]]]]][position() = 1]]]]</xpath>
<tree>
<beta xml:id="id1">
<upsilon xml:lang="no" xml:id="id2"/>
<delta xml:id="id3"/>
<chi>
<sigma content="123456789" xml:lang="en-GB" xml:id="id4"/>
<lambda xml:lang="no-nb" xml:id="id5"/>
<delta xml:lang="en-GB" xml:id="id6"/>
<omega xml:lang="en-GB">
<eta/>
<omicron xml:lang="nb"/>
<upsilon/>
<eta insert="solid 1px green" xml:lang="no" xml:id="id7"/>
<theta xml:id="id8">
<zeta delete="this.nodeValue"/>
<alpha data="true"/>
<alpha xml:lang="no-nb">
<kappa attr="100%">
<zeta token="attribute"/>
<xi insert="another attribute value" xml:lang="nb" xml:id="id9"/>
<phi>
<alpha token="content" xml:lang="no" xml:id="id10"/>
<delta xml:lang="en-GB" xml:id="id11">
<green>This text must be green</green>
</delta>
</phi>
</kappa>
</alpha>
</theta>
</omega>
</chi>
</beta>
</tree>
</test>
<test>
<xpath>//mu[@insert][@xml:lang="nb"]/chi[@title][@xml:id="id1"][not(preceding-sibling::*)]/sigma[@false][not(preceding-sibling::*)][not(following-sibling::*)]/chi[contains(@desciption,"1")][@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//gamma[@xml:lang="en"][not(following-sibling::*)]/beta[@attrib][not(following-sibling::*)]/epsilon[@xml:lang="no"][not(child::node())][following-sibling::mu[@xml:id="id3"]/rho[@xml:lang="no"][@xml:id="id4"][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/chi[@title="attribute value"][not(following-sibling::*)]//theta[starts-with(concat(@token,"-"),"another attribute value-")][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[@attr="another attribute value"][@xml:lang="no"][not(preceding-sibling::*)]//omega[starts-with(@object,"another attribute value")][@xml:lang="en-GB"][@xml:id="id6"][not(preceding-sibling::*)]//tau[not(preceding-sibling::*)][not(child::node())][following-sibling::iota[starts-with(@name,"attri")][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=4]][not(child::node())][following-sibling::upsilon[preceding-sibling::*[position() = 2]][following-sibling::beta[@xml:id="id7"][not(child::node())][following-sibling::sigma[@xml:lang="no-nb"][@xml:id="id8"][not(child::node())][following-sibling::gamma[@xml:id="id9"][preceding-sibling::*[position() = 5]][not(following-sibling::*)]//xi[following-sibling::lambda[contains(concat(@true,"$"),"n$")][@xml:lang="en-US"][@xml:id="id10"][preceding-sibling::*[position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<mu insert="_blank" xml:lang="nb">
<chi title="attribute" xml:id="id1">
<sigma false="attribute value">
<chi desciption="100%" xml:lang="en" xml:id="id2">
<gamma xml:lang="en">
<beta attrib="attribute">
<epsilon xml:lang="no"/>
<mu xml:id="id3">
<rho xml:lang="no" xml:id="id4"/>
<psi>
<chi title="attribute value">
<theta token="another attribute value" xml:id="id5">
<phi attr="another attribute value" xml:lang="no">
<omega object="another attribute value" xml:lang="en-GB" xml:id="id6">
<tau/>
<iota name="attribute" xml:lang="en-US"/>
<upsilon/>
<beta xml:id="id7"/>
<sigma xml:lang="no-nb" xml:id="id8"/>
<gamma xml:id="id9">
<xi/>
<lambda true="solid 1px green" xml:lang="en-US" xml:id="id10">
<green>This text must be green</green>
</lambda>
</gamma>
</omega>
</phi>
</theta>
</chi>
</psi>
</mu>
</beta>
</gamma>
</chi>
</sigma>
</chi>
</mu>
</tree>
</test>
<test>
<xpath>//sigma[starts-with(concat(@src,"-"),"attribute-")]//zeta[@true][@xml:id="id1"][not(child::node())][following-sibling::psi[@xml:lang="en"][@xml:id="id2"][following-sibling::*[position()=1]][not(child::node())][following-sibling::omega[contains(concat(@number,"$"),"s.nodeValue$")][@xml:id="id3"][preceding-sibling::*[position() = 2]]//mu[not(preceding-sibling::*)][not(following-sibling::*)]//chi[@xml:lang="nb"][following-sibling::iota[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::gamma[@false="content"][@xml:lang="no"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//tau[@xml:lang="en"][following-sibling::upsilon[@number="false"][@xml:id="id4"][following-sibling::*[position()=1]][following-sibling::xi[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]]//pi[@xml:lang="nb"][@xml:id="id5"][following-sibling::*[position()=2]][following-sibling::epsilon[@delete="true"][@xml:id="id6"][preceding-sibling::*[position() = 1]][following-sibling::eta[@src="false"][@xml:lang="no-nb"][not(following-sibling::*)][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<sigma src="attribute">
<zeta true="attribute" xml:id="id1"/>
<psi xml:lang="en" xml:id="id2"/>
<omega number="this.nodeValue" xml:id="id3">
<mu>
<chi xml:lang="nb"/>
<iota/>
<gamma false="content" xml:lang="no">
<tau xml:lang="en"/>
<upsilon number="false" xml:id="id4"/>
<xi xml:lang="en-GB">
<pi xml:lang="nb" xml:id="id5"/>
<epsilon delete="true" xml:id="id6"/>
<eta src="false" xml:lang="no-nb">
<green>This text must be green</green>
</eta>
</xi>
</gamma>
</mu>
</omega>
</sigma>
</tree>
</test>
<test>
<xpath>//kappa[@xml:lang="en-US"][@xml:id="id1"]//lambda[starts-with(@class,"att")][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::beta[preceding-sibling::*[position() = 2]][following-sibling::alpha[@delete][@xml:id="id3"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::iota[@xml:lang="en"][not(child::node())][following-sibling::chi[starts-with(concat(@or,"-"),"this.nodeValue-")][@xml:lang="nb"][@xml:id="id4"][preceding-sibling::*[position() = 5]][following-sibling::mu[@insert][@xml:id="id5"][preceding-sibling::*[position() = 6]]/nu[@xml:id="id6"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::rho[@xml:id="id7"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::*[starts-with(concat(@src,"-"),"100%-")][@xml:lang="en-US"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//omicron[@insert="false"][@xml:id="id8"][following-sibling::iota[@xml:lang="no"][@xml:id="id9"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][not(preceding-sibling::iota)]]]]][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<kappa xml:lang="en-US" xml:id="id1">
<lambda class="attribute value"/>
<nu xml:id="id2"/>
<beta/>
<alpha delete="123456789" xml:id="id3"/>
<iota xml:lang="en"/>
<chi or="this.nodeValue" xml:lang="nb" xml:id="id4"/>
<mu insert="true" xml:id="id5">
<nu xml:id="id6"/>
<rho xml:id="id7"/>
<any src="100%" xml:lang="en-US">
<omicron insert="false" xml:id="id8"/>
<iota xml:lang="no" xml:id="id9">
<green>This text must be green</green>
</iota>
</any>
</mu>
</kappa>
</tree>
</test>
<test>
<xpath>//epsilon[@xml:id="id1"]//alpha[contains(concat(@string,"$"),"ttribute$")][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@xml:id="id3"]/phi[@xml:lang="no"][following-sibling::*[position()=4]][not(child::node())][following-sibling::beta[@xml:id="id4"][not(child::node())][following-sibling::phi[following-sibling::*[position()=2]][not(child::node())][following-sibling::chi[@xml:id="id5"][preceding-sibling::*[position() = 3]][following-sibling::omega[@xml:lang="en-GB"][not(following-sibling::*)]/pi[starts-with(@or,"_bl")][@xml:id="id6"][not(following-sibling::*)]//pi[contains(@title,"rue")][not(preceding-sibling::*)]/eta[@xml:lang="en-GB"][@xml:id="id7"]/omega[@xml:lang="en-GB"][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]/kappa[not(following-sibling::*)]/lambda[@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)]//delta[starts-with(concat(@src,"-"),"true-")][@xml:lang="no-nb"][@xml:id="id10"][following-sibling::*[position()=1]][not(child::node())][following-sibling::*[contains(@attrib,"t")][@xml:id="id11"][not(following-sibling::*)]//theta[@xml:id="id12"][not(preceding-sibling::*)][not(following-sibling::*)]]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<epsilon xml:id="id1">
<alpha string="attribute" xml:id="id2"/>
<omicron xml:id="id3">
<phi xml:lang="no"/>
<beta xml:id="id4"/>
<phi/>
<chi xml:id="id5"/>
<omega xml:lang="en-GB">
<pi or="_blank" xml:id="id6">
<pi title="true">
<eta xml:lang="en-GB" xml:id="id7">
<omega xml:lang="en-GB" xml:id="id8">
<kappa>
<lambda xml:id="id9">
<delta src="true" xml:lang="no-nb" xml:id="id10"/>
<any attrib="content" xml:id="id11">
<theta xml:id="id12">
<green>This text must be green</green>
</theta>
</any>
</lambda>
</kappa>
</omega>
</eta>
</pi>
</pi>
</omega>
</omicron>
</epsilon>
</tree>
</test>
<test>
<xpath>//phi[@xml:id="id1"]//mu[@object][@xml:lang="en"][not(following-sibling::*)]/mu[@xml:lang="en"][not(following-sibling::*)]/sigma[@xml:lang="no"][not(preceding-sibling::*)]//kappa[@desciption][@xml:lang="en-GB"][@xml:id="id2"][not(child::node())][following-sibling::xi[@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 1]][following-sibling::alpha[contains(concat(@and,"$"),"lank$")][@xml:id="id4"]/theta[contains(concat(@true,"$"),"ribute$")][@xml:lang="nb"][@xml:id="id5"][not(following-sibling::*)]//chi[@string="attribute-value"][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=5]][following-sibling::psi[@xml:id="id6"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::sigma[@xml:lang="no-nb"][@xml:id="id7"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=3]][following-sibling::tau[@xml:lang="no-nb"][following-sibling::beta[starts-with(concat(@src,"-"),"false-")][@xml:lang="no-nb"][@xml:id="id8"][following-sibling::*[position()=1]][following-sibling::lambda[@xml:id="id9"][preceding-sibling::*[position() = 5]][not(following-sibling::*)][not(preceding-sibling::lambda)]]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<phi xml:id="id1">
<mu object="attribute value" xml:lang="en">
<mu xml:lang="en">
<sigma xml:lang="no">
<kappa desciption="attribute value" xml:lang="en-GB" xml:id="id2"/>
<xi xml:lang="en-US" xml:id="id3"/>
<alpha and="_blank" xml:id="id4">
<theta true="attribute" xml:lang="nb" xml:id="id5">
<chi string="attribute-value" xml:lang="en-US"/>
<psi xml:id="id6"/>
<sigma xml:lang="no-nb" xml:id="id7"/>
<tau xml:lang="no-nb"/>
<beta src="false" xml:lang="no-nb" xml:id="id8"/>
<lambda xml:id="id9">
<green>This text must be green</green>
</lambda>
</theta>
</alpha>
</sigma>
</mu>
</mu>
</phi>
</tree>
</test>
<test>
<xpath>//rho[@title="true"][@xml:lang="nb"][@xml:id="id1"]//phi[contains(concat(@false,"$"),"-value$")][@xml:id="id2"][not(following-sibling::*)]//chi[starts-with(@title,"_bl")][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::psi[@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 1]][following-sibling::kappa[@attr][@xml:id="id4"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//eta[starts-with(@desciption,"fal")][@xml:id="id5"]/upsilon[starts-with(concat(@class,"-"),"another attribute value-")][@xml:lang="en"][following-sibling::zeta[contains(@data,"ute value")][@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::pi[preceding-sibling::*[position() = 2]]//lambda[@xml:lang="en-US"][@xml:id="id7"][not(child::node())][following-sibling::*[contains(@attrib,"0%")][not(child::node())][following-sibling::beta[@number][@xml:lang="no-nb"][@xml:id="id8"][not(child::node())][following-sibling::nu[@xml:lang="no-nb"][@xml:id="id9"][preceding-sibling::*[position() = 3]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<rho title="true" xml:lang="nb" xml:id="id1">
<phi false="attribute-value" xml:id="id2">
<chi title="_blank" xml:lang="no"/>
<psi xml:lang="en-US" xml:id="id3"/>
<kappa attr="true" xml:id="id4">
<eta desciption="false" xml:id="id5">
<upsilon class="another attribute value" xml:lang="en"/>
<zeta data="another attribute value" xml:lang="en-US" xml:id="id6"/>
<pi>
<lambda xml:lang="en-US" xml:id="id7"/>
<any attrib="100%"/>
<beta number="attribute value" xml:lang="no-nb" xml:id="id8"/>
<nu xml:lang="no-nb" xml:id="id9">
<green>This text must be green</green>
</nu>
</pi>
</eta>
</kappa>
</phi>
</rho>
</tree>
</test>
<test>
<xpath>//delta[contains(@title,"te")][@xml:id="id1"]//upsilon[@content][@xml:id="id2"][following-sibling::pi[@att][@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/chi[following-sibling::mu[@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::mu)]/*[contains(@name,"lue")][not(preceding-sibling::*)]/omega[contains(@desciption,"%")][@xml:lang="en-US"][not(preceding-sibling::*)]/zeta[starts-with(concat(@attrib,"-"),"another attribute value-")][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::pi[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//phi[starts-with(concat(@data,"-"),"attribute value-")][@xml:lang="nb"][@xml:id="id6"][following-sibling::*[@class][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//kappa[@attr="another attribute value"][@xml:lang="en"][@xml:id="id7"]/xi[starts-with(concat(@src,"-"),"this.nodeValue-")][@xml:lang="en"][@xml:id="id8"][not(preceding-sibling::*)]//zeta[contains(@attribute,"se")][@xml:id="id9"][not(preceding-sibling::*)][not(child::node())][following-sibling::delta[@title="attribute"][@xml:lang="en"][@xml:id="id10"]/theta[starts-with(@content,"at")][@xml:id="id11"][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@xml:lang="nb"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<delta title="attribute" xml:id="id1">
<upsilon content="attribute" xml:id="id2"/>
<pi att="attribute value" xml:lang="en-US" xml:id="id3">
<chi/>
<mu xml:id="id4">
<any name="this-is-att-value">
<omega desciption="100%" xml:lang="en-US">
<zeta attrib="another attribute value" xml:id="id5"/>
<pi xml:lang="en-US">
<phi data="attribute value" xml:lang="nb" xml:id="id6"/>
<any class="_blank" xml:lang="en">
<kappa attr="another attribute value" xml:lang="en" xml:id="id7">
<xi src="this.nodeValue" xml:lang="en" xml:id="id8">
<zeta attribute="false" xml:id="id9"/>
<delta title="attribute" xml:lang="en" xml:id="id10">
<theta content="attribute-value" xml:id="id11"/>
<psi xml:lang="nb">
<green>This text must be green</green>
</psi>
</delta>
</xi>
</kappa>
</any>
</pi>
</omega>
</any>
</mu>
</pi>
</delta>
</tree>
</test>
<test>
<xpath>//gamma[starts-with(concat(@attribute,"-"),"content-")][@xml:lang="en"][@xml:id="id1"]/tau[not(following-sibling::*)]/delta[contains(concat(@true,"$"),"reen$")][@xml:lang="en"][following-sibling::beta[@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::sigma[@string][@xml:lang="no"][@xml:id="id3"]/theta[@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::phi[@insert][@xml:lang="no"][not(following-sibling::*)]/rho[@xml:lang="no-nb"][@xml:id="id5"]/kappa[@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]/beta[starts-with(concat(@desciption,"-"),"this.nodeValue-")][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::beta[@att][@xml:id="id7"][preceding-sibling::*[position() = 1]]/rho[@xml:lang="no"][@xml:id="id8"][following-sibling::rho[starts-with(concat(@or,"-"),"false-")]/beta[@xml:lang="no-nb"][@xml:id="id9"][following-sibling::beta[@xml:id="id10"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<gamma attribute="content" xml:lang="en" xml:id="id1">
<tau>
<delta true="solid 1px green" xml:lang="en"/>
<beta xml:id="id2"/>
<sigma string="solid 1px green" xml:lang="no" xml:id="id3">
<theta xml:id="id4"/>
<phi insert="this-is-att-value" xml:lang="no">
<rho xml:lang="no-nb" xml:id="id5">
<kappa xml:id="id6">
<beta desciption="this.nodeValue" xml:lang="en-US"/>
<beta att="attribute-value" xml:id="id7">
<rho xml:lang="no" xml:id="id8"/>
<rho or="false">
<beta xml:lang="no-nb" xml:id="id9"/>
<beta xml:id="id10">
<green>This text must be green</green>
</beta>
</rho>
</beta>
</kappa>
</rho>
</phi>
</sigma>
</tau>
</gamma>
</tree>
</test>
<test>
<xpath>//rho[@xml:lang="no-nb"]//kappa[contains(@token,"1234567")][@xml:lang="en-GB"][not(preceding-sibling::*)]/alpha[@xml:lang="en"][not(following-sibling::*)]//epsilon[starts-with(@data,"tr")][@xml:lang="nb"][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[starts-with(concat(@and,"-"),"false-")][@xml:lang="en-US"][following-sibling::upsilon[not(following-sibling::*)]]]</xpath>
<tree>
<rho xml:lang="no-nb">
<kappa token="123456789" xml:lang="en-GB">
<alpha xml:lang="en">
<epsilon data="true" xml:lang="nb" xml:id="id1"/>
<nu and="false" xml:lang="en-US"/>
<upsilon>
<green>This text must be green</green>
</upsilon>
</alpha>
</kappa>
</rho>
</tree>
</test>
<test>
<xpath>//omicron[starts-with(concat(@src,"-"),"solid 1px green-")]//*[@xml:lang="en"][@xml:id="id1"][not(preceding-sibling::*)]//iota[@xml:lang="no-nb"]/phi[starts-with(concat(@src,"-"),"this.nodeValue-")][@xml:id="id2"][not(child::node())][following-sibling::theta[@xml:id="id3"][not(following-sibling::*)]//lambda[@class][@xml:lang="en-GB"][not(preceding-sibling::*)]/chi[@object][not(preceding-sibling::*)][not(following-sibling::*)]/*[starts-with(@token,"fa")]//phi[@xml:lang="en-GB"]/rho[contains(concat(@false,"$"),"id 1px green$")][not(following-sibling::rho)]/phi[@insert="another attribute value"][@xml:lang="no"][@xml:id="id4"][following-sibling::lambda[preceding-sibling::*[position() = 1]][following-sibling::lambda[@xml:lang="nb"][following-sibling::mu[@xml:id="id5"][preceding-sibling::*[position() = 3]]//lambda[starts-with(concat(@src,"-"),"false-")][@xml:lang="no"][@xml:id="id6"][not(child::node())][following-sibling::chi[@xml:lang="no-nb"][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::rho[@xml:lang="en"][@xml:id="id8"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/nu[contains(concat(@string,"$"),"ttribute$")][@xml:id="id9"][not(child::node())][following-sibling::theta[contains(@true,"attribute-v")][@xml:id="id10"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::nu[preceding-sibling::*[position() = 2]][not(following-sibling::*)]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<omicron src="solid 1px green">
<any xml:lang="en" xml:id="id1">
<iota xml:lang="no-nb">
<phi src="this.nodeValue" xml:id="id2"/>
<theta xml:id="id3">
<lambda class="100%" xml:lang="en-GB">
<chi object="false">
<any token="false">
<phi xml:lang="en-GB">
<rho false="solid 1px green">
<phi insert="another attribute value" xml:lang="no" xml:id="id4"/>
<lambda/>
<lambda xml:lang="nb"/>
<mu xml:id="id5">
<lambda src="false" xml:lang="no" xml:id="id6"/>
<chi xml:lang="no-nb" xml:id="id7"/>
<rho xml:lang="en" xml:id="id8">
<nu string="attribute" xml:id="id9"/>
<theta true="attribute-value" xml:id="id10"/>
<nu>
<green>This text must be green</green>
</nu>
</rho>
</mu>
</rho>
</phi>
</any>
</chi>
</lambda>
</theta>
</iota>
</any>
</omicron>
</tree>
</test>
<test>
<xpath>//theta[@xml:lang="en-GB"][@xml:id="id1"]/omega[starts-with(@string,"c")][following-sibling::alpha[@desciption][@xml:lang="en"][@xml:id="id2"]/lambda[starts-with(concat(@number,"-"),"123456789-")][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[preceding-sibling::*[position() = 1]][not(following-sibling::*)]//mu[@xml:lang="no-nb"][@xml:id="id4"][following-sibling::alpha[@delete][preceding-sibling::*[position() = 1]][following-sibling::beta[contains(@abort,"bute valu")][@xml:lang="nb"][@xml:id="id5"][following-sibling::xi[contains(concat(@class,"$"),"_blank$")][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/chi[@xml:id="id6"]]]]][position() = 1]]</xpath>
<tree>
<theta xml:lang="en-GB" xml:id="id1">
<omega string="content"/>
<alpha desciption="another attribute value" xml:lang="en" xml:id="id2">
<lambda number="123456789" xml:id="id3"/>
<theta>
<mu xml:lang="no-nb" xml:id="id4"/>
<alpha delete="this-is-att-value"/>
<beta abort="another attribute value" xml:lang="nb" xml:id="id5"/>
<xi class="_blank">
<chi xml:id="id6">
<green>This text must be green</green>
</chi>
</xi>
</theta>
</alpha>
</theta>
</tree>
</test>
<test>
<xpath>//zeta[starts-with(concat(@content,"-"),"true-")][@xml:lang="en-GB"][@xml:id="id1"]//theta[@xml:lang="en-US"][@xml:id="id2"][not(child::node())][following-sibling::iota[preceding-sibling::*[position() = 1]]//rho[@xml:lang="en"][@xml:id="id3"][following-sibling::upsilon[contains(@desciption,"is-is-att-valu")][preceding-sibling::*[position() = 1]]//rho[@name][@xml:lang="en-GB"][@xml:id="id4"][not(child::node())][following-sibling::pi[@string][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/omega[@xml:lang="nb"][following-sibling::epsilon[@xml:lang="en-US"]]][position() = 1]]]</xpath>
<tree>
<zeta content="true" xml:lang="en-GB" xml:id="id1">
<theta xml:lang="en-US" xml:id="id2"/>
<iota>
<rho xml:lang="en" xml:id="id3"/>
<upsilon desciption="this-is-att-value">
<rho name="content" xml:lang="en-GB" xml:id="id4"/>
<pi string="123456789">
<omega xml:lang="nb"/>
<epsilon xml:lang="en-US">
<green>This text must be green</green>
</epsilon>
</pi>
</upsilon>
</iota>
</zeta>
</tree>
</test>
<test>
<xpath>//gamma[@xml:id="id1"]/theta[@xml:id="id2"][not(following-sibling::*)]//eta[contains(concat(@string,"$"),"00%$")][following-sibling::omega[starts-with(concat(@abort,"-"),"attribute-")][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::sigma[@class][preceding-sibling::*[position() = 2]]//iota[@abort="this.nodeValue"][@xml:lang="en"][not(preceding-sibling::*)]/mu[starts-with(@insert,"attr")][@xml:lang="en-US"][following-sibling::omicron[@attr="_blank"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::theta[not(child::node())][following-sibling::omega[@data="100%"][@xml:lang="no-nb"]//omega[@xml:lang="nb"][@xml:id="id4"]//xi[@xml:lang="en"][not(preceding-sibling::*)][not(preceding-sibling::xi)][not(child::node())][following-sibling::omega[starts-with(@abort,"100%")][preceding-sibling::*[position() = 1]]/tau[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::zeta[starts-with(@delete,"solid")][@xml:id="id5"][preceding-sibling::*[position() = 1]]/pi[@desciption="solid 1px green"][not(following-sibling::*)]/beta[@attribute="solid 1px green"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::xi[@xml:lang="nb"][following-sibling::iota[contains(@true,"true")][preceding-sibling::*[position() = 2]]//psi[contains(@delete,"ttribu")][not(preceding-sibling::*)][not(following-sibling::*)]//nu[not(preceding-sibling::*)][following-sibling::chi[@attr="attribute value"][following-sibling::iota[@xml:id="id7"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]]]]][position() = 1]]]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<gamma xml:id="id1">
<theta xml:id="id2">
<eta string="100%"/>
<omega abort="attribute-value" xml:id="id3"/>
<sigma class="another attribute value">
<iota abort="this.nodeValue" xml:lang="en">
<mu insert="attribute" xml:lang="en-US"/>
<omicron attr="_blank"/>
<theta/>
<omega data="100%" xml:lang="no-nb">
<omega xml:lang="nb" xml:id="id4">
<xi xml:lang="en"/>
<omega abort="100%">
<tau xml:lang="nb"/>
<zeta delete="solid 1px green" xml:id="id5">
<pi desciption="solid 1px green">
<beta attribute="solid 1px green" xml:id="id6"/>
<xi xml:lang="nb"/>
<iota true="true">
<psi delete="attribute-value">
<nu/>
<chi attr="attribute value"/>
<iota xml:id="id7">
<green>This text must be green</green>
</iota>
</psi>
</iota>
</pi>
</zeta>
</omega>
</omega>
</omega>
</iota>
</sigma>
</theta>
</gamma>
</tree>
</test>
<test>
<xpath>//*[starts-with(@number,"conten")][@xml:lang="nb"]/iota[@attr="123456789"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@data="attribute-value"][@xml:lang="no-nb"][not(child::node())][following-sibling::rho[@xml:lang="no-nb"][preceding-sibling::*[position() = 2]]/nu[@xml:lang="no-nb"][not(preceding-sibling::*)]/psi[@xml:lang="en-US"][@xml:id="id1"][position() = 1]][position() = 1]]</xpath>
<tree>
<any number="content" xml:lang="nb">
<iota attr="123456789"/>
<tau data="attribute-value" xml:lang="no-nb"/>
<rho xml:lang="no-nb">
<nu xml:lang="no-nb">
<psi xml:lang="en-US" xml:id="id1">
<green>This text must be green</green>
</psi>
</nu>
</rho>
</any>
</tree>
</test>
<test>
<xpath>//upsilon[@xml:lang="en"]/theta[not(following-sibling::*)]//nu[@delete][@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::zeta[starts-with(@string,"_bl")][preceding-sibling::*[position() = 1]]/mu[@xml:id="id1"][not(preceding-sibling::*)]/beta[@xml:id="id2"]//upsilon[@xml:id="id3"][not(following-sibling::*)]/chi[contains(concat(@abort,"$"),"tribute-value$")][@xml:lang="en-GB"][@xml:id="id4"]/delta[@number][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[not(following-sibling::*)]//epsilon[@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[@xml:lang="no"][preceding-sibling::*[position() = 1]]/tau[@xml:id="id6"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[@content][@xml:lang="en"][preceding-sibling::*[position() = 1]]//zeta[@and][@xml:id="id7"][following-sibling::mu[@insert="solid 1px green"][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/xi[starts-with(@object,"10")][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]][position() = 1]]]]</xpath>
<tree>
<upsilon xml:lang="en">
<theta>
<nu delete="attribute-value" xml:lang="no-nb"/>
<zeta string="_blank">
<mu xml:id="id1">
<beta xml:id="id2">
<upsilon xml:id="id3">
<chi abort="attribute-value" xml:lang="en-GB" xml:id="id4">
<delta number="content"/>
<nu>
<epsilon xml:id="id5"/>
<nu xml:lang="no">
<tau xml:id="id6"/>
<theta content="content" xml:lang="en">
<zeta and="content" xml:id="id7"/>
<mu insert="solid 1px green" xml:lang="en">
<xi object="100%">
<green>This text must be green</green>
</xi>
</mu>
</theta>
</nu>
</nu>
</chi>
</upsilon>
</beta>
</mu>
</zeta>
</theta>
</upsilon>
</tree>
</test>
<test>
<xpath>//phi[@xml:lang="en"][@xml:id="id1"]//omicron[not(preceding-sibling::*)][not(following-sibling::*)]//theta[@xml:lang="no-nb"]/delta[@xml:id="id2"]/phi[starts-with(@or,"another attribute value")][@xml:lang="en"][not(preceding-sibling::*)][not(child::node())][following-sibling::chi[@xml:lang="en-GB"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::omega[@xml:lang="no"][@xml:id="id4"][not(child::node())][following-sibling::rho[@xml:id="id5"][preceding-sibling::*[position() = 3]][not(preceding-sibling::rho)][following-sibling::upsilon[@xml:id="id6"][following-sibling::*[position()=1]][following-sibling::omicron[contains(concat(@attr,"$"),"ttribute value$")][@xml:lang="en-US"]//phi[@xml:id="id7"][following-sibling::*[position()=3]][not(child::node())][following-sibling::gamma[@name][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::gamma[contains(@data,"ank")][@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::upsilon[not(following-sibling::*)]//tau[@xml:lang="en-GB"][not(preceding-sibling::*)]/chi[following-sibling::*[position()=1]][not(child::node())][following-sibling::pi[contains(@or,"blank")][@xml:lang="nb"]]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<phi xml:lang="en" xml:id="id1">
<omicron>
<theta xml:lang="no-nb">
<delta xml:id="id2">
<phi or="another attribute value" xml:lang="en"/>
<chi xml:lang="en-GB" xml:id="id3"/>
<omega xml:lang="no" xml:id="id4"/>
<rho xml:id="id5"/>
<upsilon xml:id="id6"/>
<omicron attr="attribute value" xml:lang="en-US">
<phi xml:id="id7"/>
<gamma name="this.nodeValue" xml:lang="en"/>
<gamma data="_blank" xml:lang="en-GB"/>
<upsilon>
<tau xml:lang="en-GB">
<chi/>
<pi or="_blank" xml:lang="nb">
<green>This text must be green</green>
</pi>
</tau>
</upsilon>
</omicron>
</delta>
</theta>
</omicron>
</phi>
</tree>
</test>
<test>
<xpath>//theta[starts-with(concat(@delete,"-"),"another attribute value-")][@xml:lang="en"][@xml:id="id1"]//psi//beta[not(preceding-sibling::*)]/delta[not(preceding-sibling::*)]//lambda[starts-with(@class,"1")][not(preceding-sibling::*)][not(following-sibling::*)]/alpha[contains(concat(@false,"$"),"e$")][@xml:id="id2"][not(preceding-sibling::*)]//omega[@name][@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::iota[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::iota[contains(concat(@content,"$"),"attribute$")][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//psi[@name="attribute"][@xml:id="id3"]//theta[contains(@or,"0%")]/xi[@xml:lang="no-nb"][@xml:id="id4"]//kappa[@xml:lang="en-US"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/chi[contains(@or,"solid 1px gre")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::chi)]/theta[@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::theta[@xml:lang="en"][preceding-sibling::*[position() = 1]]/psi[@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]//rho[contains(concat(@attrib,"$"),"e$")][@xml:id="id7"][not(following-sibling::*)]/tau[@xml:lang="no-nb"]/beta[@xml:id="id8"][following-sibling::omega[contains(concat(@data,"$"),"lue$")][preceding-sibling::*[position() = 1]][following-sibling::epsilon[@xml:lang="en-US"][@xml:id="id9"]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<theta delete="another attribute value" xml:lang="en" xml:id="id1">
<psi>
<beta>
<delta>
<lambda class="100%">
<alpha false="true" xml:id="id2">
<omega name="true" xml:lang="no"/>
<iota/>
<iota content="attribute">
<psi name="attribute" xml:id="id3">
<theta or="100%">
<xi xml:lang="no-nb" xml:id="id4">
<kappa xml:lang="en-US" xml:id="id5">
<chi or="solid 1px green" xml:lang="en-GB">
<theta xml:lang="nb"/>
<theta xml:lang="en">
<psi xml:id="id6">
<rho attrib="attribute value" xml:id="id7">
<tau xml:lang="no-nb">
<beta xml:id="id8"/>
<omega data="this.nodeValue"/>
<epsilon xml:lang="en-US" xml:id="id9">
<green>This text must be green</green>
</epsilon>
</tau>
</rho>
</psi>
</theta>
</chi>
</kappa>
</xi>
</theta>
</psi>
</iota>
</alpha>
</lambda>
</delta>
</beta>
</psi>
</theta>
</tree>
</test>
<test>
<xpath>//eta[contains(@number,"deValue")][@xml:id="id1"]/delta[contains(@content,"ue")][@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::alpha[contains(@attrib,"0%")][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::eta[@xml:lang="en"][@xml:id="id3"][not(following-sibling::*)]/tau[@attr="attribute value"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::eta/lambda[@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//iota[not(preceding-sibling::*)][position() = 1]]]]</xpath>
<tree>
<eta number="this.nodeValue" xml:id="id1">
<delta content="true" xml:lang="no" xml:id="id2"/>
<alpha attrib="100%"/>
<eta xml:lang="en" xml:id="id3">
<tau attr="attribute value" xml:id="id4"/>
<eta>
<lambda xml:id="id5">
<iota>
<green>This text must be green</green>
</iota>
</lambda>
</eta>
</eta>
</eta>
</tree>
</test>
<test>
<xpath>//kappa[@attr]/gamma[contains(concat(@content,"$"),"tribute value$")][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//tau[starts-with(@att,"f")]/xi[@token][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::psi[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::xi[@src][preceding-sibling::*[position() = 2]][not(following-sibling::xi)]/kappa[@and][@xml:lang="en-GB"][not(child::node())][following-sibling::upsilon[@xml:lang="en"]//rho[@att="another attribute value"][@xml:lang="en"][not(preceding-sibling::*)]/beta[not(preceding-sibling::*)][not(following-sibling::*)]//nu[not(preceding-sibling::*)][not(child::node())][following-sibling::mu[@att][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//*[@xml:lang="en-US"][not(preceding-sibling::*)]/mu[@xml:id="id3"]/delta[@object][@xml:lang="en-GB"][not(following-sibling::*)]//gamma[starts-with(@attr,"attribu")][following-sibling::iota[@xml:id="id4"][following-sibling::phi[@or][@xml:id="id5"][not(following-sibling::*)]//sigma[not(preceding-sibling::*)][following-sibling::kappa[@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::lambda[preceding-sibling::*[position() = 2]][not(following-sibling::*)]//kappa[@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::upsilon[contains(@data,"b")][@xml:lang="en-US"][@xml:id="id6"][not(child::node())][following-sibling::tau[@and="100%"][@xml:id="id7"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]]][position() = 1]][position() = 1]]]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<kappa attr="this-is-att-value">
<gamma content="attribute value" xml:id="id1">
<tau att="false">
<xi token="attribute" xml:lang="en-GB"/>
<psi xml:id="id2"/>
<xi src="another attribute value">
<kappa and="solid 1px green" xml:lang="en-GB"/>
<upsilon xml:lang="en">
<rho att="another attribute value" xml:lang="en">
<beta>
<nu/>
<mu att="attribute" xml:lang="en-US">
<any xml:lang="en-US">
<mu xml:id="id3">
<delta object="attribute" xml:lang="en-GB">
<gamma attr="attribute-value"/>
<iota xml:id="id4"/>
<phi or="attribute value" xml:id="id5">
<sigma/>
<kappa xml:lang="nb"/>
<lambda>
<kappa xml:lang="en-GB"/>
<upsilon data="attribute-value" xml:lang="en-US" xml:id="id6"/>
<tau and="100%" xml:id="id7">
<green>This text must be green</green>
</tau>
</lambda>
</phi>
</delta>
</mu>
</any>
</mu>
</beta>
</rho>
</upsilon>
</xi>
</tau>
</gamma>
</kappa>
</tree>
</test>
<test>
<xpath>//kappa[@xml:lang="no"]/beta[@false="solid 1px green"][@xml:lang="en-GB"][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::omicron[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/tau[contains(concat(@string,"$"),"tent$")][@xml:lang="en-GB"][not(preceding-sibling::*)]/nu[@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//mu[@abort][@xml:lang="nb"][following-sibling::*[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/chi[not(following-sibling::*)]/delta[@name="this-is-att-value"][@xml:lang="no-nb"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/mu[@insert][@xml:lang="nb"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/kappa[contains(@number,"n")][@xml:id="id5"][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[@xml:id="id6"]/*[@xml:lang="en"]//upsilon[contains(concat(@delete,"$"),"ntent$")][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::phi[@xml:id="id8"][not(following-sibling::*)]//omega[@object="false"][following-sibling::*[position()=1]][following-sibling::kappa[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/pi[contains(concat(@title,"$"),"nodeValue$")][@xml:id="id9"][not(following-sibling::*)]//beta[starts-with(@title,"th")][not(preceding-sibling::*)][not(preceding-sibling::beta)][not(child::node())][following-sibling::rho[@xml:lang="no"][@xml:id="id10"][preceding-sibling::*[position() = 1]]//upsilon[@token][@xml:id="id11"]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<kappa xml:lang="no">
<beta false="solid 1px green" xml:lang="en-GB" xml:id="id1"/>
<omicron>
<tau string="content" xml:lang="en-GB">
<nu xml:lang="nb" xml:id="id2">
<mu abort="attribute value" xml:lang="nb"/>
<any>
<chi>
<delta name="this-is-att-value" xml:lang="no-nb" xml:id="id3">
<mu insert="attribute" xml:lang="nb" xml:id="id4">
<kappa number="solid 1px green" xml:id="id5"/>
<theta xml:id="id6">
<any xml:lang="en">
<upsilon delete="content" xml:id="id7"/>
<phi xml:id="id8">
<omega object="false"/>
<kappa xml:lang="en-US">
<pi title="this.nodeValue" xml:id="id9">
<beta title="this-is-att-value"/>
<rho xml:lang="no" xml:id="id10">
<upsilon token="this.nodeValue" xml:id="id11">
<green>This text must be green</green>
</upsilon>
</rho>
</pi>
</kappa>
</phi>
</any>
</theta>
</mu>
</delta>
</chi>
</any>
</nu>
</tau>
</omicron>
</kappa>
</tree>
</test>
<test>
<xpath>//gamma[@attribute][@xml:lang="no-nb"]/omega[not(preceding-sibling::*)]//xi[@xml:lang="en"][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(preceding-sibling::xi)][following-sibling::rho[contains(concat(@attribute,"$"),"e$")][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::tau/omicron[@true][@xml:lang="no"][not(following-sibling::*)]//pi[starts-with(concat(@attr,"-"),"content-")][@xml:lang="nb"][not(following-sibling::*)]][position() = 1]]</xpath>
<tree>
<gamma attribute="100%" xml:lang="no-nb">
<omega>
<xi xml:lang="en" xml:id="id1"/>
<rho attribute="false"/>
<tau>
<omicron true="content" xml:lang="no">
<pi attr="content" xml:lang="nb">
<green>This text must be green</green>
</pi>
</omicron>
</tau>
</omega>
</gamma>
</tree>
</test>
<test>
<xpath>//tau[@xml:lang="no-nb"]/psi[not(preceding-sibling::*)]//epsilon[not(preceding-sibling::*)][not(following-sibling::*)]//rho[starts-with(concat(@or,"-"),"100%-")][following-sibling::alpha[contains(@object,"green")][@xml:lang="en-GB"][not(child::node())][following-sibling::beta[@xml:id="id1"][preceding-sibling::*[position() = 2]][following-sibling::omega[@xml:id="id2"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::omicron[@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]/omega[contains(@data,"e val")][@xml:lang="en"]//alpha[contains(concat(@desciption,"$"),"9$")]//rho[@xml:lang="no-nb"][@xml:id="id4"][following-sibling::*[position()=1]][following-sibling::mu[starts-with(@data,"attribute valu")][@xml:lang="en-US"][@xml:id="id5"]//delta[starts-with(@content,"thi")][not(following-sibling::*)]//omega[@desciption][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::eta[@data][not(child::node())][following-sibling::phi/kappa[starts-with(concat(@desciption,"-"),"this-")][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::mu[contains(@string,"a")][@xml:id="id7"][preceding-sibling::*[position() = 1]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<tau xml:lang="no-nb">
<psi>
<epsilon>
<rho or="100%"/>
<alpha object="solid 1px green" xml:lang="en-GB"/>
<beta xml:id="id1"/>
<omega xml:id="id2"/>
<omicron xml:lang="en-US" xml:id="id3">
<omega data="attribute value" xml:lang="en">
<alpha desciption="123456789">
<rho xml:lang="no-nb" xml:id="id4"/>
<mu data="attribute value" xml:lang="en-US" xml:id="id5">
<delta content="this-is-att-value">
<omega desciption="this.nodeValue"/>
<eta data="100%"/>
<phi>
<kappa desciption="this-is-att-value" xml:id="id6"/>
<mu string="another attribute value" xml:id="id7">
<green>This text must be green</green>
</mu>
</phi>
</delta>
</mu>
</alpha>
</omega>
</omicron>
</epsilon>
</psi>
</tau>
</tree>
</test>
<test>
<xpath>//delta[starts-with(concat(@name,"-"),"content-")][@xml:lang="en-US"]/alpha[contains(@number,"a")][@xml:id="id1"][following-sibling::*[position()=1]][following-sibling::lambda[@object][preceding-sibling::*[position() = 1]]//chi[@and][@xml:id="id2"][not(preceding-sibling::*)]//alpha[@xml:id="id3"][not(preceding-sibling::*)]//xi[@true][@xml:id="id4"][not(child::node())][following-sibling::pi[@false][preceding-sibling::*[position() = 1]]/rho[@xml:id="id5"][not(child::node())][following-sibling::psi[starts-with(@title,"12345678")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]]]]</xpath>
<tree>
<delta name="content" xml:lang="en-US">
<alpha number="false" xml:id="id1"/>
<lambda object="attribute-value">
<chi and="content" xml:id="id2">
<alpha xml:id="id3">
<xi true="content" xml:id="id4"/>
<pi false="123456789">
<rho xml:id="id5"/>
<psi title="123456789">
<green>This text must be green</green>
</psi>
</pi>
</alpha>
</chi>
</lambda>
</delta>
</tree>
</test>
<test>
<xpath>//omicron[@xml:lang="en-GB"][@xml:id="id1"]//pi[contains(@att,"e")][@xml:lang="no"][@xml:id="id2"][not(following-sibling::pi)][following-sibling::eta[@attrib="false"][@xml:lang="no-nb"][@xml:id="id3"][following-sibling::eta[@xml:lang="no"][not(child::node())][following-sibling::theta[@xml:lang="no-nb"][@xml:id="id4"][preceding-sibling::*[position() = 3]][following-sibling::theta/gamma[@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@name][@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(preceding-sibling::omicron or following-sibling::omicron)][following-sibling::kappa[@name][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/delta[not(following-sibling::*)]/pi[@attribute="true"][@xml:lang="en"][@xml:id="id6"][not(preceding-sibling::*)]/beta[@xml:lang="en-GB"][@xml:id="id7"][not(following-sibling::*)]/lambda[@title="content"][@xml:id="id8"][following-sibling::epsilon[@abort="attribute value"][not(following-sibling::*)]//epsilon[@data="this.nodeValue"][@xml:id="id9"][not(preceding-sibling::*)][following-sibling::omicron[@xml:lang="en"][@xml:id="id10"][not(child::node())][following-sibling::omicron[@xml:id="id11"]/kappa[contains(@title,"lue")][@xml:id="id12"][not(preceding-sibling::*)][following-sibling::phi[@xml:lang="no-nb"][not(preceding-sibling::phi)][not(child::node())][following-sibling::beta[contains(concat(@string,"$"),"ue$")][@xml:id="id13"][following-sibling::*[position()=1]][following-sibling::zeta[starts-with(concat(@src,"-"),"attribute-")][@xml:lang="en-US"][@xml:id="id14"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]][position() = 1]]]][position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<omicron xml:lang="en-GB" xml:id="id1">
<pi att="true" xml:lang="no" xml:id="id2"/>
<eta attrib="false" xml:lang="no-nb" xml:id="id3"/>
<eta xml:lang="no"/>
<theta xml:lang="no-nb" xml:id="id4"/>
<theta>
<gamma xml:id="id5"/>
<omicron name="true" xml:lang="en-GB"/>
<kappa name="attribute">
<delta>
<pi attribute="true" xml:lang="en" xml:id="id6">
<beta xml:lang="en-GB" xml:id="id7">
<lambda title="content" xml:id="id8"/>
<epsilon abort="attribute value">
<epsilon data="this.nodeValue" xml:id="id9"/>
<omicron xml:lang="en" xml:id="id10"/>
<omicron xml:id="id11">
<kappa title="attribute value" xml:id="id12"/>
<phi xml:lang="no-nb"/>
<beta string="attribute value" xml:id="id13"/>
<zeta src="attribute" xml:lang="en-US" xml:id="id14">
<green>This text must be green</green>
</zeta>
</omicron>
</epsilon>
</beta>
</pi>
</delta>
</kappa>
</theta>
</omicron>
</tree>
</test>
<test>
<xpath>//epsilon[contains(concat(@attr,"$"),"reen$")][@xml:lang="en-GB"]//phi[not(preceding-sibling::*)][following-sibling::*[position()=1]][not(preceding-sibling::phi)][not(child::node())][following-sibling::lambda[starts-with(@insert,"another attribute ")][@xml:lang="en"][preceding-sibling::*[position() = 1]]//iota[contains(@or,"bute-value")][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::mu[preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::iota[@xml:id="id2"]/kappa[@attr]/kappa[@xml:id="id3"][not(child::node())][following-sibling::eta[starts-with(concat(@true,"-"),"this.nodeValue-")][@xml:id="id4"][following-sibling::*[position()=2]][following-sibling::chi[@string][preceding-sibling::*[position() = 2]][not(preceding-sibling::chi)][following-sibling::theta[@xml:id="id5"][preceding-sibling::*[position() = 3]]//omicron[@insert][@xml:lang="en-US"][@xml:id="id6"][not(child::node())][following-sibling::psi[@xml:id="id7"][preceding-sibling::*[position() = 1]]//*[@xml:lang="no-nb"][not(following-sibling::*)]//tau[@xml:lang="en-GB"][@xml:id="id8"][not(preceding-sibling::*)]/sigma[contains(concat(@false,"$"),"value$")][@xml:lang="en-GB"]//alpha[@class][not(child::node())][following-sibling::mu[contains(concat(@attrib,"$"),"blank$")][@xml:lang="no"][@xml:id="id9"][not(child::node())][following-sibling::tau[@xml:id="id10"][not(following-sibling::*)]/theta[starts-with(@attr,"attrib")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//*[@xml:lang="en-US"][not(child::node())][following-sibling::gamma[@content][@xml:id="id11"][preceding-sibling::*[position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<epsilon attr="solid 1px green" xml:lang="en-GB">
<phi/>
<lambda insert="another attribute value" xml:lang="en">
<iota or="attribute-value" xml:id="id1"/>
<mu/>
<iota xml:id="id2">
<kappa attr="content">
<kappa xml:id="id3"/>
<eta true="this.nodeValue" xml:id="id4"/>
<chi string="100%"/>
<theta xml:id="id5">
<omicron insert="this-is-att-value" xml:lang="en-US" xml:id="id6"/>
<psi xml:id="id7">
<any xml:lang="no-nb">
<tau xml:lang="en-GB" xml:id="id8">
<sigma false="attribute-value" xml:lang="en-GB">
<alpha class="attribute"/>
<mu attrib="_blank" xml:lang="no" xml:id="id9"/>
<tau xml:id="id10">
<theta attr="attribute value" xml:lang="no-nb">
<any xml:lang="en-US"/>
<gamma content="solid 1px green" xml:id="id11">
<green>This text must be green</green>
</gamma>
</theta>
</tau>
</sigma>
</tau>
</any>
</psi>
</theta>
</kappa>
</iota>
</lambda>
</epsilon>
</tree>
</test>
<test>
<xpath>//rho[@xml:lang="nb"][@xml:id="id1"]//omicron[starts-with(@token,"1")][following-sibling::theta[contains(concat(@content,"$")," value$")][@xml:lang="en"]/beta[@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@xml:id="id3"][not(following-sibling::*)]//mu[@xml:lang="en-GB"][not(preceding-sibling::*)]/delta[@xml:lang="en"][not(preceding-sibling::*)]/beta[starts-with(concat(@attribute,"-"),"this-")][@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::mu[not(child::node())][following-sibling::gamma[@xml:lang="en-US"][not(following-sibling::*)]//iota[@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::beta[@content="true"][preceding-sibling::*[position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<rho xml:lang="nb" xml:id="id1">
<omicron token="123456789"/>
<theta content="another attribute value" xml:lang="en">
<beta xml:lang="en-US" xml:id="id2"/>
<tau xml:id="id3">
<mu xml:lang="en-GB">
<delta xml:lang="en">
<beta attribute="this-is-att-value" xml:lang="en-US" xml:id="id4"/>
<mu/>
<gamma xml:lang="en-US">
<iota xml:id="id5"/>
<beta content="true">
<green>This text must be green</green>
</beta>
</gamma>
</delta>
</mu>
</tau>
</theta>
</rho>
</tree>
</test>
<test>
<xpath>//alpha[starts-with(@data,"attribute value")][@xml:lang="en-GB"][@xml:id="id1"]//omega[@xml:id="id2"][following-sibling::theta[not(preceding-sibling::theta)]/gamma[@class][@xml:id="id3"][not(preceding-sibling::*)]/beta[contains(@attr,"value")][@xml:lang="en"][not(preceding-sibling::*)]//sigma[contains(concat(@object,"$"),"ttribute value$")][@xml:lang="en"][@xml:id="id4"][following-sibling::*[position()=4]][not(child::node())][following-sibling::omega[@xml:lang="no"][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=3]][following-sibling::omega[contains(@object,"ru")][@xml:lang="no-nb"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][not(child::node())][following-sibling::omega[@xml:lang="en-US"][@xml:id="id6"][following-sibling::upsilon[@xml:lang="en-US"][preceding-sibling::*[position() = 4]]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<alpha data="attribute value" xml:lang="en-GB" xml:id="id1">
<omega xml:id="id2"/>
<theta>
<gamma class="content" xml:id="id3">
<beta attr="this-is-att-value" xml:lang="en">
<sigma object="attribute value" xml:lang="en" xml:id="id4"/>
<omega xml:lang="no" xml:id="id5"/>
<omega object="true" xml:lang="no-nb"/>
<omega xml:lang="en-US" xml:id="id6"/>
<upsilon xml:lang="en-US">
<green>This text must be green</green>
</upsilon>
</beta>
</gamma>
</theta>
</alpha>
</tree>
</test>
<test>
<xpath>//lambda[contains(@object,"u")]//omicron[not(preceding-sibling::*)][following-sibling::gamma[starts-with(concat(@att,"-"),"another attribute value-")][@xml:lang="en-GB"][@xml:id="id1"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//epsilon[starts-with(@or,"attribute-")][@xml:lang="nb"][not(child::node())][following-sibling::pi[@xml:lang="nb"][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::iota[@xml:id="id3"][preceding-sibling::*[position() = 2]]//sigma[@xml:id="id4"][not(following-sibling::*)]/theta[starts-with(@src,"another attri")][@xml:id="id5"][following-sibling::kappa[@xml:id="id6"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[@xml:lang="no-nb"][@xml:id="id7"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::eta[contains(@true,"1")][@xml:lang="en-GB"][@xml:id="id8"][not(child::node())][following-sibling::chi[@xml:id="id9"][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<lambda object="attribute-value">
<omicron/>
<gamma att="another attribute value" xml:lang="en-GB" xml:id="id1">
<epsilon or="attribute-value" xml:lang="nb"/>
<pi xml:lang="nb" xml:id="id2"/>
<iota xml:id="id3">
<sigma xml:id="id4">
<theta src="another attribute value" xml:id="id5"/>
<kappa xml:id="id6"/>
<delta xml:lang="no-nb" xml:id="id7"/>
<eta true="100%" xml:lang="en-GB" xml:id="id8"/>
<chi xml:id="id9">
<green>This text must be green</green>
</chi>
</sigma>
</iota>
</gamma>
</lambda>
</tree>
</test>
<test>
<xpath>//sigma/iota[starts-with(concat(@data,"-"),"solid 1px green-")][@xml:lang="en"]/kappa[@and="false"][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]//psi[@string="solid 1px green"][not(preceding-sibling::*)][not(following-sibling::*)][not(preceding-sibling::psi)]/upsilon[starts-with(concat(@false,"-"),"_blank-")][not(preceding-sibling::*)]//pi[contains(concat(@attribute,"$"),"tent$")][not(following-sibling::*)]/alpha[not(following-sibling::*)]/kappa[starts-with(concat(@false,"-"),"this-")][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@attr="123456789"][@xml:id="id2"][not(following-sibling::*)]/upsilon[contains(@or,"attrib")][@xml:lang="nb"][not(child::node())][following-sibling::delta[@xml:lang="no-nb"][following-sibling::kappa[contains(concat(@name,"$"),"px green$")][@xml:id="id3"][preceding-sibling::*[position() = 2]][following-sibling::rho[@xml:lang="nb"][@xml:id="id4"][not(following-sibling::*)]/gamma[starts-with(@desciption,"_blan")][@xml:lang="no-nb"][@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[following-sibling::epsilon[contains(@attribute,"tribute-value")][@xml:lang="en-US"][@xml:id="id6"][not(following-sibling::*)]//beta[contains(@src,"ue")][@xml:lang="no"][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)][not(preceding-sibling::beta)]//alpha[starts-with(@attr,"fals")][not(preceding-sibling::*)]/mu[following-sibling::gamma[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::pi[preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::iota[@xml:lang="no"][@xml:id="id8"][following-sibling::alpha[contains(@attr,"nodeVa")][@xml:lang="en-US"][@xml:id="id9"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]][position() = 1]]]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<sigma>
<iota data="solid 1px green" xml:lang="en">
<kappa and="false" xml:lang="en-GB">
<psi string="solid 1px green">
<upsilon false="_blank">
<pi attribute="content">
<alpha>
<kappa false="this-is-att-value" xml:id="id1"/>
<xi attr="123456789" xml:id="id2">
<upsilon or="attribute value" xml:lang="nb"/>
<delta xml:lang="no-nb"/>
<kappa name="solid 1px green" xml:id="id3"/>
<rho xml:lang="nb" xml:id="id4">
<gamma desciption="_blank" xml:lang="no-nb" xml:id="id5"/>
<upsilon/>
<epsilon attribute="attribute-value" xml:lang="en-US" xml:id="id6">
<beta src="true" xml:lang="no" xml:id="id7">
<alpha attr="false">
<mu/>
<gamma/>
<pi/>
<iota xml:lang="no" xml:id="id8"/>
<alpha attr="this.nodeValue" xml:lang="en-US" xml:id="id9">
<green>This text must be green</green>
</alpha>
</alpha>
</beta>
</epsilon>
</rho>
</xi>
</alpha>
</pi>
</upsilon>
</psi>
</kappa>
</iota>
</sigma>
</tree>
</test>
<test>
<xpath>//chi[@xml:lang="no"][@xml:id="id1"]//zeta[contains(@data,"another attri")][not(preceding-sibling::*)][not(following-sibling::*)]/sigma[@name][not(preceding-sibling::*)][following-sibling::tau[following-sibling::omicron[@xml:lang="nb"][preceding-sibling::*[position() = 2]][following-sibling::rho[starts-with(concat(@or,"-"),"100%-")][@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 3]][following-sibling::upsilon[preceding-sibling::*[position() = 4]][not(following-sibling::*)]/omega[not(preceding-sibling::*)]//eta[@xml:lang="no"]//theta[@token][@xml:lang="en-US"][not(preceding-sibling::*)][not(following-sibling::*)]/lambda[@xml:lang="en"][@xml:id="id3"][not(following-sibling::*)]/omicron[not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::xi[@xml:lang="en-US"][@xml:id="id4"]/mu[@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//chi[contains(@object,"456789")][not(preceding-sibling::*)][not(following-sibling::*)]/pi[@xml:lang="nb"][not(preceding-sibling::*)]/lambda[@and][@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@xml:lang="no"][not(following-sibling::eta)]/nu[contains(@abort,"attribute value")][not(preceding-sibling::*)][not(following-sibling::*)]/delta[@xml:lang="no"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<chi xml:lang="no" xml:id="id1">
<zeta data="another attribute value">
<sigma name="content"/>
<tau/>
<omicron xml:lang="nb"/>
<rho or="100%" xml:lang="no" xml:id="id2"/>
<upsilon>
<omega>
<eta xml:lang="no">
<theta token="another attribute value" xml:lang="en-US">
<lambda xml:lang="en" xml:id="id3">
<omicron/>
<xi xml:lang="en-US" xml:id="id4">
<mu xml:id="id5">
<chi object="123456789">
<pi xml:lang="nb">
<lambda and="attribute" xml:lang="no"/>
<eta xml:lang="no">
<nu abort="another attribute value">
<delta xml:lang="no">
<green>This text must be green</green>
</delta>
</nu>
</eta>
</pi>
</chi>
</mu>
</xi>
</lambda>
</theta>
</eta>
</omega>
</upsilon>
</zeta>
</chi>
</tree>
</test>
<test>
<xpath>//phi[contains(@abort,"o")]/iota[@xml:id="id1"]/delta[@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/beta[@xml:id="id3"][following-sibling::upsilon[@string][@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::chi[preceding-sibling::*[position() = 2]]//*[@xml:id="id4"][following-sibling::sigma[@xml:lang="no"][@xml:id="id5"]/eta[starts-with(concat(@content,"-"),"attribute value-")][@xml:id="id6"]][position() = 1]][position() = 1]]]</xpath>
<tree>
<phi abort="content">
<iota xml:id="id1">
<delta xml:lang="no"/>
<epsilon xml:id="id2">
<beta xml:id="id3"/>
<upsilon string="attribute-value" xml:lang="en-GB"/>
<chi>
<any xml:id="id4"/>
<sigma xml:lang="no" xml:id="id5">
<eta content="attribute value" xml:id="id6">
<green>This text must be green</green>
</eta>
</sigma>
</chi>
</epsilon>
</iota>
</phi>
</tree>
</test>
<test>
<xpath>//sigma//rho[@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[@xml:id="id1"][preceding-sibling::*[position() = 1]]//nu[@attribute="_blank"][@xml:id="id2"]//tau[@xml:lang="no-nb"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/delta//gamma[starts-with(concat(@content,"-"),"attribute-")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]</xpath>
<tree>
<sigma>
<rho xml:lang="nb"/>
<pi xml:id="id1">
<nu attribute="_blank" xml:id="id2">
<tau xml:lang="no-nb" xml:id="id3">
<delta>
<gamma content="attribute" xml:lang="no-nb">
<green>This text must be green</green>
</gamma>
</delta>
</tau>
</nu>
</pi>
</sigma>
</tree>
</test>
<test>
<xpath>//upsilon[@xml:id="id1"]/nu[starts-with(@content,"f")]//xi[starts-with(@abort,"1")][not(child::node())][following-sibling::mu[@desciption="_blank"][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][following-sibling::*[@xml:lang="nb"][not(child::node())][following-sibling::eta[@xml:lang="no-nb"]][position() = 1]][position() = 1]]</xpath>
<tree>
<upsilon xml:id="id1">
<nu content="false">
<xi abort="123456789"/>
<mu desciption="_blank" xml:lang="en-US"/>
<any xml:lang="nb"/>
<eta xml:lang="no-nb">
<green>This text must be green</green>
</eta>
</nu>
</upsilon>
</tree>
</test>
<test>
<xpath>//zeta[starts-with(concat(@and,"-"),"this-")]/rho[starts-with(concat(@or,"-"),"this-")][@xml:lang="en"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::psi[contains(@and,"ute-value")][@xml:lang="no-nb"][@xml:id="id1"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//epsilon[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//lambda[contains(@src,"lse")][@xml:id="id2"][following-sibling::nu[@xml:id="id3"][not(following-sibling::*)]/sigma[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//theta[@string][@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)]/delta[@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[@token="100%"][@xml:lang="nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/chi[starts-with(concat(@class,"-"),"another attribute value-")][@xml:id="id6"][not(preceding-sibling::*)]//psi[@xml:id="id7"][following-sibling::chi[starts-with(concat(@name,"-"),"attribute-")][@xml:lang="no"][preceding-sibling::*[position() = 1]]/chi[@xml:lang="nb"][not(following-sibling::*)]/rho[@title][not(preceding-sibling::*)]/omicron[@string][@xml:lang="en"][not(following-sibling::*)]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<zeta and="this-is-att-value">
<rho or="this-is-att-value" xml:lang="en"/>
<xi xml:lang="en"/>
<psi and="attribute-value" xml:lang="no-nb" xml:id="id1">
<epsilon xml:lang="no-nb">
<lambda src="false" xml:id="id2"/>
<nu xml:id="id3">
<sigma xml:lang="no-nb">
<theta string="false" xml:lang="no" xml:id="id4">
<delta xml:lang="en-US"/>
<upsilon token="100%" xml:lang="nb" xml:id="id5">
<chi class="another attribute value" xml:id="id6">
<psi xml:id="id7"/>
<chi name="attribute-value" xml:lang="no">
<chi xml:lang="nb">
<rho title="attribute-value">
<omicron string="content" xml:lang="en">
<green>This text must be green</green>
</omicron>
</rho>
</chi>
</chi>
</chi>
</upsilon>
</theta>
</sigma>
</nu>
</epsilon>
</psi>
</zeta>
</tree>
</test>
<test>
<xpath>//pi[@xml:lang="no"][@xml:id="id1"]/gamma[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::chi[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//nu[@xml:id="id2"][not(preceding-sibling::*)]/phi[@xml:lang="no"][@xml:id="id3"][not(child::node())][following-sibling::delta[@class="123456789"][@xml:lang="no-nb"][not(child::node())][following-sibling::rho[@xml:lang="en-US"][not(child::node())][following-sibling::iota[preceding-sibling::*[position() = 3]]/tau[@desciption][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[@xml:lang="en-GB"]/beta[@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][not(preceding-sibling::beta)][not(child::node())][following-sibling::gamma[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::omega[starts-with(concat(@title,"-"),"false-")][@xml:lang="en-GB"][@xml:id="id6"][preceding-sibling::*[position() = 2]][following-sibling::eta[starts-with(concat(@title,"-"),"false-")][@xml:lang="en-GB"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::omicron[@xml:lang="en"][@xml:id="id7"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::tau[@xml:lang="no"][@xml:id="id8"][not(child::node())][following-sibling::gamma[contains(concat(@name,"$"),"value$")][@xml:lang="nb"][preceding-sibling::*[position() = 6]]//lambda[starts-with(@delete,"100%")][@xml:lang="nb"][@xml:id="id9"][not(child::node())][following-sibling::chi[@xml:lang="en"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<pi xml:lang="no" xml:id="id1">
<gamma xml:lang="en-US"/>
<chi xml:lang="no">
<nu xml:id="id2">
<phi xml:lang="no" xml:id="id3"/>
<delta class="123456789" xml:lang="no-nb"/>
<rho xml:lang="en-US"/>
<iota>
<tau desciption="attribute" xml:id="id4"/>
<theta xml:lang="en-GB">
<beta xml:lang="en-GB" xml:id="id5"/>
<gamma/>
<omega title="false" xml:lang="en-GB" xml:id="id6"/>
<eta title="false" xml:lang="en-GB"/>
<omicron xml:lang="en" xml:id="id7"/>
<tau xml:lang="no" xml:id="id8"/>
<gamma name="another attribute value" xml:lang="nb">
<lambda delete="100%" xml:lang="nb" xml:id="id9"/>
<chi xml:lang="en">
<green>This text must be green</green>
</chi>
</gamma>
</theta>
</iota>
</nu>
</chi>
</pi>
</tree>
</test>
<test>
<xpath>//kappa[starts-with(concat(@desciption,"-"),"this.nodeValue-")][@xml:lang="nb"]//rho[@attribute="100%"][@xml:lang="en-GB"][following-sibling::delta[contains(@attrib,"c")][@xml:lang="en-US"][following-sibling::zeta[contains(@delete,"gre")][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::gamma[not(following-sibling::*)]/phi[@xml:lang="en-US"][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//*[@xml:lang="nb"][not(following-sibling::*)]/phi[contains(concat(@string,"$"),"ibute value$")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//beta[@xml:id="id2"]/tau[starts-with(concat(@attribute,"-"),"solid 1px green-")][@xml:lang="no"][following-sibling::*[position()=1]][following-sibling::tau[@xml:lang="en-GB"][not(following-sibling::*)]//delta[@xml:lang="en-GB"][following-sibling::chi[@xml:lang="en"][@xml:id="id3"][following-sibling::psi[contains(concat(@and,"$"),"e$")]]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<kappa desciption="this.nodeValue" xml:lang="nb">
<rho attribute="100%" xml:lang="en-GB"/>
<delta attrib="content" xml:lang="en-US"/>
<zeta delete="solid 1px green"/>
<gamma>
<phi xml:lang="en-US" xml:id="id1">
<any xml:lang="nb">
<phi string="attribute value" xml:lang="no-nb">
<beta xml:id="id2">
<tau attribute="solid 1px green" xml:lang="no"/>
<tau xml:lang="en-GB">
<delta xml:lang="en-GB"/>
<chi xml:lang="en" xml:id="id3"/>
<psi and="this-is-att-value">
<green>This text must be green</green>
</psi>
</tau>
</beta>
</phi>
</any>
</phi>
</gamma>
</kappa>
</tree>
</test>
<test>
<xpath>//pi[@title]/xi[@data][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//kappa[contains(@content,"r")][@xml:lang="nb"][not(preceding-sibling::*)]/kappa[@xml:lang="en"][following-sibling::gamma[@or="another attribute value"][@xml:id="id2"][not(following-sibling::*)]//eta[not(following-sibling::*)]//tau[starts-with(@desciption,"attribute")][@xml:id="id3"][following-sibling::iota[starts-with(@content,"_")][@xml:lang="no-nb"][@xml:id="id4"][following-sibling::omicron[@src="another attribute value"][@xml:lang="en"][@xml:id="id5"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//phi[@xml:lang="en"][@xml:id="id6"][not(preceding-sibling::*)]//kappa[starts-with(@desciption,"this.n")][@xml:id="id7"]//lambda[@xml:lang="en-GB"][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]]]</xpath>
<tree>
<pi title="_blank">
<xi data="content" xml:id="id1">
<kappa content="true" xml:lang="nb">
<kappa xml:lang="en"/>
<gamma or="another attribute value" xml:id="id2">
<eta>
<tau desciption="attribute value" xml:id="id3"/>
<iota content="_blank" xml:lang="no-nb" xml:id="id4"/>
<omicron src="another attribute value" xml:lang="en" xml:id="id5">
<phi xml:lang="en" xml:id="id6">
<kappa desciption="this.nodeValue" xml:id="id7">
<lambda xml:lang="en-GB" xml:id="id8">
<green>This text must be green</green>
</lambda>
</kappa>
</phi>
</omicron>
</eta>
</gamma>
</kappa>
</xi>
</pi>
</tree>
</test>
<test>
<xpath>//omicron[@xml:id="id1"]//iota[starts-with(@attr,"this-is-att-")][@xml:id="id2"][not(following-sibling::*)]/beta[@string][@xml:lang="no-nb"][not(child::node())][following-sibling::omega[@or][@xml:lang="en-GB"][@xml:id="id3"][preceding-sibling::*[position() = 1]]//pi[not(following-sibling::*)]/nu[@xml:lang="nb"][@xml:id="id4"][not(preceding-sibling::*)]//tau[@xml:id="id5"][not(following-sibling::*)]//theta[@src][@xml:lang="en"][following-sibling::xi[@xml:lang="en"][preceding-sibling::*[position() = 1]][not(preceding-sibling::xi)][not(child::node())][following-sibling::xi[@xml:lang="en-GB"][@xml:id="id6"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/rho[starts-with(concat(@false,"-"),"false-")][@xml:lang="en-GB"][@xml:id="id7"][not(preceding-sibling::*)]//phi[@attribute][@xml:lang="en-GB"][@xml:id="id8"][not(following-sibling::*)]//omega[starts-with(concat(@abort,"-"),"attribute-")][@xml:lang="en-US"][following-sibling::*[position()=2]][following-sibling::lambda[@attrib="_blank"][preceding-sibling::*[position() = 1]][following-sibling::nu[@xml:id="id9"][preceding-sibling::*[position() = 2]]]][position() = 1]]]]</xpath>
<tree>
<omicron xml:id="id1">
<iota attr="this-is-att-value" xml:id="id2">
<beta string="content" xml:lang="no-nb"/>
<omega or="this-is-att-value" xml:lang="en-GB" xml:id="id3">
<pi>
<nu xml:lang="nb" xml:id="id4">
<tau xml:id="id5">
<theta src="solid 1px green" xml:lang="en"/>
<xi xml:lang="en"/>
<xi xml:lang="en-GB" xml:id="id6">
<rho false="false" xml:lang="en-GB" xml:id="id7">
<phi attribute="attribute value" xml:lang="en-GB" xml:id="id8">
<omega abort="attribute" xml:lang="en-US"/>
<lambda attrib="_blank"/>
<nu xml:id="id9">
<green>This text must be green</green>
</nu>
</phi>
</rho>
</xi>
</tau>
</nu>
</pi>
</omega>
</iota>
</omicron>
</tree>
</test>
<test>
<xpath>//tau[@xml:lang="no"]//theta[@xml:id="id1"][not(following-sibling::*)]/upsilon[@xml:id="id2"][not(preceding-sibling::*)]//*[@attribute][@xml:lang="no"]/eta[contains(concat(@string,"$"),"bute-value$")][@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::mu[@title][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=4]][following-sibling::alpha[@token][@xml:lang="en-US"][@xml:id="id5"][following-sibling::phi[contains(concat(@or,"$"),"e$")][@xml:lang="en"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::chi[@number="123456789"][@xml:lang="no-nb"][following-sibling::epsilon[starts-with(@name,"_blank")][@xml:id="id6"][preceding-sibling::*[position() = 5]][not(following-sibling::*)]//omega[@string][@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@xml:lang="no-nb"]//omega[@xml:lang="no"][following-sibling::*[position()=3]][not(child::node())][following-sibling::*[@attr][@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::theta[contains(@abort,"tr")][@xml:lang="en"][@xml:id="id9"][following-sibling::*[position()=1]][following-sibling::chi[starts-with(concat(@true,"-"),"attribute value-")][@xml:lang="en-GB"][not(following-sibling::*)]//pi[@xml:lang="en-US"][@xml:id="id10"][not(following-sibling::*)][not(following-sibling::pi)]/eta[not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::kappa[@data][@xml:id="id11"][not(following-sibling::*)]/sigma[@attribute][not(preceding-sibling::*)][following-sibling::mu[@object][@xml:id="id12"][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[@xml:lang="no"][not(following-sibling::*)]//delta[@xml:lang="en-GB"][@xml:id="id13"][not(child::node())][following-sibling::zeta[preceding-sibling::*[position() = 1]][not(following-sibling::*)]][position() = 1]][position() = 1]]]][position() = 1]]]]][position() = 1]]]]]</xpath>
<tree>
<tau xml:lang="no">
<theta xml:id="id1">
<upsilon xml:id="id2">
<any attribute="this-is-att-value" xml:lang="no">
<eta string="attribute-value" xml:id="id3"/>
<mu title="attribute-value" xml:id="id4"/>
<alpha token="123456789" xml:lang="en-US" xml:id="id5"/>
<phi or="this-is-att-value" xml:lang="en"/>
<chi number="123456789" xml:lang="no-nb"/>
<epsilon name="_blank" xml:id="id6">
<omega string="this.nodeValue" xml:id="id7"/>
<omicron xml:lang="no-nb">
<omega xml:lang="no"/>
<any attr="another attribute value" xml:lang="en-GB" xml:id="id8"/>
<theta abort="another attribute value" xml:lang="en" xml:id="id9"/>
<chi true="attribute value" xml:lang="en-GB">
<pi xml:lang="en-US" xml:id="id10">
<eta/>
<kappa data="solid 1px green" xml:id="id11">
<sigma attribute="content"/>
<mu object="100%" xml:id="id12"/>
<theta xml:lang="no">
<delta xml:lang="en-GB" xml:id="id13"/>
<zeta>
<green>This text must be green</green>
</zeta>
</theta>
</kappa>
</pi>
</chi>
</omicron>
</epsilon>
</any>
</upsilon>
</theta>
</tau>
</tree>
</test>
<test>
<xpath>//psi[@xml:lang="no"][@xml:id="id1"]/rho[@attrib="this-is-att-value"][@xml:id="id2"][not(preceding-sibling::*)][not(preceding-sibling::rho)][following-sibling::lambda[preceding-sibling::*[position() = 1]][not(following-sibling::*)]//beta[@xml:id="id3"][not(child::node())][following-sibling::zeta[starts-with(@content,"true")][@xml:id="id4"]/pi[contains(concat(@attr,"$"),"0%$")][@xml:lang="nb"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::iota[@and][preceding-sibling::*[position() = 1]][following-sibling::*[position()=4]][not(child::node())][following-sibling::chi[@xml:lang="nb"][following-sibling::*[position()=3]][not(child::node())][following-sibling::upsilon[starts-with(@desciption,"another attr")][@xml:lang="en-GB"][preceding-sibling::*[position() = 3]][following-sibling::eta[starts-with(@number,"this-is-att-valu")][@xml:lang="en-US"][@xml:id="id6"][following-sibling::*[position()=1]][following-sibling::chi[preceding-sibling::*[position() = 5]]//omega[@xml:lang="no"][@xml:id="id7"][not(preceding-sibling::*)]/upsilon[starts-with(@desciption,"fals")][following-sibling::delta[starts-with(@data,"this.nodeVa")][@xml:lang="no-nb"][@xml:id="id8"][not(following-sibling::*)]//epsilon[@content="false"][not(preceding-sibling::*)][not(following-sibling::*)][not(preceding-sibling::epsilon)]/sigma[contains(@desciption,"9")][@xml:lang="nb"][not(preceding-sibling::*)]//rho[@xml:id="id9"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[starts-with(concat(@attribute,"-"),"false-")][@xml:lang="nb"][preceding-sibling::*[position() = 1]]//delta[@xml:lang="en-GB"][not(following-sibling::delta)][following-sibling::theta[@or="attribute"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::psi[starts-with(@abort,"this.node")][@xml:id="id10"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::upsilon[@xml:id="id11"][preceding-sibling::*[position() = 3]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<psi xml:lang="no" xml:id="id1">
<rho attrib="this-is-att-value" xml:id="id2"/>
<lambda>
<beta xml:id="id3"/>
<zeta content="true" xml:id="id4">
<pi attr="100%" xml:lang="nb" xml:id="id5"/>
<iota and="solid 1px green"/>
<chi xml:lang="nb"/>
<upsilon desciption="another attribute value" xml:lang="en-GB"/>
<eta number="this-is-att-value" xml:lang="en-US" xml:id="id6"/>
<chi>
<omega xml:lang="no" xml:id="id7">
<upsilon desciption="false"/>
<delta data="this.nodeValue" xml:lang="no-nb" xml:id="id8">
<epsilon content="false">
<sigma desciption="123456789" xml:lang="nb">
<rho xml:id="id9"/>
<omicron attribute="false" xml:lang="nb">
<delta xml:lang="en-GB"/>
<theta or="attribute"/>
<psi abort="this.nodeValue" xml:id="id10"/>
<upsilon xml:id="id11">
<green>This text must be green</green>
</upsilon>
</omicron>
</sigma>
</epsilon>
</delta>
</omega>
</chi>
</zeta>
</lambda>
</psi>
</tree>
</test>
<test>
<xpath>//nu[contains(concat(@abort,"$"),"blank$")][@xml:lang="en-US"]/nu[@xml:id="id1"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::chi[following-sibling::epsilon[@xml:id="id2"][preceding-sibling::*[position() = 2]]/lambda[@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/tau[@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::rho[@xml:id="id5"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::beta[contains(concat(@attribute,"$"),"ank$")][@xml:lang="nb"][@xml:id="id6"][not(child::node())][following-sibling::eta[@delete][preceding-sibling::*[position() = 3]]/beta[@xml:lang="no-nb"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::*[position()=5]][following-sibling::phi[@content][@xml:id="id8"][following-sibling::nu[following-sibling::zeta[@xml:lang="no-nb"][@xml:id="id9"][following-sibling::delta[@xml:id="id10"][following-sibling::zeta[@xml:lang="en"][@xml:id="id11"][preceding-sibling::*[position() = 5]]]][position() = 1]][position() = 1]]]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<nu abort="_blank" xml:lang="en-US">
<nu xml:id="id1"/>
<chi/>
<epsilon xml:id="id2">
<lambda xml:id="id3">
<tau xml:lang="no" xml:id="id4"/>
<rho xml:id="id5"/>
<beta attribute="_blank" xml:lang="nb" xml:id="id6"/>
<eta delete="123456789">
<beta xml:lang="no-nb" xml:id="id7"/>
<phi content="_blank" xml:id="id8"/>
<nu/>
<zeta xml:lang="no-nb" xml:id="id9"/>
<delta xml:id="id10"/>
<zeta xml:lang="en" xml:id="id11">
<green>This text must be green</green>
</zeta>
</eta>
</lambda>
</epsilon>
</nu>
</tree>
</test>
<test>
<xpath>//beta[starts-with(@and,"this-is-at")][@xml:lang="nb"][@xml:id="id1"]/psi[@token][@xml:lang="en-US"][@xml:id="id2"]/tau[@xml:lang="en-GB"][not(following-sibling::*)]/pi[@xml:lang="en-US"][following-sibling::alpha[contains(@content,"tr")][@xml:id="id3"][preceding-sibling::*[position() = 1]]//pi[@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::*[contains(concat(@true,"$"),"lue$")][@xml:lang="en-GB"][not(following-sibling::*)]/iota[contains(concat(@number,"$"),"e$")][@xml:lang="en-GB"][@xml:id="id5"][following-sibling::*[position()=1]][following-sibling::delta[@xml:lang="nb"][@xml:id="id6"]/beta[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]/sigma[@xml:lang="nb"][@xml:id="id7"][not(child::node())][following-sibling::epsilon[@content="123456789"][@xml:id="id8"][not(following-sibling::*)]/beta[contains(concat(@and,"$"),"e$")][@xml:lang="no"]/nu[@xml:id="id9"][not(following-sibling::*)]]][position() = 1]][position() = 1]]</xpath>
<tree>
<beta and="this-is-att-value" xml:lang="nb" xml:id="id1">
<psi token="false" xml:lang="en-US" xml:id="id2">
<tau xml:lang="en-GB">
<pi xml:lang="en-US"/>
<alpha content="attribute-value" xml:id="id3">
<pi xml:lang="en-US" xml:id="id4"/>
<any true="attribute value" xml:lang="en-GB">
<iota number="another attribute value" xml:lang="en-GB" xml:id="id5"/>
<delta xml:lang="nb" xml:id="id6">
<beta xml:lang="no">
<sigma xml:lang="nb" xml:id="id7"/>
<epsilon content="123456789" xml:id="id8">
<beta and="true" xml:lang="no">
<nu xml:id="id9">
<green>This text must be green</green>
</nu>
</beta>
</epsilon>
</beta>
</delta>
</any>
</alpha>
</tau>
</psi>
</beta>
</tree>
</test>
<test>
<xpath>//iota[@xml:lang="no"]/theta[following-sibling::zeta[@src="this.nodeValue"][@xml:lang="nb"][@xml:id="id1"][preceding-sibling::*[position() = 1]][following-sibling::psi[@xml:lang="no"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/chi[not(child::node())][following-sibling::phi[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]]]</xpath>
<tree>
<iota xml:lang="no">
<theta/>
<zeta src="this.nodeValue" xml:lang="nb" xml:id="id1"/>
<psi xml:lang="no">
<chi/>
<phi xml:id="id2">
<green>This text must be green</green>
</phi>
</psi>
</iota>
</tree>
</test>
<test>
<xpath>//iota[contains(concat(@object,"$"),"en$")][@xml:id="id1"]//omega[not(preceding-sibling::*)]//sigma[@xml:id="id2"][not(preceding-sibling::*)][following-sibling::gamma[@insert="content"][preceding-sibling::*[position() = 1]]//sigma[@xml:lang="en"]/alpha[@xml:id="id3"]//zeta[@xml:lang="no"][@xml:id="id4"][following-sibling::omega[@xml:id="id5"][not(following-sibling::*)]/xi[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::theta[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/nu[@xml:id="id6"][not(following-sibling::*)]//epsilon[contains(concat(@false,"$"),"e$")][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]//iota[starts-with(concat(@and,"-"),"solid 1px green-")][@xml:lang="en"][not(following-sibling::*)]//phi[starts-with(@token,"th")][@xml:lang="en-US"][following-sibling::*[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::upsilon[@number="true"][@xml:id="id8"][not(child::node())][following-sibling::zeta[starts-with(@data,"so")][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota object="solid 1px green" xml:id="id1">
<omega>
<sigma xml:id="id2"/>
<gamma insert="content">
<sigma xml:lang="en">
<alpha xml:id="id3">
<zeta xml:lang="no" xml:id="id4"/>
<omega xml:id="id5">
<xi xml:lang="nb"/>
<theta xml:lang="en-US">
<nu xml:id="id6">
<epsilon false="true" xml:id="id7">
<iota and="solid 1px green" xml:lang="en">
<phi token="this.nodeValue" xml:lang="en-US"/>
<any xml:lang="en-US"/>
<upsilon number="true" xml:id="id8"/>
<zeta data="solid 1px green">
<green>This text must be green</green>
</zeta>
</iota>
</epsilon>
</nu>
</theta>
</omega>
</alpha>
</sigma>
</gamma>
</omega>
</iota>
</tree>
</test>
<test>
<xpath>//eta[starts-with(concat(@object,"-"),"attribute value-")][@xml:lang="nb"]//omicron[@xml:lang="en-US"][@xml:id="id1"]/pi[@att="true"][@xml:id="id2"]/omega[@att="123456789"][@xml:lang="en-GB"][@xml:id="id3"][following-sibling::phi[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::tau[preceding-sibling::*[position() = 2]][not(following-sibling::*)]/iota[@xml:lang="no-nb"][following-sibling::*[position()=1]][not(child::node())][following-sibling::sigma[@title="_blank"][not(following-sibling::*)]]][position() = 1]]</xpath>
<tree>
<eta object="attribute value" xml:lang="nb">
<omicron xml:lang="en-US" xml:id="id1">
<pi att="true" xml:id="id2">
<omega att="123456789" xml:lang="en-GB" xml:id="id3"/>
<phi xml:lang="no-nb"/>
<tau>
<iota xml:lang="no-nb"/>
<sigma title="_blank">
<green>This text must be green</green>
</sigma>
</tau>
</pi>
</omicron>
</eta>
</tree>
</test>
<test>
<xpath>//*/upsilon[@att="123456789"][@xml:lang="nb"][@xml:id="id1"][not(preceding-sibling::*)]/rho[@xml:id="id2"][following-sibling::epsilon[starts-with(concat(@abort,"-"),"100%-")][@xml:lang="en-GB"][following-sibling::iota[@xml:lang="en"][@xml:id="id3"]//theta[contains(concat(@desciption,"$")," 1px green$")][@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::theta[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][following-sibling::xi[contains(concat(@desciption,"$"),"content$")][@xml:lang="no-nb"][not(child::node())][following-sibling::delta[contains(@attribute,"s-is-a")][@xml:lang="no-nb"]//xi[@data][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::delta[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=6]][following-sibling::mu[@attribute="123456789"][@xml:id="id6"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::epsilon[@insert="this.nodeValue"][@xml:lang="no-nb"][@xml:id="id7"][preceding-sibling::*[position() = 3]][following-sibling::psi[@xml:id="id8"][preceding-sibling::*[position() = 4]][following-sibling::*[position()=3]][not(child::node())][following-sibling::mu[contains(@title,"789")][@xml:id="id9"][preceding-sibling::*[position() = 5]][not(child::node())][following-sibling::xi[@string="123456789"][not(child::node())][following-sibling::beta[@xml:lang="en-GB"][preceding-sibling::*[position() = 7]]/upsilon[@src="attribute value"][@xml:id="id10"][not(child::node())][following-sibling::eta[contains(concat(@attribute,"$"),"rue$")]//gamma[@object][@xml:id="id11"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[contains(concat(@delete,"$"),"9$")][@xml:id="id12"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]][position() = 1]]][position() = 1]]][position() = 1]]]]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<any>
<upsilon att="123456789" xml:lang="nb" xml:id="id1">
<rho xml:id="id2"/>
<epsilon abort="100%" xml:lang="en-GB"/>
<iota xml:lang="en" xml:id="id3">
<theta desciption="solid 1px green" xml:lang="en" xml:id="id4"/>
<theta xml:lang="en-GB"/>
<xi desciption="content" xml:lang="no-nb"/>
<delta attribute="this-is-att-value" xml:lang="no-nb">
<xi data="attribute-value" xml:id="id5"/>
<delta xml:lang="en-GB"/>
<mu attribute="123456789" xml:id="id6"/>
<epsilon insert="this.nodeValue" xml:lang="no-nb" xml:id="id7"/>
<psi xml:id="id8"/>
<mu title="123456789" xml:id="id9"/>
<xi string="123456789"/>
<beta xml:lang="en-GB">
<upsilon src="attribute value" xml:id="id10"/>
<eta attribute="true">
<gamma object="_blank" xml:id="id11"/>
<gamma delete="123456789" xml:id="id12">
<green>This text must be green</green>
</gamma>
</eta>
</beta>
</delta>
</iota>
</upsilon>
</any>
</tree>
</test>
<test>
<xpath>//mu[@xml:id="id1"]/epsilon[@class="false"][@xml:lang="no-nb"][@xml:id="id2"][following-sibling::nu[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//sigma[contains(concat(@attrib,"$"),"alue$")][@xml:lang="en-US"]//tau[@xml:id="id3"][not(following-sibling::*)]//beta[@insert="100%"][@xml:lang="no-nb"][@xml:id="id4"][not(preceding-sibling::*)]/iota[@xml:lang="no"][@xml:id="id5"][not(following-sibling::*)]/phi[@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[not(following-sibling::*)]//pi[@insert][@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]//upsilon[@xml:id="id7"][not(following-sibling::*)]//zeta[starts-with(@src,"attribu")][@xml:lang="nb"][not(following-sibling::*)]]]</xpath>
<tree>
<mu xml:id="id1">
<epsilon class="false" xml:lang="no-nb" xml:id="id2"/>
<nu xml:lang="no-nb">
<sigma attrib="another attribute value" xml:lang="en-US">
<tau xml:id="id3">
<beta insert="100%" xml:lang="no-nb" xml:id="id4">
<iota xml:lang="no" xml:id="id5">
<phi xml:id="id6"/>
<gamma>
<pi insert="_blank" xml:lang="no">
<upsilon xml:id="id7">
<zeta src="attribute-value" xml:lang="nb">
<green>This text must be green</green>
</zeta>
</upsilon>
</pi>
</gamma>
</iota>
</beta>
</tau>
</sigma>
</nu>
</mu>
</tree>
</test>
<test>
<xpath>//beta[@xml:lang="no-nb"]//epsilon[@xml:lang="en"][@xml:id="id1"][not(following-sibling::*)]/alpha[@title="_blank"][@xml:lang="en-US"][@xml:id="id2"][following-sibling::omicron[starts-with(@object,"another a")][@xml:lang="en-US"][preceding-sibling::*[position() = 1]]/xi[starts-with(@attr,"this.nodeVa")][@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::phi[starts-with(@string,"12")][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][position() = 1]]]</xpath>
<tree>
<beta xml:lang="no-nb">
<epsilon xml:lang="en" xml:id="id1">
<alpha title="_blank" xml:lang="en-US" xml:id="id2"/>
<omicron object="another attribute value" xml:lang="en-US">
<xi attr="this.nodeValue" xml:lang="en-US" xml:id="id3"/>
<phi string="123456789" xml:lang="no-nb">
<green>This text must be green</green>
</phi>
</omicron>
</epsilon>
</beta>
</tree>
</test>
<test>
<xpath>//eta[@attrib][@xml:id="id1"]/zeta[@xml:lang="en-GB"][not(child::node())][following-sibling::delta[@xml:lang="en"][@xml:id="id2"][preceding-sibling::*[position() = 1]]//theta[contains(@attrib,"een")][@xml:id="id3"]/alpha[@xml:lang="en-US"][not(preceding-sibling::*)][not(following-sibling::*)]//eta[@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::psi[@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::rho[@name][@xml:lang="no-nb"][@xml:id="id5"][not(following-sibling::*)]//xi[starts-with(concat(@att,"-"),"true-")][@xml:lang="no-nb"][@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]//kappa[contains(concat(@abort,"$"),"3456789$")][@xml:id="id7"][not(following-sibling::*)]//phi[starts-with(@att,"this-is-att-value")][following-sibling::*[position()=2]][following-sibling::*[@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::xi[@title="true"][not(following-sibling::*)]/chi[not(preceding-sibling::*)]/omicron[starts-with(concat(@true,"-"),"attribute-")][@xml:lang="en"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[contains(concat(@src,"$"),"23456789$")][@xml:id="id9"]//lambda[not(preceding-sibling::*)]//delta[@xml:lang="nb"][@xml:id="id10"][not(child::node())][following-sibling::lambda[@xml:lang="en"]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<eta attrib="true" xml:id="id1">
<zeta xml:lang="en-GB"/>
<delta xml:lang="en" xml:id="id2">
<theta attrib="solid 1px green" xml:id="id3">
<alpha xml:lang="en-US">
<eta xml:lang="no"/>
<psi xml:lang="no" xml:id="id4"/>
<rho name="attribute value" xml:lang="no-nb" xml:id="id5">
<xi att="true" xml:lang="no-nb" xml:id="id6">
<kappa abort="123456789" xml:id="id7">
<phi att="this-is-att-value"/>
<any xml:lang="en-GB" xml:id="id8"/>
<xi title="true">
<chi>
<omicron true="attribute" xml:lang="en"/>
<tau src="123456789" xml:id="id9">
<lambda>
<delta xml:lang="nb" xml:id="id10"/>
<lambda xml:lang="en">
<green>This text must be green</green>
</lambda>
</lambda>
</tau>
</chi>
</xi>
</kappa>
</xi>
</rho>
</alpha>
</theta>
</delta>
</eta>
</tree>
</test>
<test>
<xpath>//tau[@content][@xml:id="id1"]/beta[@xml:lang="en-GB"][not(following-sibling::*)]/upsilon[starts-with(concat(@desciption,"-"),"this-")][@xml:id="id2"]//upsilon[@xml:id="id3"]/xi[@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@content][@xml:id="id5"]//*[@xml:lang="nb"][not(preceding-sibling::*)]/psi[contains(@class,"al")][@xml:lang="en"][@xml:id="id6"]/gamma[@insert="100%"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon[starts-with(@insert,"attribute-")][@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::tau[preceding-sibling::*[position() = 2]][not(following-sibling::*)]//kappa[@content][@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]//eta[contains(@attrib,"789")][following-sibling::kappa[contains(concat(@object,"$"),"att-value$")][@xml:lang="no-nb"][following-sibling::*[position()=1]][following-sibling::alpha[@xml:id="id7"][preceding-sibling::*[position() = 2]][not(following-sibling::*)][not(following-sibling::alpha)]/xi[following-sibling::*[position()=2]][not(preceding-sibling::xi)][not(child::node())][following-sibling::alpha[@name="_blank"][@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::zeta[@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//lambda[not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::mu[contains(concat(@src,"$"),"s-is-att-value$")][@xml:lang="en"][@xml:id="id9"][not(following-sibling::*)]/nu[starts-with(@token,"this.nod")][@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]//kappa[@true][@xml:id="id11"][not(preceding-sibling::*)][following-sibling::omicron[starts-with(concat(@or,"-"),"_blank-")][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::iota[@xml:lang="nb"][@xml:id="id12"][not(following-sibling::*)]][position() = 1]]]]]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<tau content="false" xml:id="id1">
<beta xml:lang="en-GB">
<upsilon desciption="this-is-att-value" xml:id="id2">
<upsilon xml:id="id3">
<xi xml:lang="en" xml:id="id4"/>
<xi content="attribute value" xml:id="id5">
<any xml:lang="nb">
<psi class="this.nodeValue" xml:lang="en" xml:id="id6">
<gamma insert="100%"/>
<epsilon insert="attribute-value" xml:lang="en"/>
<tau>
<kappa content="another attribute value" xml:lang="nb">
<eta attrib="123456789"/>
<kappa object="this-is-att-value" xml:lang="no-nb"/>
<alpha xml:id="id7">
<xi/>
<alpha name="_blank" xml:lang="en-GB"/>
<zeta xml:lang="en-GB" xml:id="id8">
<lambda/>
<mu src="this-is-att-value" xml:lang="en" xml:id="id9">
<nu token="this.nodeValue" xml:id="id10">
<kappa true="this.nodeValue" xml:id="id11"/>
<omicron or="_blank"/>
<iota xml:lang="nb" xml:id="id12">
<green>This text must be green</green>
</iota>
</nu>
</mu>
</zeta>
</alpha>
</kappa>
</tau>
</psi>
</any>
</xi>
</upsilon>
</upsilon>
</beta>
</tau>
</tree>
</test>
<test>
<xpath>//pi[@xml:id="id1"]/mu[@xml:lang="en"]/beta[starts-with(concat(@or,"-"),"123456789-")][@xml:lang="no"][not(following-sibling::*)]/alpha[@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/omicron[@title][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::epsilon[@false="attribute value"][not(child::node())][following-sibling::eta[preceding-sibling::*[position() = 2]][not(following-sibling::*)]//omega[not(preceding-sibling::*)][not(child::node())][following-sibling::iota[following-sibling::*[position()=5]][not(child::node())][following-sibling::zeta[@name="123456789"][@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 2]][following-sibling::xi[contains(concat(@true,"$"),"nk$")][@xml:id="id4"][preceding-sibling::*[position() = 3]][following-sibling::eta[@xml:lang="no"][preceding-sibling::*[position() = 4]][following-sibling::xi[@xml:id="id5"][following-sibling::*[position()=1]][following-sibling::sigma[contains(@insert,"alue")][@xml:lang="en"][preceding-sibling::*[position() = 6]]/iota[@attr][@xml:lang="no"][@xml:id="id6"][not(following-sibling::*)]//upsilon[contains(concat(@abort,"$"),"ttribute-value$")][not(preceding-sibling::*)]//kappa[starts-with(@or,"_blan")][not(preceding-sibling::*)][not(child::node())][following-sibling::omega[contains(concat(@src,"$"),"ue$")][@xml:lang="en-GB"][preceding-sibling::*[position() = 1]]//*[starts-with(@number,"100%")][not(child::node())][following-sibling::omicron//chi[contains(@title,"ru")][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::omega[@xml:id="id7"]][position() = 1]]]][position() = 1]]]]]]][position() = 1]]</xpath>
<tree>
<pi xml:id="id1">
<mu xml:lang="en">
<beta or="123456789" xml:lang="no">
<alpha xml:lang="en-GB" xml:id="id2">
<omicron title="attribute" xml:lang="en-GB"/>
<epsilon false="attribute value"/>
<eta>
<omega/>
<iota/>
<zeta name="123456789" xml:lang="no" xml:id="id3"/>
<xi true="_blank" xml:id="id4"/>
<eta xml:lang="no"/>
<xi xml:id="id5"/>
<sigma insert="another attribute value" xml:lang="en">
<iota attr="this-is-att-value" xml:lang="no" xml:id="id6">
<upsilon abort="attribute-value">
<kappa or="_blank"/>
<omega src="this.nodeValue" xml:lang="en-GB">
<any number="100%"/>
<omicron>
<chi title="true" xml:lang="nb"/>
<omega xml:id="id7">
<green>This text must be green</green>
</omega>
</omicron>
</omega>
</upsilon>
</iota>
</sigma>
</eta>
</alpha>
</beta>
</mu>
</pi>
</tree>
</test>
<test>
<xpath>//rho[@data="123456789"][@xml:lang="no"]//upsilon[@xml:id="id1"]/omega[not(preceding-sibling::*)][not(following-sibling::*)]//pi[starts-with(concat(@abort,"-"),"this-")][@xml:lang="en-US"][@xml:id="id2"][not(following-sibling::*)]//pi[@xml:lang="no-nb"][@xml:id="id3"][not(following-sibling::*)]//chi[not(following-sibling::*)]</xpath>
<tree>
<rho data="123456789" xml:lang="no">
<upsilon xml:id="id1">
<omega>
<pi abort="this-is-att-value" xml:lang="en-US" xml:id="id2">
<pi xml:lang="no-nb" xml:id="id3">
<chi>
<green>This text must be green</green>
</chi>
</pi>
</pi>
</omega>
</upsilon>
</rho>
</tree>
</test>
<test>
<xpath>//omega[@and="another attribute value"][@xml:lang="no-nb"][@xml:id="id1"]/omega[not(preceding-sibling::*)][not(following-sibling::*)]//beta[@attr="this.nodeValue"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::omega[following-sibling::*[position()=6]][following-sibling::iota[@xml:id="id3"][following-sibling::*[position()=5]][not(child::node())][following-sibling::tau[@xml:id="id4"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::psi[following-sibling::rho[@xml:lang="nb"][@xml:id="id5"][following-sibling::kappa[starts-with(@insert,"100")][@xml:lang="no-nb"][not(child::node())][following-sibling::lambda[@delete][@xml:lang="en"][preceding-sibling::*[position() = 7]]/omicron[starts-with(concat(@content,"-"),"this.nodeValue-")][@xml:lang="en-GB"][not(following-sibling::*)]//nu[@true][@xml:lang="no-nb"][not(following-sibling::*)]/sigma[@xml:lang="no-nb"][@xml:id="id6"][not(following-sibling::*)]//sigma[not(preceding-sibling::*)][not(child::node())][following-sibling::psi[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::iota[@xml:id="id7"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@title][@xml:id="id8"]//nu[@xml:id="id9"]/omicron[contains(concat(@insert,"$"),"eValue$")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]//chi[@xml:lang="nb"][not(preceding-sibling::*)]//pi[not(preceding-sibling::*)][not(following-sibling::*)]]]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<omega and="another attribute value" xml:lang="no-nb" xml:id="id1">
<omega>
<beta attr="this.nodeValue" xml:id="id2"/>
<omega/>
<iota xml:id="id3"/>
<tau xml:id="id4"/>
<psi/>
<rho xml:lang="nb" xml:id="id5"/>
<kappa insert="100%" xml:lang="no-nb"/>
<lambda delete="false" xml:lang="en">
<omicron content="this.nodeValue" xml:lang="en-GB">
<nu true="another attribute value" xml:lang="no-nb">
<sigma xml:lang="no-nb" xml:id="id6">
<sigma/>
<psi xml:lang="en-GB"/>
<iota xml:id="id7"/>
<psi title="solid 1px green" xml:id="id8">
<nu xml:id="id9">
<omicron insert="this.nodeValue" xml:lang="en-GB">
<chi xml:lang="nb">
<pi>
<green>This text must be green</green>
</pi>
</chi>
</omicron>
</nu>
</psi>
</sigma>
</nu>
</omicron>
</lambda>
</omega>
</omega>
</tree>
</test>
<test>
<xpath>//iota[contains(@number,"ue")]//mu[not(following-sibling::*)]//chi[following-sibling::nu[contains(@and,"00")][@xml:id="id1"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//delta[@src="123456789"][not(following-sibling::delta)][following-sibling::tau[@content][@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 1]]//sigma[@title][@xml:lang="en-US"][@xml:id="id3"][not(following-sibling::*)]/*[@xml:lang="en-GB"][not(following-sibling::*)][not(preceding-sibling::any)]//zeta[@src][not(following-sibling::*)]//chi[starts-with(concat(@src,"-"),"solid 1px green-")][@xml:lang="en"][@xml:id="id4"][following-sibling::*[position()=2]][following-sibling::delta[contains(@title,"nt")][@xml:id="id5"][not(child::node())][following-sibling::omicron//upsilon[@true][@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::lambda[@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/psi[@object]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota number="this-is-att-value">
<mu>
<chi/>
<nu and="100%" xml:id="id1">
<delta src="123456789"/>
<tau content="attribute" xml:lang="no" xml:id="id2">
<sigma title="this-is-att-value" xml:lang="en-US" xml:id="id3">
<any xml:lang="en-GB">
<zeta src="this-is-att-value">
<chi src="solid 1px green" xml:lang="en" xml:id="id4"/>
<delta title="content" xml:id="id5"/>
<omicron>
<upsilon true="true" xml:lang="no-nb"/>
<lambda xml:lang="en-US" xml:id="id6">
<psi object="solid 1px green">
<green>This text must be green</green>
</psi>
</lambda>
</omicron>
</zeta>
</any>
</sigma>
</tau>
</nu>
</mu>
</iota>
</tree>
</test>
<test>
<xpath>//omega/rho[@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//pi[@xml:lang="en-GB"][following-sibling::iota[not(following-sibling::*)]//omicron[@xml:id="id2"][not(following-sibling::*)]/eta[starts-with(concat(@true,"-"),"this-")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//xi[not(preceding-sibling::*)]//tau[@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][position() = 1]]]</xpath>
<tree>
<omega>
<rho xml:id="id1">
<pi xml:lang="en-GB"/>
<iota>
<omicron xml:id="id2">
<eta true="this-is-att-value" xml:lang="en-GB"/>
<lambda xml:id="id3">
<xi>
<tau xml:lang="en" xml:id="id4">
<green>This text must be green</green>
</tau>
</xi>
</lambda>
</omicron>
</iota>
</rho>
</omega>
</tree>
</test>
<test>
<xpath>//rho[@name="this-is-att-value"]/pi[@object][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::delta[starts-with(concat(@src,"-"),"solid 1px green-")][@xml:lang="en-GB"]//tau[@xml:lang="no-nb"][@xml:id="id2"]//nu[@class="123456789"][@xml:id="id3"][not(child::node())][following-sibling::psi[@xml:lang="en-US"][not(preceding-sibling::psi)][not(child::node())][following-sibling::beta[preceding-sibling::*[position() = 2]][not(following-sibling::*)]/mu[@xml:lang="en-US"][not(preceding-sibling::*)]//phi[contains(concat(@src,"$"),"ribute value$")][@xml:id="id4"][not(preceding-sibling::*)]//*[@xml:lang="en"][not(preceding-sibling::*)]/zeta[starts-with(@name,"attr")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::omega[@xml:lang="no"][@xml:id="id5"]//delta[@xml:id="id6"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::*[@desciption="123456789"][@xml:lang="en"][preceding-sibling::*[position() = 1]]//epsilon[@attr][@xml:lang="en-GB"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::gamma[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]]/zeta/phi[not(following-sibling::*)]//rho[@title="_blank"][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/delta[starts-with(concat(@name,"-"),"this-")][@xml:id="id8"][not(child::node())][following-sibling::psi[starts-with(@attrib,"solid 1px green")][@xml:lang="nb"][@xml:id="id9"][preceding-sibling::*[position() = 1]]//tau[starts-with(@and,"another attribu")][position() = 1]]]][position() = 1]]]]]</xpath>
<tree>
<rho name="this-is-att-value">
<pi object="attribute-value" xml:id="id1"/>
<delta src="solid 1px green" xml:lang="en-GB">
<tau xml:lang="no-nb" xml:id="id2">
<nu class="123456789" xml:id="id3"/>
<psi xml:lang="en-US"/>
<beta>
<mu xml:lang="en-US">
<phi src="attribute value" xml:id="id4">
<any xml:lang="en">
<zeta name="attribute-value" xml:lang="en-GB"/>
<omega xml:lang="no" xml:id="id5">
<delta xml:id="id6"/>
<any desciption="123456789" xml:lang="en">
<epsilon attr="attribute" xml:lang="en-GB" xml:id="id7"/>
<gamma xml:lang="no-nb">
<zeta>
<phi>
<rho title="_blank" xml:lang="no-nb">
<delta name="this-is-att-value" xml:id="id8"/>
<psi attrib="solid 1px green" xml:lang="nb" xml:id="id9">
<tau and="another attribute value">
<green>This text must be green</green>
</tau>
</psi>
</rho>
</phi>
</zeta>
</gamma>
</any>
</omega>
</any>
</phi>
</mu>
</beta>
</tau>
</delta>
</rho>
</tree>
</test>
<test>
<xpath>//tau[@xml:id="id1"]/zeta[@xml:lang="nb"]//upsilon[not(preceding-sibling::*)][not(child::node())][following-sibling::delta[contains(@data,"e")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//theta[following-sibling::*[position()=5]][following-sibling::kappa[starts-with(@src,"conten")][@xml:lang="en-GB"][@xml:id="id2"][not(child::node())][following-sibling::eta[contains(concat(@title,"$"),"23456789$")][@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=3]][following-sibling::mu[starts-with(concat(@attrib,"-"),"123456789-")][@xml:lang="en-US"][@xml:id="id3"][following-sibling::*[position()=2]][following-sibling::zeta[contains(concat(@attribute,"$"),"-is-att-value$")][@xml:id="id4"][preceding-sibling::*[position() = 4]][following-sibling::gamma[@title="123456789"][not(following-sibling::*)]//iota[starts-with(concat(@attr,"-"),"100%-")]//kappa[@object][@xml:lang="en"][following-sibling::*[@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//omega[@string][@xml:lang="no"][@xml:id="id6"][not(following-sibling::omega)][position() = 1]]]]]]]]</xpath>
<tree>
<tau xml:id="id1">
<zeta xml:lang="nb">
<upsilon/>
<delta data="true">
<theta/>
<kappa src="content" xml:lang="en-GB" xml:id="id2"/>
<eta title="123456789" xml:lang="en-GB"/>
<mu attrib="123456789" xml:lang="en-US" xml:id="id3"/>
<zeta attribute="this-is-att-value" xml:id="id4"/>
<gamma title="123456789">
<iota attr="100%">
<kappa object="true" xml:lang="en"/>
<any xml:lang="no-nb" xml:id="id5">
<omega string="true" xml:lang="no" xml:id="id6">
<green>This text must be green</green>
</omega>
</any>
</iota>
</gamma>
</delta>
</zeta>
</tau>
</tree>
</test>
<test>
<xpath>//alpha[contains(concat(@object,"$"),"ibute value$")][@xml:lang="nb"][@xml:id="id1"]//delta[not(preceding-sibling::*)]//omicron[not(preceding-sibling::*)][not(following-sibling::*)]//nu[not(preceding-sibling::*)][not(following-sibling::*)]//alpha[@name="solid 1px green"][@xml:id="id2"][following-sibling::lambda[@delete="solid 1px green"][@xml:id="id3"][not(child::node())][following-sibling::delta[preceding-sibling::*[position() = 2]][following-sibling::theta[contains(@att,"onte")][@xml:lang="no"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=1]][following-sibling::chi[@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 4]]/omega[@xml:id="id5"][not(child::node())][following-sibling::upsilon[@xml:id="id6"][not(following-sibling::*)]//nu[@title][@xml:lang="en-GB"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::omicron[starts-with(@object,"this-is-att-valu")][preceding-sibling::*[position() = 1]]/beta[@abort][@xml:lang="no-nb"][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]/eta[@src][@xml:lang="no"][not(following-sibling::*)]//chi[@xml:lang="no-nb"][following-sibling::iota[starts-with(@number,"12345678")][@xml:lang="no"][@xml:id="id9"][preceding-sibling::*[position() = 1]][following-sibling::omicron[@xml:id="id10"][not(child::node())][following-sibling::omicron[@string][preceding-sibling::*[position() = 3]][not(following-sibling::omicron)][following-sibling::nu[@xml:lang="en-US"][@xml:id="id11"][not(following-sibling::*)]/gamma[@class][@xml:id="id12"][not(preceding-sibling::*)][not(following-sibling::*)]/psi[@xml:lang="no-nb"][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<alpha object="another attribute value" xml:lang="nb" xml:id="id1">
<delta>
<omicron>
<nu>
<alpha name="solid 1px green" xml:id="id2"/>
<lambda delete="solid 1px green" xml:id="id3"/>
<delta/>
<theta att="content" xml:lang="no"/>
<chi xml:lang="no" xml:id="id4">
<omega xml:id="id5"/>
<upsilon xml:id="id6">
<nu title="another attribute value" xml:lang="en-GB" xml:id="id7"/>
<omicron object="this-is-att-value">
<beta abort="100%" xml:lang="no-nb" xml:id="id8">
<eta src="attribute value" xml:lang="no">
<chi xml:lang="no-nb"/>
<iota number="123456789" xml:lang="no" xml:id="id9"/>
<omicron xml:id="id10"/>
<omicron string="100%"/>
<nu xml:lang="en-US" xml:id="id11">
<gamma class="content" xml:id="id12">
<psi xml:lang="no-nb">
<green>This text must be green</green>
</psi>
</gamma>
</nu>
</eta>
</beta>
</omicron>
</upsilon>
</chi>
</nu>
</omicron>
</delta>
</alpha>
</tree>
</test>
<test>
<xpath>//kappa[@data][@xml:lang="en-GB"]//lambda[starts-with(@insert,"_blan")][@xml:lang="no"][not(preceding-sibling::*)]/sigma[not(preceding-sibling::*)][not(following-sibling::*)]/epsilon[contains(@token,"e")][@xml:lang="no"]/epsilon[starts-with(@or,"cont")][not(preceding-sibling::*)]/delta[@xml:lang="en-US"][not(preceding-sibling::*)]/xi[@object][not(preceding-sibling::*)][following-sibling::beta[contains(@true,"e")][@xml:id="id1"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=4]][following-sibling::delta[starts-with(concat(@object,"-"),"_blank-")][@xml:lang="no-nb"][@xml:id="id2"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=3]][following-sibling::iota[contains(concat(@and,"$"),"e value$")][@xml:lang="no"][preceding-sibling::*[position() = 3]][following-sibling::zeta[@xml:lang="en-US"][@xml:id="id3"][following-sibling::*[position()=1]][following-sibling::theta[preceding-sibling::*[position() = 5]]/sigma[@xml:lang="no-nb"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//sigma[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]//omicron[contains(@object,"123456789")][@xml:id="id5"][not(following-sibling::*)][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<kappa data="solid 1px green" xml:lang="en-GB">
<lambda insert="_blank" xml:lang="no">
<sigma>
<epsilon token="true" xml:lang="no">
<epsilon or="content">
<delta xml:lang="en-US">
<xi object="attribute value"/>
<beta true="attribute" xml:id="id1"/>
<delta object="_blank" xml:lang="no-nb" xml:id="id2"/>
<iota and="attribute value" xml:lang="no"/>
<zeta xml:lang="en-US" xml:id="id3"/>
<theta>
<sigma xml:lang="no-nb" xml:id="id4">
<sigma xml:lang="no">
<omicron object="123456789" xml:id="id5">
<green>This text must be green</green>
</omicron>
</sigma>
</sigma>
</theta>
</delta>
</epsilon>
</epsilon>
</sigma>
</lambda>
</kappa>
</tree>
</test>
<test>
<xpath>//delta[@xml:id="id1"]/nu[@xml:id="id2"][not(following-sibling::*)]//omicron[@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@xml:lang="en"][@xml:id="id4"][following-sibling::gamma[not(following-sibling::*)]//rho[starts-with(concat(@string,"-"),"this-")][@xml:lang="en"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//lambda[@xml:lang="no"][@xml:id="id6"][not(child::node())][following-sibling::chi[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][following-sibling::omega[contains(concat(@object,"$"),"nk$")][preceding-sibling::*[position() = 2]][not(following-sibling::*)][not(following-sibling::omega)]/rho[not(child::node())][following-sibling::phi[@att="false"][@xml:lang="en"][@xml:id="id7"][following-sibling::pi[@xml:id="id8"]/zeta[contains(concat(@object,"$"),"e$")][@xml:lang="no"][@xml:id="id9"][not(preceding-sibling::*)]//kappa[@xml:lang="en-US"][not(preceding-sibling::*)][not(following-sibling::*)]//theta[@true][@xml:lang="en-US"][not(child::node())][following-sibling::psi[@xml:lang="en-US"][@xml:id="id10"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(preceding-sibling::psi)][following-sibling::epsilon[not(child::node())][following-sibling::omega[contains(concat(@string,"$"),"100%$")][not(following-sibling::*)]]]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<delta xml:id="id1">
<nu xml:id="id2">
<omicron xml:id="id3"/>
<tau xml:lang="en" xml:id="id4"/>
<gamma>
<rho string="this-is-att-value" xml:lang="en" xml:id="id5">
<lambda xml:lang="no" xml:id="id6"/>
<chi xml:lang="en-GB"/>
<omega object="_blank">
<rho/>
<phi att="false" xml:lang="en" xml:id="id7"/>
<pi xml:id="id8">
<zeta object="false" xml:lang="no" xml:id="id9">
<kappa xml:lang="en-US">
<theta true="solid 1px green" xml:lang="en-US"/>
<psi xml:lang="en-US" xml:id="id10"/>
<epsilon/>
<omega string="100%">
<green>This text must be green</green>
</omega>
</kappa>
</zeta>
</pi>
</omega>
</rho>
</gamma>
</nu>
</delta>
</tree>
</test>
<test>
<xpath>//tau[starts-with(@delete,"_blank")][@xml:lang="no-nb"][@xml:id="id1"]//*[contains(concat(@title,"$"),"tt-value$")][@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)]//nu/tau[@attribute][@xml:lang="en"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::iota[contains(@title,"e")][@xml:lang="nb"][preceding-sibling::*[position() = 1]]/epsilon[not(preceding-sibling::*)][not(following-sibling::*)]/zeta[contains(@attribute,"t")][@xml:lang="en-GB"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::theta[contains(concat(@att,"$"),"rue$")][@xml:id="id5"][not(child::node())][following-sibling::omega[starts-with(@attrib,"10")][@xml:lang="en-GB"][not(child::node())][following-sibling::*[not(child::node())][following-sibling::omicron[preceding-sibling::*[position() = 4]]/phi[contains(@false,"lid 1px")][following-sibling::mu[@class][@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::alpha[starts-with(concat(@and,"-"),"attribute-")][@xml:id="id6"][position() = 1]][position() = 1]]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<tau delete="_blank" xml:lang="no-nb" xml:id="id1">
<any title="this-is-att-value" xml:lang="en-GB" xml:id="id2">
<nu>
<tau attribute="_blank" xml:lang="en" xml:id="id3"/>
<iota title="false" xml:lang="nb">
<epsilon>
<zeta attribute="content" xml:lang="en-GB" xml:id="id4"/>
<theta att="true" xml:id="id5"/>
<omega attrib="100%" xml:lang="en-GB"/>
<any/>
<omicron>
<phi false="solid 1px green"/>
<mu class="this.nodeValue" xml:lang="en"/>
<alpha and="attribute" xml:id="id6">
<green>This text must be green</green>
</alpha>
</omicron>
</epsilon>
</iota>
</nu>
</any>
</tau>
</tree>
</test>
<test>
<xpath>//alpha//mu[@content][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::phi[@token][not(child::node())][following-sibling::pi[@attr][@xml:lang="en-US"][preceding-sibling::*[position() = 2]][following-sibling::alpha[contains(@content,"e")][@xml:lang="en-US"][@xml:id="id2"]/zeta[@xml:id="id3"][not(following-sibling::*)]//kappa[contains(concat(@title,"$"),"ttribute value$")][@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::delta[starts-with(concat(@desciption,"-"),"attribute-")][preceding-sibling::*[position() = 1]][following-sibling::chi[contains(concat(@token,"$"),"alue$")][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::psi[@attr][@xml:lang="en-US"][preceding-sibling::*[position() = 3]]/omicron[contains(concat(@and,"$"),"blank$")][@xml:lang="no-nb"][@xml:id="id5"][not(following-sibling::*)][position() = 1]]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<alpha>
<mu content="100%" xml:id="id1"/>
<phi token="solid 1px green"/>
<pi attr="this.nodeValue" xml:lang="en-US"/>
<alpha content="false" xml:lang="en-US" xml:id="id2">
<zeta xml:id="id3">
<kappa title="attribute value" xml:lang="no" xml:id="id4"/>
<delta desciption="attribute-value"/>
<chi token="attribute value"/>
<psi attr="this-is-att-value" xml:lang="en-US">
<omicron and="_blank" xml:lang="no-nb" xml:id="id5">
<green>This text must be green</green>
</omicron>
</psi>
</zeta>
</alpha>
</alpha>
</tree>
</test>
<test>
<xpath>//upsilon[@xml:id="id1"]//omicron[@true][@xml:lang="en-GB"][not(following-sibling::*)]//alpha[@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)]//theta[@string="solid 1px green"][@xml:lang="nb"][@xml:id="id3"][not(child::node())][following-sibling::beta[@desciption][@xml:lang="nb"][@xml:id="id4"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::phi[@attr][following-sibling::pi[@xml:lang="en"][preceding-sibling::*[position() = 3]]/psi[@xml:lang="en-US"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::gamma[@xml:id="id6"][following-sibling::*[position()=2]][following-sibling::psi[@xml:id="id7"][following-sibling::*[position()=1]][following-sibling::lambda[@xml:id="id8"][preceding-sibling::*[position() = 3]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<upsilon xml:id="id1">
<omicron true="content" xml:lang="en-GB">
<alpha xml:lang="nb" xml:id="id2">
<theta string="solid 1px green" xml:lang="nb" xml:id="id3"/>
<beta desciption="_blank" xml:lang="nb" xml:id="id4"/>
<phi attr="true"/>
<pi xml:lang="en">
<psi xml:lang="en-US" xml:id="id5"/>
<gamma xml:id="id6"/>
<psi xml:id="id7"/>
<lambda xml:id="id8">
<green>This text must be green</green>
</lambda>
</pi>
</alpha>
</omicron>
</upsilon>
</tree>
</test>
<test>
<xpath>//iota//omega[contains(@src,"ibute value")][@xml:lang="no-nb"][@xml:id="id1"][not(child::node())][following-sibling::gamma[@xml:id="id2"][preceding-sibling::*[position() = 1]]/epsilon//omega[@xml:lang="no"]//nu/lambda[@object="content"][@xml:id="id3"][not(following-sibling::*)]//omega[@xml:lang="en"][not(child::node())][following-sibling::eta[starts-with(concat(@number,"-"),"solid 1px green-")][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[starts-with(concat(@token,"-"),"attribute-")][@xml:lang="en-US"][@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::rho[@delete][@xml:lang="no"][preceding-sibling::*[position() = 3]][not(following-sibling::*)][position() = 1]]][position() = 1]]]</xpath>
<tree>
<iota>
<omega src="another attribute value" xml:lang="no-nb" xml:id="id1"/>
<gamma xml:id="id2">
<epsilon>
<omega xml:lang="no">
<nu>
<lambda object="content" xml:id="id3">
<omega xml:lang="en"/>
<eta number="solid 1px green"/>
<delta token="attribute" xml:lang="en-US" xml:id="id4"/>
<rho delete="attribute value" xml:lang="no">
<green>This text must be green</green>
</rho>
</lambda>
</nu>
</omega>
</epsilon>
</gamma>
</iota>
</tree>
</test>
<test>
<xpath>//upsilon[contains(@insert,"alue")][@xml:lang="no"][@xml:id="id1"]/alpha[@token][@xml:lang="nb"][@xml:id="id2"]/*[@xml:lang="en-GB"][not(following-sibling::*)]/mu[@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)]//pi[contains(concat(@object,"$"),"ribute-value$")][@xml:lang="no-nb"][@xml:id="id4"][not(following-sibling::*)]/mu[@or][@xml:lang="en-GB"][@xml:id="id5"][following-sibling::sigma[@token][preceding-sibling::*[position() = 1]]/beta[@xml:lang="no"]/delta[not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::delta[starts-with(concat(@delete,"-"),"another attribute value-")][@xml:id="id6"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][following-sibling::pi[following-sibling::*[position()=1]][following-sibling::epsilon[contains(concat(@string,"$"),"tribute$")][@xml:id="id7"][preceding-sibling::*[position() = 3]]//theta[contains(concat(@false,"$"),"een$")]//*[@name="_blank"][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<upsilon insert="this-is-att-value" xml:lang="no" xml:id="id1">
<alpha token="false" xml:lang="nb" xml:id="id2">
<any xml:lang="en-GB">
<mu xml:lang="en-US" xml:id="id3">
<pi object="attribute-value" xml:lang="no-nb" xml:id="id4">
<mu or="content" xml:lang="en-GB" xml:id="id5"/>
<sigma token="false">
<beta xml:lang="no">
<delta/>
<delta delete="another attribute value" xml:id="id6"/>
<pi/>
<epsilon string="attribute" xml:id="id7">
<theta false="solid 1px green">
<any name="_blank">
<green>This text must be green</green>
</any>
</theta>
</epsilon>
</beta>
</sigma>
</pi>
</mu>
</any>
</alpha>
</upsilon>
</tree>
</test>
<test>
<xpath>//chi[contains(concat(@insert,"$"),"ttribute$")][@xml:lang="nb"][@xml:id="id1"]//delta[@xml:id="id2"][not(preceding-sibling::*)]/beta[@insert][@xml:lang="no-nb"][@xml:id="id3"][not(following-sibling::*)]/chi[@xml:lang="nb"][@xml:id="id4"][following-sibling::delta[following-sibling::*[position()=3]][following-sibling::*[@false][@xml:lang="en-US"][@xml:id="id5"][not(child::node())][following-sibling::theta[@xml:lang="no"][not(child::node())][following-sibling::beta[@xml:id="id6"][preceding-sibling::*[position() = 4]]//rho[@xml:id="id7"][not(preceding-sibling::*)][not(parent::*/*[position()=2])][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<chi insert="attribute" xml:lang="nb" xml:id="id1">
<delta xml:id="id2">
<beta insert="another attribute value" xml:lang="no-nb" xml:id="id3">
<chi xml:lang="nb" xml:id="id4"/>
<delta/>
<any false="attribute" xml:lang="en-US" xml:id="id5"/>
<theta xml:lang="no"/>
<beta xml:id="id6">
<rho xml:id="id7">
<green>This text must be green</green>
</rho>
</beta>
</beta>
</delta>
</chi>
</tree>
</test>
<test>
<xpath>//psi[@data][@xml:lang="en-US"]//iota[@xml:lang="nb"][not(following-sibling::*)]//*[@xml:id="id1"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::delta[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/eta[@title][not(preceding-sibling::*)][not(following-sibling::*)]/upsilon[@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[@xml:lang="en"][preceding-sibling::*[position() = 1]]//iota[@title][not(preceding-sibling::*)]//sigma[not(preceding-sibling::*)]//iota[@desciption="_blank"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::lambda[starts-with(@abort,"attrib")][@xml:id="id5"][not(following-sibling::*)]/omega[@content][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::omicron[@abort="content"][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]]]][position() = 1]]</xpath>
<tree>
<psi data="attribute-value" xml:lang="en-US">
<iota xml:lang="nb">
<any xml:id="id1"/>
<delta xml:id="id2">
<eta title="attribute-value">
<upsilon xml:id="id3"/>
<rho xml:lang="en">
<iota title="100%">
<sigma>
<iota desciption="_blank" xml:id="id4"/>
<lambda abort="attribute value" xml:id="id5">
<omega content="this.nodeValue" xml:lang="en-GB"/>
<omicron abort="content" xml:lang="en">
<green>This text must be green</green>
</omicron>
</lambda>
</sigma>
</iota>
</rho>
</eta>
</delta>
</iota>
</psi>
</tree>
</test>
<test>
<xpath>//eta[@false="123456789"][@xml:lang="no-nb"][@xml:id="id1"]/zeta[@xml:id="id2"][not(preceding-sibling::*)]/gamma[@xml:id="id3"]//beta[starts-with(@title,"attr")][following-sibling::xi[contains(@att,"on")][@xml:id="id4"][not(child::node())][following-sibling::sigma[@and][@xml:id="id5"][not(child::node())][following-sibling::zeta[@xml:lang="en-GB"][@xml:id="id6"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/xi[not(following-sibling::*)]/omicron[not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]][position() = 1]]</xpath>
<tree>
<eta false="123456789" xml:lang="no-nb" xml:id="id1">
<zeta xml:id="id2">
<gamma xml:id="id3">
<beta title="attribute"/>
<xi att="content" xml:id="id4"/>
<sigma and="this-is-att-value" xml:id="id5"/>
<zeta xml:lang="en-GB" xml:id="id6">
<xi>
<omicron>
<green>This text must be green</green>
</omicron>
</xi>
</zeta>
</gamma>
</zeta>
</eta>
</tree>
</test>
<test>
<xpath>//sigma[@xml:id="id1"]//psi[not(preceding-sibling::*)]/pi[not(preceding-sibling::*)]//nu[contains(@src,"ode")][@xml:id="id2"][not(following-sibling::*)]//delta[@xml:lang="en-US"][not(preceding-sibling::delta)][following-sibling::iota[starts-with(concat(@desciption,"-"),"100%-")][@xml:lang="en-US"][@xml:id="id3"][following-sibling::xi[@xml:lang="en"][following-sibling::*[position()=1]][not(child::node())][following-sibling::omicron[@xml:lang="nb"][preceding-sibling::*[position() = 3]]/gamma[@string="attribute value"][@xml:lang="en"][not(preceding-sibling::*)]//theta[@xml:lang="no-nb"][@xml:id="id4"][not(preceding-sibling::*)]/eta[@abort][@xml:id="id5"][following-sibling::*[position()=4]][not(child::node())][following-sibling::omicron[@false="this.nodeValue"][preceding-sibling::*[position() = 1]][following-sibling::omicron[@xml:lang="nb"][@xml:id="id6"][following-sibling::*[position()=2]][not(child::node())][following-sibling::iota[@xml:lang="nb"][following-sibling::pi[@delete][@xml:lang="no"][@xml:id="id7"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]//xi[starts-with(concat(@number,"-"),"_blank-")][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<sigma xml:id="id1">
<psi>
<pi>
<nu src="this.nodeValue" xml:id="id2">
<delta xml:lang="en-US"/>
<iota desciption="100%" xml:lang="en-US" xml:id="id3"/>
<xi xml:lang="en"/>
<omicron xml:lang="nb">
<gamma string="attribute value" xml:lang="en">
<theta xml:lang="no-nb" xml:id="id4">
<eta abort="attribute" xml:id="id5"/>
<omicron false="this.nodeValue"/>
<omicron xml:lang="nb" xml:id="id6"/>
<iota xml:lang="nb"/>
<pi delete="this-is-att-value" xml:lang="no" xml:id="id7">
<xi number="_blank">
<green>This text must be green</green>
</xi>
</pi>
</theta>
</gamma>
</omicron>
</nu>
</pi>
</psi>
</sigma>
</tree>
</test>
<test>
<xpath>//lambda//kappa[@xml:lang="no-nb"][@xml:id="id1"][not(child::node())][following-sibling::omega[@xml:lang="no"][following-sibling::*[position()=7]][following-sibling::zeta[@xml:lang="nb"][@xml:id="id2"][not(child::node())][following-sibling::omicron[contains(concat(@title,"$"),"0%$")][@xml:lang="en-GB"][@xml:id="id3"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::delta[@object][@xml:id="id4"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::iota[@xml:lang="en-US"][@xml:id="id5"][not(child::node())][following-sibling::beta[@xml:id="id6"][following-sibling::upsilon[@xml:lang="en"][@xml:id="id7"][preceding-sibling::*[position() = 7]][not(child::node())][following-sibling::sigma[preceding-sibling::*[position() = 8]]/kappa[@and][@xml:id="id8"][following-sibling::beta[@class]//mu[following-sibling::*[position()=2]][not(child::node())][following-sibling::mu[@attribute][@xml:lang="no-nb"][@xml:id="id9"][following-sibling::delta[@class][@xml:lang="no"][preceding-sibling::*[position() = 2]]//gamma[starts-with(@object,"soli")][@xml:lang="no-nb"][@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]//theta[@xml:id="id11"][not(preceding-sibling::*)][not(child::node())][following-sibling::zeta[contains(concat(@and,"$"),"nt$")][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//tau[@class]/nu/epsilon[@or="content"][@xml:lang="no-nb"][not(following-sibling::*)][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<lambda>
<kappa xml:lang="no-nb" xml:id="id1"/>
<omega xml:lang="no"/>
<zeta xml:lang="nb" xml:id="id2"/>
<omicron title="100%" xml:lang="en-GB" xml:id="id3"/>
<delta object="this.nodeValue" xml:id="id4"/>
<iota xml:lang="en-US" xml:id="id5"/>
<beta xml:id="id6"/>
<upsilon xml:lang="en" xml:id="id7"/>
<sigma>
<kappa and="this-is-att-value" xml:id="id8"/>
<beta class="content">
<mu/>
<mu attribute="solid 1px green" xml:lang="no-nb" xml:id="id9"/>
<delta class="false" xml:lang="no">
<gamma object="solid 1px green" xml:lang="no-nb" xml:id="id10">
<theta xml:id="id11"/>
<zeta and="content" xml:lang="en-US">
<tau class="100%">
<nu>
<epsilon or="content" xml:lang="no-nb">
<green>This text must be green</green>
</epsilon>
</nu>
</tau>
</zeta>
</gamma>
</delta>
</beta>
</sigma>
</lambda>
</tree>
</test>
<test>
<xpath>//psi[contains(@attribute,"alue")][@xml:id="id1"]//eta[@class="content"][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::zeta[@object][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//chi[contains(@title,"0%")][@xml:lang="no"][@xml:id="id2"]//nu[starts-with(concat(@string,"-"),"100%-")][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]//iota[contains(concat(@att,"$"),"e$")][@xml:lang="no"][@xml:id="id4"]/omega[starts-with(@content,"attribute-va")][@xml:lang="en-US"][@xml:id="id5"][not(preceding-sibling::*)]/beta[@xml:lang="nb"][not(preceding-sibling::*)]/tau[@delete="_blank"][@xml:lang="en-GB"][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[not(child::node())][following-sibling::alpha[@attr][following-sibling::*[position()=3]][following-sibling::pi[starts-with(concat(@attrib,"-"),"false-")][@xml:lang="no-nb"][following-sibling::*[position()=2]][not(child::node())][following-sibling::iota[@xml:lang="no"][following-sibling::*[position()=1]][not(child::node())][following-sibling::lambda[@xml:id="id7"][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<psi attribute="this.nodeValue" xml:id="id1">
<eta class="content" xml:lang="no"/>
<zeta object="attribute">
<chi title="100%" xml:lang="no" xml:id="id2">
<nu string="100%" xml:id="id3">
<iota att="attribute-value" xml:lang="no" xml:id="id4">
<omega content="attribute-value" xml:lang="en-US" xml:id="id5">
<beta xml:lang="nb">
<tau delete="_blank" xml:lang="en-GB" xml:id="id6"/>
<gamma/>
<alpha attr="solid 1px green"/>
<pi attrib="false" xml:lang="no-nb"/>
<iota xml:lang="no"/>
<lambda xml:id="id7">
<green>This text must be green</green>
</lambda>
</beta>
</omega>
</iota>
</nu>
</chi>
</zeta>
</psi>
</tree>
</test>
<test>
<xpath>//upsilon[starts-with(@name,"true")][@xml:lang="en-GB"][@xml:id="id1"]/mu[starts-with(@src,"_blank")][not(preceding-sibling::mu)][following-sibling::mu[@xml:lang="nb"][not(following-sibling::*)]/tau[@delete="content"][@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::phi[preceding-sibling::*[position() = 1]][following-sibling::*[position()=5]][following-sibling::chi[@xml:lang="no-nb"][following-sibling::*[@xml:lang="nb"][@xml:id="id2"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::theta[@true][@xml:id="id3"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::sigma[contains(@desciption,"deVal")][@xml:lang="no-nb"][following-sibling::iota[@xml:id="id4"]/epsilon[@attr][@xml:lang="en"][not(preceding-sibling::*)]//nu[not(following-sibling::*)]//delta[@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::psi[@xml:id="id6"][preceding-sibling::*[position() = 1]]/gamma[@xml:lang="en-GB"]][position() = 1]][position() = 1]]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<upsilon name="true" xml:lang="en-GB" xml:id="id1">
<mu src="_blank"/>
<mu xml:lang="nb">
<tau delete="content" xml:lang="no-nb"/>
<phi/>
<chi xml:lang="no-nb"/>
<any xml:lang="nb" xml:id="id2"/>
<theta true="another attribute value" xml:id="id3"/>
<sigma desciption="this.nodeValue" xml:lang="no-nb"/>
<iota xml:id="id4">
<epsilon attr="this.nodeValue" xml:lang="en">
<nu>
<delta xml:id="id5"/>
<psi xml:id="id6">
<gamma xml:lang="en-GB">
<green>This text must be green</green>
</gamma>
</psi>
</nu>
</epsilon>
</iota>
</mu>
</upsilon>
</tree>
</test>
<test>
<xpath>//omega[@false][@xml:id="id1"]/omicron[@xml:lang="nb"][@xml:id="id2"]//alpha[@attr][@xml:lang="no"]//lambda[@att][@xml:lang="nb"][@xml:id="id3"][following-sibling::*[position()=1]][not(child::node())][following-sibling::omicron[starts-with(concat(@true,"-"),"attribute-")][@xml:id="id4"][preceding-sibling::*[position() = 1]]/eta[contains(@or,"e")][not(preceding-sibling::*)][not(following-sibling::*)]/kappa[@xml:lang="no"][not(following-sibling::*)]//tau[not(preceding-sibling::*)]/lambda[@src][@xml:lang="nb"][following-sibling::eta[contains(concat(@false,"$"),"e$")][@xml:id="id5"][not(following-sibling::*)]]]</xpath>
<tree>
<omega false="content" xml:id="id1">
<omicron xml:lang="nb" xml:id="id2">
<alpha attr="content" xml:lang="no">
<lambda att="_blank" xml:lang="nb" xml:id="id3"/>
<omicron true="attribute-value" xml:id="id4">
<eta or="attribute">
<kappa xml:lang="no">
<tau>
<lambda src="another attribute value" xml:lang="nb"/>
<eta false="this-is-att-value" xml:id="id5">
<green>This text must be green</green>
</eta>
</tau>
</kappa>
</eta>
</omicron>
</alpha>
</omicron>
</omega>
</tree>
</test>
<test>
<xpath>//eta[@xml:id="id1"]/eta[@string][not(preceding-sibling::*)]//tau[@xml:id="id2"][not(child::node())][following-sibling::omicron[@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=6]][not(child::node())][following-sibling::alpha[starts-with(concat(@class,"-"),"this-")][@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 2]][following-sibling::phi[starts-with(concat(@desciption,"-"),"this.nodeValue-")][preceding-sibling::*[position() = 3]][following-sibling::*[position()=4]][following-sibling::phi[@and][@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::iota[contains(concat(@number,"$"),"nk$")][@xml:lang="no"][preceding-sibling::*[position() = 5]][following-sibling::omega[@xml:lang="en-GB"][preceding-sibling::*[position() = 6]][not(child::node())][following-sibling::*[@and][@xml:lang="en-US"][preceding-sibling::*[position() = 7]][not(following-sibling::*)]/iota[not(preceding-sibling::*)][not(child::node())][following-sibling::iota[@xml:id="id5"][following-sibling::theta[@name][following-sibling::*[position()=3]][not(child::node())][following-sibling::iota[@attrib][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::eta[@name][@xml:lang="en-US"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::tau[starts-with(@data,"another attribute")][@xml:lang="no"][@xml:id="id6"][not(following-sibling::*)]/mu[not(preceding-sibling::*)][not(child::node())][following-sibling::rho[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/iota[@xml:lang="en-US"][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<eta xml:id="id1">
<eta string="123456789">
<tau xml:id="id2"/>
<omicron xml:lang="en"/>
<alpha class="this-is-att-value" xml:lang="no" xml:id="id3"/>
<phi desciption="this.nodeValue"/>
<phi and="attribute" xml:lang="no" xml:id="id4"/>
<iota number="_blank" xml:lang="no"/>
<omega xml:lang="en-GB"/>
<any and="100%" xml:lang="en-US">
<iota/>
<iota xml:id="id5"/>
<theta name="content"/>
<iota attrib="this.nodeValue"/>
<eta name="solid 1px green" xml:lang="en-US"/>
<tau data="another attribute value" xml:lang="no" xml:id="id6">
<mu/>
<rho>
<iota xml:lang="en-US">
<green>This text must be green</green>
</iota>
</rho>
</tau>
</any>
</eta>
</eta>
</tree>
</test>
<test>
<xpath>//iota[@xml:lang="nb"][@xml:id="id1"]//theta[starts-with(concat(@false,"-"),"solid 1px green-")][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/nu[@xml:lang="en"][not(child::node())][following-sibling::gamma[@src][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//sigma[@xml:lang="en-GB"][not(child::node())][following-sibling::rho[following-sibling::gamma[@xml:lang="en"][preceding-sibling::*[position() = 2]]/kappa[starts-with(@data,"this-is-a")][@xml:lang="en-US"][@xml:id="id4"]//kappa[@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]//sigma[@name][not(preceding-sibling::*)][following-sibling::nu[@xml:id="id5"][following-sibling::*[position()=1]][following-sibling::delta[@token][@xml:lang="nb"][@xml:id="id6"][preceding-sibling::*[position() = 2]]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<iota xml:lang="nb" xml:id="id1">
<theta false="solid 1px green" xml:id="id2">
<nu xml:lang="en"/>
<gamma src="content" xml:id="id3">
<sigma xml:lang="en-GB"/>
<rho/>
<gamma xml:lang="en">
<kappa data="this-is-att-value" xml:lang="en-US" xml:id="id4">
<kappa xml:lang="en">
<sigma name="content"/>
<nu xml:id="id5"/>
<delta token="true" xml:lang="nb" xml:id="id6">
<green>This text must be green</green>
</delta>
</kappa>
</kappa>
</gamma>
</gamma>
</theta>
</iota>
</tree>
</test>
<test>
<xpath>//theta/omega[starts-with(@abort,"fal")][not(following-sibling::*)]//rho[@xml:lang="en-GB"][following-sibling::*[position()=4]][following-sibling::sigma[@name="100%"][@xml:lang="en"][not(child::node())][following-sibling::rho[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][following-sibling::phi[@xml:lang="en"][@xml:id="id1"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=1]][following-sibling::upsilon[@xml:id="id2"][preceding-sibling::*[position() = 4]][not(following-sibling::*)][not(preceding-sibling::upsilon)]//kappa[@xml:id="id3"][following-sibling::beta[contains(concat(@string,"$"),"ontent$")][@xml:id="id4"][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[@data="true"][@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//lambda[@xml:lang="no-nb"][@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@xml:lang="nb"][not(following-sibling::*)]//delta[starts-with(concat(@data,"-"),"true-")][@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]//tau[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=3]][following-sibling::gamma[@xml:id="id7"][following-sibling::pi[starts-with(@content,"12")][@xml:lang="no-nb"][following-sibling::*[position()=1]][not(child::node())][following-sibling::eta[@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/rho[@xml:lang="en-GB"][@xml:id="id9"]/kappa[@xml:lang="no-nb"][@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]]]]]]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<theta>
<omega abort="false">
<rho xml:lang="en-GB"/>
<sigma name="100%" xml:lang="en"/>
<rho xml:lang="en-GB"/>
<phi xml:lang="en" xml:id="id1"/>
<upsilon xml:id="id2">
<kappa xml:id="id3"/>
<beta string="content" xml:id="id4"/>
<theta data="true" xml:lang="en-GB">
<lambda xml:lang="no-nb" xml:id="id5"/>
<xi xml:lang="nb">
<delta data="true" xml:id="id6">
<tau xml:lang="en"/>
<gamma xml:id="id7"/>
<pi content="123456789" xml:lang="no-nb"/>
<eta xml:lang="en-GB" xml:id="id8">
<rho xml:lang="en-GB" xml:id="id9">
<kappa xml:lang="no-nb" xml:id="id10">
<green>This text must be green</green>
</kappa>
</rho>
</eta>
</delta>
</xi>
</theta>
</upsilon>
</omega>
</theta>
</tree>
</test>
<test>
<xpath>//delta[@xml:id="id1"]/pi[contains(concat(@att,"$"),"e$")][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//pi[not(preceding-sibling::*)][not(parent::*/*[position()=2])]/zeta[starts-with(concat(@attr,"-"),"123456789-")][@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/gamma[@xml:id="id4"][not(following-sibling::*)]//nu[@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[starts-with(concat(@false,"-"),"solid 1px green-")][@xml:lang="no"][@xml:id="id5"]//gamma[@or][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[starts-with(concat(@true,"-"),"this.nodeValue-")][@xml:lang="en"][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]]]</xpath>
<tree>
<delta xml:id="id1">
<pi att="true"/>
<kappa xml:id="id2">
<pi>
<zeta attr="123456789" xml:lang="en-US" xml:id="id3">
<gamma xml:id="id4">
<nu xml:lang="en-GB"/>
<upsilon false="solid 1px green" xml:lang="no" xml:id="id5">
<gamma or="true"/>
<nu true="this.nodeValue" xml:lang="en" xml:id="id6">
<green>This text must be green</green>
</nu>
</upsilon>
</gamma>
</zeta>
</pi>
</kappa>
</delta>
</tree>
</test>
<test>
<xpath>//sigma[@xml:id="id1"]//eta[contains(concat(@content,"$"),"olid 1px green$")][@xml:lang="no"][@xml:id="id2"][not(child::node())][following-sibling::epsilon[@data][@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[starts-with(concat(@content,"-"),"true-")][@xml:id="id3"]//nu[@xml:lang="no-nb"][not(child::node())][following-sibling::omega[@attr="123456789"][@xml:lang="en-GB"][not(child::node())][following-sibling::pi[@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][following-sibling::lambda[@xml:lang="no"][not(following-sibling::*)]//zeta[@xml:id="id5"][not(following-sibling::*)]/lambda[@name][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::epsilon[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::*[@content][preceding-sibling::*[position() = 2]][not(following-sibling::any)]//epsilon[@attr][@xml:id="id6"][not(child::node())][following-sibling::nu[contains(concat(@attr,"$"),"_blank$")][@xml:lang="no"][@xml:id="id7"][not(preceding-sibling::nu)]/*[starts-with(concat(@false,"-"),"attribute value-")][@xml:lang="en-GB"][not(preceding-sibling::*)]//eta[starts-with(@src,"thi")][@xml:lang="nb"][not(preceding-sibling::*)]/sigma[@xml:lang="en"][not(child::node())][following-sibling::pi[contains(concat(@attribute,"$"),"bute$")][following-sibling::*[position()=1]][not(child::node())][following-sibling::lambda[@xml:id="id8"][preceding-sibling::*[position() = 2]]//epsilon[not(preceding-sibling::*)]//rho[contains(concat(@title,"$"),"true$")][@xml:id="id9"][not(following-sibling::*)]/epsilon[@xml:lang="en-GB"][@xml:id="id10"][following-sibling::pi[@xml:id="id11"]/epsilon[@xml:id="id12"]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<sigma xml:id="id1">
<eta content="solid 1px green" xml:lang="no" xml:id="id2"/>
<epsilon data="another attribute value" xml:lang="nb"/>
<delta content="true" xml:id="id3">
<nu xml:lang="no-nb"/>
<omega attr="123456789" xml:lang="en-GB"/>
<pi xml:id="id4"/>
<lambda xml:lang="no">
<zeta xml:id="id5">
<lambda name="another attribute value"/>
<epsilon xml:lang="no-nb"/>
<any content="another attribute value">
<epsilon attr="solid 1px green" xml:id="id6"/>
<nu attr="_blank" xml:lang="no" xml:id="id7">
<any false="attribute value" xml:lang="en-GB">
<eta src="this-is-att-value" xml:lang="nb">
<sigma xml:lang="en"/>
<pi attribute="attribute"/>
<lambda xml:id="id8">
<epsilon>
<rho title="true" xml:id="id9">
<epsilon xml:lang="en-GB" xml:id="id10"/>
<pi xml:id="id11">
<epsilon xml:id="id12">
<green>This text must be green</green>
</epsilon>
</pi>
</rho>
</epsilon>
</lambda>
</eta>
</any>
</nu>
</any>
</zeta>
</lambda>
</delta>
</sigma>
</tree>
</test>
<test>
<xpath>//delta[contains(concat(@att,"$")," 1px green$")][@xml:lang="no"][@xml:id="id1"]/omicron[@xml:lang="en"][following-sibling::*[position()=1]][not(child::node())][following-sibling::mu[@delete][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//epsilon[@xml:lang="nb"][not(parent::*/*[position()=2])]/kappa[contains(@desciption,"deV")][not(preceding-sibling::*)][following-sibling::rho[contains(concat(@object,"$"),"nk$")][preceding-sibling::*[position() = 1]][following-sibling::theta[@true="_blank"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/theta[@xml:lang="nb"][@xml:id="id3"][not(preceding-sibling::*)][position() = 1]]]]</xpath>
<tree>
<delta att="solid 1px green" xml:lang="no" xml:id="id1">
<omicron xml:lang="en"/>
<mu delete="this.nodeValue" xml:id="id2">
<epsilon xml:lang="nb">
<kappa desciption="this.nodeValue"/>
<rho object="_blank"/>
<theta true="_blank">
<theta xml:lang="nb" xml:id="id3">
<green>This text must be green</green>
</theta>
</theta>
</epsilon>
</mu>
</delta>
</tree>
</test>
<test>
<xpath>//beta[contains(@delete,"lue")]/nu[not(preceding-sibling::*)]/delta[@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]/psi[contains(concat(@att,"$"),".nodeValue$")][following-sibling::psi[@xml:id="id2"]//tau[@xml:lang="nb"]/rho[starts-with(concat(@token,"-"),"true-")][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[preceding-sibling::*[position() = 1]]//upsilon[@name="attribute value"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[starts-with(concat(@attribute,"-"),"_blank-")][not(following-sibling::*)]//xi[contains(@and,"ttribute ")][@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[@xml:lang="en-GB"][following-sibling::iota[starts-with(@and,"100")][@xml:lang="en"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[@xml:lang="en-GB"][@xml:id="id3"][not(following-sibling::*)]//tau[@number][@xml:lang="no-nb"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/omicron[@xml:lang="en-GB"][not(child::node())][following-sibling::iota[@and][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::tau[@xml:id="id5"]/phi[starts-with(concat(@title,"-"),"_blank-")][@xml:lang="nb"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::alpha[@xml:id="id7"][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<beta delete="attribute value">
<nu>
<delta xml:id="id1">
<psi att="this.nodeValue"/>
<psi xml:id="id2">
<tau xml:lang="nb">
<rho token="true"/>
<kappa>
<upsilon name="attribute value"/>
<xi attribute="_blank">
<xi and="another attribute value" xml:lang="no"/>
<nu xml:lang="en-GB"/>
<iota and="100%" xml:lang="en"/>
<nu xml:lang="en-GB" xml:id="id3">
<tau number="solid 1px green" xml:lang="no-nb" xml:id="id4">
<omicron xml:lang="en-GB"/>
<iota and="this.nodeValue" xml:lang="no"/>
<tau xml:id="id5">
<phi title="_blank" xml:lang="nb" xml:id="id6"/>
<alpha xml:id="id7">
<green>This text must be green</green>
</alpha>
</tau>
</tau>
</nu>
</xi>
</kappa>
</tau>
</psi>
</delta>
</nu>
</beta>
</tree>
</test>
<test>
<xpath>//gamma[@or][@xml:lang="en"]//nu[@xml:lang="en-GB"][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//sigma[starts-with(concat(@object,"-"),"solid 1px green-")][@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//sigma[contains(concat(@string,"$")," green$")][following-sibling::kappa[@xml:lang="nb"][@xml:id="id3"][following-sibling::eta[starts-with(@token,"another")][@xml:id="id4"][following-sibling::*[position()=3]][following-sibling::nu[contains(@false,"te-value")][preceding-sibling::*[position() = 3]][following-sibling::iota[preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::epsilon[contains(@attr,"olid 1px gre")][@xml:id="id5"][preceding-sibling::*[position() = 5]]/zeta[@true][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[contains(@abort,"t")][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//xi[@xml:id="id7"][following-sibling::omicron[@src][preceding-sibling::*[position() = 1]]//alpha[starts-with(concat(@title,"-"),"content-")][@xml:id="id8"][not(following-sibling::*)]//iota[@abort][not(preceding-sibling::*)][not(following-sibling::*)]/upsilon[@xml:lang="no-nb"][@xml:id="id9"][not(following-sibling::*)]/alpha[starts-with(@string,"attribut")][@xml:lang="no-nb"][@xml:id="id10"]/kappa[not(child::node())][following-sibling::alpha[starts-with(@class,"123456789")][@xml:id="id11"]]]][position() = 1]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<gamma or="false" xml:lang="en">
<nu xml:lang="en-GB" xml:id="id1">
<sigma object="solid 1px green" xml:lang="no-nb" xml:id="id2">
<sigma string="solid 1px green"/>
<kappa xml:lang="nb" xml:id="id3"/>
<eta token="another attribute value" xml:id="id4"/>
<nu false="attribute-value"/>
<iota/>
<epsilon attr="solid 1px green" xml:id="id5">
<zeta true="attribute-value"/>
<alpha abort="true" xml:id="id6">
<xi xml:id="id7"/>
<omicron src="true">
<alpha title="content" xml:id="id8">
<iota abort="attribute">
<upsilon xml:lang="no-nb" xml:id="id9">
<alpha string="attribute" xml:lang="no-nb" xml:id="id10">
<kappa/>
<alpha class="123456789" xml:id="id11">
<green>This text must be green</green>
</alpha>
</alpha>
</upsilon>
</iota>
</alpha>
</omicron>
</alpha>
</epsilon>
</sigma>
</nu>
</gamma>
</tree>
</test>
<test>
<xpath>//alpha[@xml:id="id1"]/zeta[@xml:id="id2"][not(preceding-sibling::*)][following-sibling::xi[@xml:lang="nb"][@xml:id="id3"][preceding-sibling::*[position() = 1]][following-sibling::kappa[starts-with(@and,"another att")][@xml:lang="nb"][@xml:id="id4"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/phi[@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@xml:id="id5"][following-sibling::psi[starts-with(concat(@token,"-"),"attribute-")][@xml:id="id6"][preceding-sibling::*[position() = 2]][following-sibling::iota[following-sibling::*[position()=2]][not(child::node())][following-sibling::tau[contains(concat(@content,"$"),"3456789$")][@xml:id="id7"][preceding-sibling::*[position() = 4]][following-sibling::rho[@xml:id="id8"][preceding-sibling::*[position() = 5]][not(following-sibling::*)]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<alpha xml:id="id1">
<zeta xml:id="id2"/>
<xi xml:lang="nb" xml:id="id3"/>
<kappa and="another attribute value" xml:lang="nb" xml:id="id4">
<phi xml:lang="no-nb"/>
<tau xml:id="id5"/>
<psi token="attribute" xml:id="id6"/>
<iota/>
<tau content="123456789" xml:id="id7"/>
<rho xml:id="id8">
<green>This text must be green</green>
</rho>
</kappa>
</alpha>
</tree>
</test>
<test>
<xpath>//eta[@attr="100%"][@xml:lang="en"]/chi[@string="attribute-value"][@xml:id="id1"][not(following-sibling::*)]/epsilon[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::gamma[contains(@attrib,"ttribut")][@xml:lang="en"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::pi[preceding-sibling::*[position() = 2]]//nu[@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]/iota[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::tau[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::kappa[@data][@xml:lang="no-nb"][not(following-sibling::*)]/xi[@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[@xml:lang="no"][@xml:id="id2"][not(following-sibling::*)]//xi[@xml:id="id3"][not(following-sibling::*)]/nu[contains(concat(@name,"$"),"true$")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<eta attr="100%" xml:lang="en">
<chi string="attribute-value" xml:id="id1">
<epsilon xml:lang="nb"/>
<gamma attrib="attribute" xml:lang="en"/>
<pi>
<nu xml:lang="nb">
<iota xml:lang="nb"/>
<tau xml:lang="no"/>
<kappa data="attribute value" xml:lang="no-nb">
<xi xml:lang="nb"/>
<lambda xml:lang="no" xml:id="id2">
<xi xml:id="id3">
<nu name="true" xml:lang="en-GB">
<green>This text must be green</green>
</nu>
</xi>
</lambda>
</kappa>
</nu>
</pi>
</chi>
</eta>
</tree>
</test>
<test>
<xpath>//phi[@xml:lang="no-nb"]//theta[following-sibling::mu[starts-with(concat(@attr,"-"),"attribute-")][@xml:id="id1"][following-sibling::kappa[@xml:id="id2"][not(following-sibling::*)]//theta[@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]//*[contains(concat(@data,"$"),"100%$")][@xml:id="id3"][not(child::node())][following-sibling::delta[@true="123456789"][preceding-sibling::*[position() = 1]]//epsilon[@xml:lang="en-GB"][@xml:id="id4"][not(child::node())][following-sibling::zeta/psi[@xml:lang="en-GB"]/kappa[not(preceding-sibling::*)][not(preceding-sibling::kappa)][not(child::node())][following-sibling::nu[starts-with(@abort,"_blan")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/lambda[contains(@false,"t")][not(preceding-sibling::*)][not(following-sibling::*)]/chi[following-sibling::omicron[@number="false"][preceding-sibling::*[position() = 1]]/tau[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::omega[@class][@xml:lang="en"]//chi[@or][following-sibling::*[position()=1]][following-sibling::eta[@xml:lang="no-nb"][@xml:id="id5"][not(following-sibling::*)]//kappa[starts-with(concat(@or,"-"),"100%-")][@xml:id="id6"]//beta[@xml:lang="no"][@xml:id="id7"][not(preceding-sibling::*)][position() = 1]]][position() = 1]]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<phi xml:lang="no-nb">
<theta/>
<mu attr="attribute-value" xml:id="id1"/>
<kappa xml:id="id2">
<theta xml:lang="en-GB">
<any data="100%" xml:id="id3"/>
<delta true="123456789">
<epsilon xml:lang="en-GB" xml:id="id4"/>
<zeta>
<psi xml:lang="en-GB">
<kappa/>
<nu abort="_blank">
<lambda false="content">
<chi/>
<omicron number="false">
<tau xml:lang="en"/>
<omega class="true" xml:lang="en">
<chi or="123456789"/>
<eta xml:lang="no-nb" xml:id="id5">
<kappa or="100%" xml:id="id6">
<beta xml:lang="no" xml:id="id7">
<green>This text must be green</green>
</beta>
</kappa>
</eta>
</omega>
</omicron>
</lambda>
</nu>
</psi>
</zeta>
</delta>
</theta>
</kappa>
</phi>
</tree>
</test>
<test>
<xpath>//lambda[@xml:lang="no-nb"][@xml:id="id1"]//epsilon[@xml:lang="en-GB"][not(following-sibling::*)]//upsilon[contains(@or,"f")][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::tau[@object="123456789"][@xml:lang="nb"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::*[starts-with(concat(@delete,"-"),"123456789-")][@xml:lang="en"]//pi[starts-with(concat(@string,"-"),"false-")][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[@number][@xml:lang="en-GB"][@xml:id="id4"][not(following-sibling::*)]/nu[contains(concat(@class,"$"),"green$")][not(preceding-sibling::*)][not(following-sibling::*)]/eta[@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/nu[starts-with(@abort,"tr")][@xml:id="id6"][following-sibling::*[position()=2]][not(child::node())][following-sibling::mu[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[starts-with(@src,"at")][@xml:id="id7"][preceding-sibling::*[position() = 2]]/delta[contains(@or,"ute valu")][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::upsilon[@object][@xml:id="id8"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/kappa//theta[not(following-sibling::*)]//theta[@xml:lang="no"][not(preceding-sibling::*)]/epsilon[@xml:lang="no"][@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)]/gamma[contains(@attrib,"e")][@xml:id="id10"][following-sibling::lambda[preceding-sibling::*[position() = 1]][following-sibling::*[position()=3]][not(child::node())][following-sibling::kappa[preceding-sibling::*[position() = 2]][following-sibling::iota[not(child::node())][following-sibling::nu[@delete][preceding-sibling::*[position() = 4]][position() = 1]][position() = 1]]]][position() = 1]]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<lambda xml:lang="no-nb" xml:id="id1">
<epsilon xml:lang="en-GB">
<upsilon or="false" xml:lang="en-US"/>
<tau object="123456789" xml:lang="nb" xml:id="id2"/>
<any delete="123456789" xml:lang="en">
<pi string="false" xml:id="id3"/>
<alpha number="100%" xml:lang="en-GB" xml:id="id4">
<nu class="solid 1px green">
<eta xml:id="id5">
<nu abort="true" xml:id="id6"/>
<mu xml:lang="no"/>
<delta src="attribute value" xml:id="id7">
<delta or="attribute value" xml:lang="en-US"/>
<upsilon object="attribute-value" xml:id="id8">
<kappa>
<theta>
<theta xml:lang="no">
<epsilon xml:lang="no" xml:id="id9">
<gamma attrib="attribute value" xml:id="id10"/>
<lambda/>
<kappa/>
<iota/>
<nu delete="false">
<green>This text must be green</green>
</nu>
</epsilon>
</theta>
</theta>
</kappa>
</upsilon>
</delta>
</eta>
</nu>
</alpha>
</any>
</epsilon>
</lambda>
</tree>
</test>
<test>
<xpath>//psi[@xml:lang="en-GB"][@xml:id="id1"]//gamma[@xml:id="id2"][not(preceding-sibling::*)]//kappa[@xml:lang="no"][@xml:id="id3"][not(following-sibling::*)]/nu[@name="123456789"][not(preceding-sibling::*)][not(following-sibling::*)]//theta[@att][following-sibling::gamma[@att][@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[starts-with(@or,"attribute")][@xml:lang="en-GB"][preceding-sibling::*[position() = 2]]//gamma[@xml:id="id5"]//theta[@xml:id="id6"][not(preceding-sibling::*)]/rho[@xml:id="id7"][not(preceding-sibling::*)][following-sibling::nu[starts-with(@content,"another attribute value")][preceding-sibling::*[position() = 1]]/upsilon[@true="100%"][@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::delta//alpha[@xml:id="id8"][following-sibling::*[position()=1]][following-sibling::sigma[@xml:lang="en-US"][@xml:id="id9"][not(following-sibling::*)]//theta[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//omicron[starts-with(@class,"fal")][@xml:id="id10"][not(preceding-sibling::*)]//alpha[contains(concat(@src,"$"),"alse$")][@xml:id="id11"][following-sibling::tau[@xml:lang="no"][@xml:id="id12"]/omega[not(following-sibling::*)]//alpha[contains(concat(@attribute,"$"),"content$")][@xml:lang="en"][not(preceding-sibling::*)][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<psi xml:lang="en-GB" xml:id="id1">
<gamma xml:id="id2">
<kappa xml:lang="no" xml:id="id3">
<nu name="123456789">
<theta att="attribute-value"/>
<gamma att="_blank" xml:lang="no" xml:id="id4"/>
<alpha or="attribute" xml:lang="en-GB">
<gamma xml:id="id5">
<theta xml:id="id6">
<rho xml:id="id7"/>
<nu content="another attribute value">
<upsilon true="100%" xml:lang="no-nb"/>
<delta>
<alpha xml:id="id8"/>
<sigma xml:lang="en-US" xml:id="id9">
<theta xml:lang="no-nb">
<omicron class="false" xml:id="id10">
<alpha src="false" xml:id="id11"/>
<tau xml:lang="no" xml:id="id12">
<omega>
<alpha attribute="content" xml:lang="en">
<green>This text must be green</green>
</alpha>
</omega>
</tau>
</omicron>
</theta>
</sigma>
</delta>
</nu>
</theta>
</gamma>
</alpha>
</nu>
</kappa>
</gamma>
</psi>
</tree>
</test>
<test>
<xpath>//gamma[@xml:lang="nb"][@xml:id="id1"]//epsilon[@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)]//nu[@and="false"][not(preceding-sibling::*)][following-sibling::chi[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/nu[@attr][following-sibling::*[position()=2]][following-sibling::chi[@src="_blank"][not(child::node())][following-sibling::chi[@xml:lang="en-US"][preceding-sibling::*[position() = 2]]/chi[@insert="content"][@xml:lang="no"][@xml:id="id3"]]][position() = 1]]</xpath>
<tree>
<gamma xml:lang="nb" xml:id="id1">
<epsilon xml:lang="no-nb" xml:id="id2">
<nu and="false"/>
<chi>
<nu attr="_blank"/>
<chi src="_blank"/>
<chi xml:lang="en-US">
<chi insert="content" xml:lang="no" xml:id="id3">
<green>This text must be green</green>
</chi>
</chi>
</chi>
</epsilon>
</gamma>
</tree>
</test>
<test>
<xpath>//nu[@xml:lang="nb"][@xml:id="id1"]//beta[@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::sigma[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//kappa[not(preceding-sibling::*)][not(child::node())][following-sibling::*[preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::mu[@xml:lang="en"][not(child::node())][following-sibling::beta[@token][@xml:lang="no"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//delta[@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]/rho[contains(concat(@abort,"$"),"e$")][@xml:lang="nb"]/epsilon[@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::beta[@xml:id="id3"][preceding-sibling::*[position() = 1]][following-sibling::psi[starts-with(@desciption,"tr")][@xml:lang="en-GB"][@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::tau[starts-with(@object,"attribute")][@xml:id="id5"][preceding-sibling::*[position() = 3]]//omicron[@or][@xml:lang="no-nb"][not(preceding-sibling::*)][not(preceding-sibling::omicron)]]]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<nu xml:lang="nb" xml:id="id1">
<beta xml:lang="en" xml:id="id2"/>
<sigma xml:lang="en-GB">
<kappa/>
<any/>
<mu xml:lang="en"/>
<beta token="another attribute value" xml:lang="no">
<delta xml:lang="en-GB">
<rho abort="attribute value" xml:lang="nb">
<epsilon xml:lang="en-GB"/>
<beta xml:id="id3"/>
<psi desciption="true" xml:lang="en-GB" xml:id="id4"/>
<tau object="attribute-value" xml:id="id5">
<omicron or="this-is-att-value" xml:lang="no-nb">
<green>This text must be green</green>
</omicron>
</tau>
</rho>
</delta>
</beta>
</sigma>
</nu>
</tree>
</test>
<test>
<xpath>//alpha[@xml:lang="no"][@xml:id="id1"]/pi[@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=4]][following-sibling::tau[@insert][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::eta[@abort="_blank"][@xml:lang="no"][not(child::node())][following-sibling::chi[@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 3]][following-sibling::epsilon[contains(@true,"another attribute")][not(following-sibling::*)]//sigma[@xml:id="id4"][not(child::node())][following-sibling::lambda[preceding-sibling::*[position() = 1]]//rho[not(preceding-sibling::*)][following-sibling::phi[@xml:id="id5"][following-sibling::omicron[@xml:lang="en-US"][@xml:id="id6"]]]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<alpha xml:lang="no" xml:id="id1">
<pi xml:lang="no-nb" xml:id="id2"/>
<tau insert="123456789" xml:lang="no-nb"/>
<eta abort="_blank" xml:lang="no"/>
<chi xml:lang="en-US" xml:id="id3"/>
<epsilon true="another attribute value">
<sigma xml:id="id4"/>
<lambda>
<rho/>
<phi xml:id="id5"/>
<omicron xml:lang="en-US" xml:id="id6">
<green>This text must be green</green>
</omicron>
</lambda>
</epsilon>
</alpha>
</tree>
</test>
<test>
<xpath>//phi/epsilon[@xml:lang="en-GB"][@xml:id="id1"][not(following-sibling::*)]//iota[@xml:id="id2"][not(following-sibling::*)]/beta[@attrib][@xml:id="id3"][not(preceding-sibling::*)]//lambda[@data="attribute"][@xml:lang="nb"][not(preceding-sibling::*)]/epsilon[starts-with(concat(@string,"-"),"false-")][@xml:lang="nb"][@xml:id="id4"][not(preceding-sibling::*)]/xi[@or][not(preceding-sibling::*)][not(following-sibling::*)]/lambda[starts-with(concat(@content,"-"),"123456789-")][@xml:lang="no"][following-sibling::*[position()=1]][following-sibling::epsilon[@xml:lang="nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]]//kappa[@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]//psi[contains(@att,"10")][not(preceding-sibling::*)][following-sibling::iota[@xml:lang="no"][@xml:id="id7"]/upsilon[@content][@xml:lang="no-nb"][following-sibling::*[position()=2]][not(child::node())][following-sibling::beta[@and="100%"][following-sibling::*[position()=1]][following-sibling::nu[preceding-sibling::*[position() = 2]]/omicron[@xml:lang="no-nb"][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]//theta[@name="this-is-att-value"][@xml:lang="en"][@xml:id="id9"][not(following-sibling::*)]/nu[contains(concat(@and,"$"),"te value$")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]/beta[@xml:id="id10"][not(preceding-sibling::*)][position() = 1]][position() = 1]]]]</xpath>
<tree>
<phi>
<epsilon xml:lang="en-GB" xml:id="id1">
<iota xml:id="id2">
<beta attrib="100%" xml:id="id3">
<lambda data="attribute" xml:lang="nb">
<epsilon string="false" xml:lang="nb" xml:id="id4">
<xi or="_blank">
<lambda content="123456789" xml:lang="no"/>
<epsilon xml:lang="nb" xml:id="id5">
<kappa xml:id="id6">
<psi att="100%"/>
<iota xml:lang="no" xml:id="id7">
<upsilon content="content" xml:lang="no-nb"/>
<beta and="100%"/>
<nu>
<omicron xml:lang="no-nb" xml:id="id8">
<theta name="this-is-att-value" xml:lang="en" xml:id="id9">
<nu and="attribute value" xml:lang="en-GB">
<beta xml:id="id10">
<green>This text must be green</green>
</beta>
</nu>
</theta>
</omicron>
</nu>
</iota>
</kappa>
</epsilon>
</xi>
</epsilon>
</lambda>
</beta>
</iota>
</epsilon>
</phi>
</tree>
</test>
<test>
<xpath>//beta[contains(concat(@attribute,"$"),"9$")][@xml:lang="nb"]//xi[@xml:id="id1"][following-sibling::*[position()=5]][not(child::node())][following-sibling::pi[@xml:lang="en"][not(child::node())][following-sibling::upsilon[@xml:lang="en"][following-sibling::iota[contains(@title,"lue")][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::theta[starts-with(concat(@attribute,"-"),"attribute-")][@xml:id="id2"][preceding-sibling::*[position() = 4]][following-sibling::omega[contains(@delete,"9")][@xml:lang="en"][not(following-sibling::*)]/tau[@xml:lang="no"][not(preceding-sibling::*)]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<beta attribute="123456789" xml:lang="nb">
<xi xml:id="id1"/>
<pi xml:lang="en"/>
<upsilon xml:lang="en"/>
<iota title="this.nodeValue"/>
<theta attribute="attribute-value" xml:id="id2"/>
<omega delete="123456789" xml:lang="en">
<tau xml:lang="no">
<green>This text must be green</green>
</tau>
</omega>
</beta>
</tree>
</test>
<test>
<xpath>//lambda[starts-with(concat(@name,"-"),"true-")]//beta[@xml:lang="en"][@xml:id="id1"][following-sibling::nu[contains(concat(@data,"$"),"attribute value$")][@xml:lang="no-nb"]//upsilon[contains(@number,"alue")][following-sibling::delta[@xml:lang="nb"][following-sibling::delta[@xml:lang="no-nb"][@xml:id="id2"][following-sibling::chi[@xml:lang="en-GB"][preceding-sibling::*[position() = 3]][following-sibling::epsilon[@attribute][@xml:id="id3"][preceding-sibling::*[position() = 4]][following-sibling::kappa[@abort="123456789"][@xml:lang="no-nb"][not(following-sibling::*)]//omega[@xml:lang="nb"][following-sibling::epsilon[not(following-sibling::*)]//omicron[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::pi//lambda[not(following-sibling::*)]]]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<lambda name="true">
<beta xml:lang="en" xml:id="id1"/>
<nu data="attribute value" xml:lang="no-nb">
<upsilon number="attribute-value"/>
<delta xml:lang="nb"/>
<delta xml:lang="no-nb" xml:id="id2"/>
<chi xml:lang="en-GB"/>
<epsilon attribute="solid 1px green" xml:id="id3"/>
<kappa abort="123456789" xml:lang="no-nb">
<omega xml:lang="nb"/>
<epsilon>
<omicron xml:lang="en"/>
<pi>
<lambda>
<green>This text must be green</green>
</lambda>
</pi>
</epsilon>
</kappa>
</nu>
</lambda>
</tree>
</test>
<test>
<xpath>//phi[@xml:lang="en"][@xml:id="id1"]/kappa[@token][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::upsilon[@xml:lang="en-GB"][@xml:id="id2"][not(following-sibling::*)]//iota[following-sibling::*[position()=1]][following-sibling::pi[@class][@xml:lang="nb"]/iota[starts-with(concat(@attribute,"-"),"content-")][@xml:lang="en"][@xml:id="id3"][not(following-sibling::*)]/zeta[@xml:lang="en"][not(child::node())][following-sibling::epsilon[@content][not(following-sibling::*)]//lambda[@xml:id="id4"]/lambda[@name][not(preceding-sibling::*)][following-sibling::theta[@xml:lang="nb"]/xi[@xml:id="id5"][not(following-sibling::*)]/iota[starts-with(@src,"100")][@xml:id="id6"][not(following-sibling::*)]/rho[@xml:lang="en-US"][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]/nu[@insert][@xml:lang="no-nb"][@xml:id="id8"][not(child::node())][following-sibling::omicron[starts-with(concat(@name,"-"),"solid 1px green-")][@xml:lang="en"][@xml:id="id9"][not(following-sibling::*)][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<phi xml:lang="en" xml:id="id1">
<kappa token="attribute" xml:lang="nb"/>
<upsilon xml:lang="en-GB" xml:id="id2">
<iota/>
<pi class="false" xml:lang="nb">
<iota attribute="content" xml:lang="en" xml:id="id3">
<zeta xml:lang="en"/>
<epsilon content="123456789">
<lambda xml:id="id4">
<lambda name="100%"/>
<theta xml:lang="nb">
<xi xml:id="id5">
<iota src="100%" xml:id="id6">
<rho xml:lang="en-US" xml:id="id7">
<nu insert="this.nodeValue" xml:lang="no-nb" xml:id="id8"/>
<omicron name="solid 1px green" xml:lang="en" xml:id="id9">
<green>This text must be green</green>
</omicron>
</rho>
</iota>
</xi>
</theta>
</lambda>
</epsilon>
</iota>
</pi>
</upsilon>
</phi>
</tree>
</test>
<test>
<xpath>//sigma[@xml:id="id1"]//iota[contains(concat(@number,"$"),"odeValue$")][@xml:id="id2"]//iota[@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/iota[@content][not(preceding-sibling::*)][not(child::node())][following-sibling::delta[following-sibling::rho[@xml:lang="en-US"][preceding-sibling::*[position() = 2]][following-sibling::iota[following-sibling::theta[@true][@xml:lang="nb"][@xml:id="id4"][preceding-sibling::*[position() = 4]][following-sibling::xi[starts-with(concat(@content,"-"),"solid 1px green-")][@xml:lang="en-US"][not(child::node())][following-sibling::rho[contains(@content,"%")][@xml:id="id5"][not(child::node())][following-sibling::upsilon[@abort][@xml:id="id6"][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<sigma xml:id="id1">
<iota number="this.nodeValue" xml:id="id2">
<iota xml:id="id3">
<iota content="attribute-value"/>
<delta/>
<rho xml:lang="en-US"/>
<iota/>
<theta true="_blank" xml:lang="nb" xml:id="id4"/>
<xi content="solid 1px green" xml:lang="en-US"/>
<rho content="100%" xml:id="id5"/>
<upsilon abort="false" xml:id="id6">
<green>This text must be green</green>
</upsilon>
</iota>
</iota>
</sigma>
</tree>
</test>
<test>
<xpath>//iota[starts-with(concat(@or,"-"),"attribute value-")][@xml:id="id1"]/beta[not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[@xml:id="id2"]//nu[contains(@class,"e ")][@xml:lang="no"][@xml:id="id3"][not(following-sibling::*)]//upsilon[not(following-sibling::*)]/tau[@xml:lang="no"][@xml:id="id4"][not(following-sibling::*)]//xi[@att="true"][@xml:lang="no-nb"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/rho[@xml:lang="no"][@xml:id="id6"][position() = 1]]</xpath>
<tree>
<iota or="attribute value" xml:id="id1">
<beta/>
<lambda xml:id="id2">
<nu class="attribute value" xml:lang="no" xml:id="id3">
<upsilon>
<tau xml:lang="no" xml:id="id4">
<xi att="true" xml:lang="no-nb" xml:id="id5">
<rho xml:lang="no" xml:id="id6">
<green>This text must be green</green>
</rho>
</xi>
</tau>
</upsilon>
</nu>
</lambda>
</iota>
</tree>
</test>
<test>
<xpath>//mu//alpha[@xml:id="id1"][not(preceding-sibling::*)][following-sibling::theta[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::rho[@title][@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=4]][not(preceding-sibling::rho)][following-sibling::gamma[contains(concat(@att,"$"),"ute$")][@xml:lang="no-nb"][not(child::node())][following-sibling::tau[contains(@object,"b")][@xml:lang="en-US"][preceding-sibling::*[position() = 4]][following-sibling::zeta[@class][@xml:id="id4"][preceding-sibling::*[position() = 5]][not(child::node())][following-sibling::omicron[@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 6]][not(following-sibling::*)]//lambda[@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<mu>
<alpha xml:id="id1"/>
<theta xml:id="id2"/>
<rho title="solid 1px green" xml:lang="no" xml:id="id3"/>
<gamma att="attribute" xml:lang="no-nb"/>
<tau object="_blank" xml:lang="en-US"/>
<zeta class="attribute" xml:id="id4"/>
<omicron xml:lang="en-GB" xml:id="id5">
<lambda xml:lang="nb">
<green>This text must be green</green>
</lambda>
</omicron>
</mu>
</tree>
</test>
<test>
<xpath>//chi/tau[starts-with(@or,"this.nodeValu")][@xml:id="id1"][not(following-sibling::*)]//delta[contains(concat(@number,"$"),"ribute$")][@xml:lang="no-nb"]//alpha[@xml:id="id2"][not(child::node())][following-sibling::nu[starts-with(@false,"attribu")][@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//zeta[@false="attribute-value"][not(preceding-sibling::*)]//mu[@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[starts-with(@false,"123")][@xml:lang="nb"][@xml:id="id5"][not(following-sibling::*)]/zeta[contains(concat(@and,"$"),"ontent$")][@xml:lang="en"][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[@xml:lang="nb"][@xml:id="id6"]/delta[@title][@xml:lang="en"][not(child::node())][following-sibling::delta[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/alpha[@xml:lang="en-US"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@true][@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<chi>
<tau or="this.nodeValue" xml:id="id1">
<delta number="attribute" xml:lang="no-nb">
<alpha xml:id="id2"/>
<nu false="attribute-value" xml:lang="no" xml:id="id3">
<zeta false="attribute-value">
<mu xml:lang="en" xml:id="id4"/>
<phi false="123456789" xml:lang="nb" xml:id="id5">
<zeta and="content" xml:lang="en"/>
<alpha xml:lang="nb" xml:id="id6">
<delta title="attribute" xml:lang="en"/>
<delta xml:lang="no-nb">
<alpha xml:lang="en-US" xml:id="id7"/>
<psi true="_blank" xml:lang="en-GB">
<green>This text must be green</green>
</psi>
</delta>
</alpha>
</phi>
</zeta>
</nu>
</delta>
</tau>
</chi>
</tree>
</test>
<test>
<xpath>//mu[contains(concat(@attrib,"$"),"nk$")][@xml:id="id1"]/omicron[following-sibling::*[position()=1]][not(child::node())][following-sibling::iota[starts-with(@token,"another attribute va")]//upsilon[@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)]/omega[@abort][not(preceding-sibling::*)][not(following-sibling::*)]/delta[@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[@content][not(following-sibling::*)]/zeta[@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)]//gamma[contains(@true,"is-is-att-val")][@xml:lang="en"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[not(following-sibling::*)]//omicron[contains(@attr,"ue")][@xml:lang="no-nb"][not(preceding-sibling::*)]][position() = 1]][position() = 1]]</xpath>
<tree>
<mu attrib="_blank" xml:id="id1">
<omicron/>
<iota token="another attribute value">
<upsilon xml:lang="en" xml:id="id2">
<omega abort="this-is-att-value">
<delta xml:lang="en-GB"/>
<gamma content="attribute">
<zeta xml:lang="en-US" xml:id="id3">
<gamma true="this-is-att-value" xml:lang="en"/>
<sigma>
<omicron attr="true" xml:lang="no-nb">
<green>This text must be green</green>
</omicron>
</sigma>
</zeta>
</gamma>
</omega>
</upsilon>
</iota>
</mu>
</tree>
</test>
<test>
<xpath>//zeta[starts-with(concat(@desciption,"-"),"this.nodeValue-")]//chi[contains(concat(@attrib,"$"),"789$")][@xml:id="id1"][following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[@xml:lang="no"][not(following-sibling::*)]/eta[not(child::node())][following-sibling::chi[@and][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/eta[@title][@xml:lang="en-GB"][not(child::node())][following-sibling::beta[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]]]]</xpath>
<tree>
<zeta desciption="this.nodeValue">
<chi attrib="123456789" xml:id="id1"/>
<alpha xml:lang="no">
<eta/>
<chi and="another attribute value">
<eta title="_blank" xml:lang="en-GB"/>
<beta xml:lang="no">
<green>This text must be green</green>
</beta>
</chi>
</alpha>
</zeta>
</tree>
</test>
<test>
<xpath>//lambda[@att][@xml:lang="en-GB"]/delta[@xml:lang="en-GB"][@xml:id="id1"][not(preceding-sibling::*)]/upsilon[@token][@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::delta[starts-with(concat(@att,"-"),"_blank-")][@xml:lang="nb"][preceding-sibling::*[position() = 1]]/beta[starts-with(concat(@attrib,"-"),"attribute value-")][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::tau[@xml:id="id4"][following-sibling::rho[not(following-sibling::*)]/eta[contains(@object,"d 1")][following-sibling::sigma[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/iota[not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::nu[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::phi[contains(concat(@att,"$"),"ank$")][@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//alpha[@xml:lang="en-US"]//nu[@title][@xml:lang="en"][not(preceding-sibling::*)]/gamma[@delete][@xml:lang="en"][not(following-sibling::*)][position() = 1]]][position() = 1]]]]]</xpath>
<tree>
<lambda att="attribute" xml:lang="en-GB">
<delta xml:lang="en-GB" xml:id="id1">
<upsilon token="_blank" xml:lang="en-US" xml:id="id2"/>
<delta att="_blank" xml:lang="nb">
<beta attrib="attribute value" xml:id="id3"/>
<tau xml:id="id4"/>
<rho>
<eta object="solid 1px green"/>
<sigma>
<iota/>
<nu/>
<phi att="_blank" xml:lang="en-GB" xml:id="id5">
<alpha xml:lang="en-US">
<nu title="attribute value" xml:lang="en">
<gamma delete="this-is-att-value" xml:lang="en">
<green>This text must be green</green>
</gamma>
</nu>
</alpha>
</phi>
</sigma>
</rho>
</delta>
</delta>
</lambda>
</tree>
</test>
<test>
<xpath>//epsilon[@xml:lang="no-nb"][@xml:id="id1"]//chi[@abort][@xml:lang="nb"][@xml:id="id2"][following-sibling::psi[@false][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=3]][not(child::node())][following-sibling::theta[@attrib="attribute-value"][preceding-sibling::*[position() = 2]][following-sibling::upsilon[not(child::node())][following-sibling::upsilon[not(following-sibling::*)]/phi[@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::delta[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::*[@xml:lang="en"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::epsilon[contains(concat(@abort,"$"),"e$")][not(following-sibling::*)]//delta[@xml:id="id4"][not(following-sibling::*)]//xi[@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::theta[@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//omega[contains(@src,"-valu")][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::*[@xml:lang="no-nb"][@xml:id="id7"][following-sibling::*[position()=1]][following-sibling::xi[@xml:lang="en-US"][@xml:id="id8"]/zeta[@attribute][@xml:id="id9"][not(preceding-sibling::*)][not(child::node())][following-sibling::chi[@attr="attribute-value"][@xml:id="id10"][not(following-sibling::*)]//alpha[@xml:lang="no"]/zeta[@xml:lang="no"][not(following-sibling::*)]/zeta[@xml:lang="no-nb"][@xml:id="id11"][not(preceding-sibling::*)]//tau[contains(concat(@true,"$"),"3456789$")][@xml:id="id12"][not(following-sibling::*)]/pi[@xml:lang="nb"][following-sibling::iota[@xml:id="id13"]][position() = 1]][position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<epsilon xml:lang="no-nb" xml:id="id1">
<chi abort="false" xml:lang="nb" xml:id="id2"/>
<psi false="_blank" xml:lang="no-nb"/>
<theta attrib="attribute-value"/>
<upsilon/>
<upsilon>
<phi xml:id="id3"/>
<delta/>
<any xml:lang="en"/>
<epsilon abort="true">
<delta xml:id="id4">
<xi xml:lang="no-nb"/>
<theta xml:lang="no-nb" xml:id="id5">
<omega src="attribute-value" xml:id="id6"/>
<any xml:lang="no-nb" xml:id="id7"/>
<xi xml:lang="en-US" xml:id="id8">
<zeta attribute="another attribute value" xml:id="id9"/>
<chi attr="attribute-value" xml:id="id10">
<alpha xml:lang="no">
<zeta xml:lang="no">
<zeta xml:lang="no-nb" xml:id="id11">
<tau true="123456789" xml:id="id12">
<pi xml:lang="nb"/>
<iota xml:id="id13">
<green>This text must be green</green>
</iota>
</tau>
</zeta>
</zeta>
</alpha>
</chi>
</xi>
</theta>
</delta>
</epsilon>
</upsilon>
</epsilon>
</tree>
</test>
<test>
<xpath>//nu[contains(concat(@or,"$"),"reen$")][@xml:id="id1"]//epsilon[@xml:lang="en"][not(child::node())][following-sibling::epsilon[@xml:lang="en-US"][not(following-sibling::*)]/gamma[@xml:id="id2"][not(following-sibling::*)]//kappa[@abort][@xml:id="id3"][not(child::node())][following-sibling::mu[@xml:lang="no-nb"][@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/omega[@xml:lang="en"][@xml:id="id5"]/omicron[following-sibling::tau[starts-with(@attr,"attribu")][@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::rho[contains(concat(@class,"$"),".nodeValue$")][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/tau[not(preceding-sibling::*)][not(following-sibling::*)]/eta[contains(@title,"d")][@xml:id="id6"][not(following-sibling::*)]/xi[@class][@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[contains(@title,"456")][@xml:lang="no-nb"][@xml:id="id8"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[@attribute][@xml:lang="nb"][@xml:id="id9"][preceding-sibling::*[position() = 2]]//epsilon[@xml:id="id10"][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[contains(@desciption,"ue")][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=3]][following-sibling::lambda[@xml:id="id11"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::eta[@xml:lang="no"][following-sibling::*[contains(@data,"e")][@xml:lang="no"]/*[@xml:lang="en-GB"][@xml:id="id12"][not(preceding-sibling::*)][not(following-sibling::*)]/theta[contains(@attr,"ttribute")][@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)][not(preceding-sibling::theta or following-sibling::theta)]/chi[@xml:lang="en-US"][@xml:id="id13"][position() = 1]][position() = 1]][position() = 1]]]]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<nu or="solid 1px green" xml:id="id1">
<epsilon xml:lang="en"/>
<epsilon xml:lang="en-US">
<gamma xml:id="id2">
<kappa abort="100%" xml:id="id3"/>
<mu xml:lang="no-nb" xml:id="id4">
<omega xml:lang="en" xml:id="id5">
<omicron/>
<tau attr="attribute-value" xml:lang="nb"/>
<rho class="this.nodeValue">
<tau>
<eta title="this.nodeValue" xml:id="id6">
<xi class="another attribute value" xml:id="id7"/>
<xi title="123456789" xml:lang="no-nb" xml:id="id8"/>
<delta attribute="this-is-att-value" xml:lang="nb" xml:id="id9">
<epsilon xml:id="id10"/>
<nu desciption="attribute-value" xml:lang="en-US"/>
<lambda xml:id="id11"/>
<eta xml:lang="no"/>
<any data="false" xml:lang="no">
<any xml:lang="en-GB" xml:id="id12">
<theta attr="attribute" xml:lang="nb">
<chi xml:lang="en-US" xml:id="id13">
<green>This text must be green</green>
</chi>
</theta>
</any>
</any>
</delta>
</eta>
</tau>
</rho>
</omega>
</mu>
</gamma>
</epsilon>
</nu>
</tree>
</test>
<test>
<xpath>//omicron[@data="attribute-value"]/kappa[@xml:lang="en"][@xml:id="id1"]/beta[@and][following-sibling::*[position()=1]][not(child::node())][following-sibling::iota[preceding-sibling::*[position() = 1]][not(following-sibling::*)]//*[@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//lambda[@xml:lang="en-GB"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::lambda)][following-sibling::upsilon[@xml:lang="nb"][not(following-sibling::*)]/delta[starts-with(concat(@and,"-"),"true-")][@xml:id="id4"][following-sibling::*[position()=1]][not(child::node())][following-sibling::epsilon[contains(concat(@data,"$"),"px green$")]//iota[not(preceding-sibling::*)][following-sibling::*[position()=4]][following-sibling::delta[preceding-sibling::*[position() = 1]][following-sibling::chi[starts-with(concat(@number,"-"),"true-")][@xml:lang="no"][not(child::node())][following-sibling::upsilon[contains(concat(@class,"$"),"100%$")][@xml:lang="en-GB"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::omicron[@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]//lambda[@xml:id="id6"][not(preceding-sibling::*)]/sigma[@attribute][@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[preceding-sibling::*[position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<omicron data="attribute-value">
<kappa xml:lang="en" xml:id="id1">
<beta and="solid 1px green"/>
<iota>
<any xml:lang="en-US" xml:id="id2">
<lambda xml:lang="en-GB" xml:id="id3"/>
<upsilon xml:lang="nb">
<delta and="true" xml:id="id4"/>
<epsilon data="solid 1px green">
<iota/>
<delta/>
<chi number="true" xml:lang="no"/>
<upsilon class="100%" xml:lang="en-GB"/>
<omicron xml:lang="en-GB" xml:id="id5">
<lambda xml:id="id6">
<sigma attribute="another attribute value" xml:lang="en-GB"/>
<gamma>
<green>This text must be green</green>
</gamma>
</lambda>
</omicron>
</epsilon>
</upsilon>
</any>
</iota>
</kappa>
</omicron>
</tree>
</test>
<test>
<xpath>//theta[@number="content"][@xml:lang="en-GB"][@xml:id="id1"]//psi[@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]//rho[@attrib="true"][not(following-sibling::*)]//kappa[starts-with(@attrib,"content")][@xml:lang="en-US"][not(following-sibling::*)]//phi[starts-with(concat(@content,"-"),"attribute-")][not(preceding-sibling::*)][not(child::node())][following-sibling::delta[contains(@string,"ue")][@xml:id="id3"][preceding-sibling::*[position() = 1]]/upsilon[@xml:lang="en-US"]//chi[@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)]]</xpath>
<tree>
<theta number="content" xml:lang="en-GB" xml:id="id1">
<psi xml:lang="no-nb" xml:id="id2">
<rho attrib="true">
<kappa attrib="content" xml:lang="en-US">
<phi content="attribute"/>
<delta string="attribute value" xml:id="id3">
<upsilon xml:lang="en-US">
<chi xml:lang="en-US" xml:id="id4">
<green>This text must be green</green>
</chi>
</upsilon>
</delta>
</kappa>
</rho>
</psi>
</theta>
</tree>
</test>
<test>
<xpath>//delta[@insert][@xml:lang="no-nb"][@xml:id="id1"]//rho[@false="this-is-att-value"][not(following-sibling::*)]//kappa[contains(@and,"3456")][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@true][@xml:lang="en"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//beta[following-sibling::*[position()=1]][not(child::node())][following-sibling::omega[@xml:id="id3"]//chi[starts-with(concat(@object,"-"),"another attribute value-")][@xml:lang="en-GB"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::gamma[@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::*[@title][@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 2]]/chi[contains(concat(@or,"$"),"een$")][@xml:id="id7"][not(preceding-sibling::*)][not(preceding-sibling::chi)][following-sibling::tau[@content][@xml:lang="no"]//omega[starts-with(@number,"solid 1")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//psi[contains(concat(@src,"$"),"alse$")]/alpha[@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]//kappa[not(child::node())][following-sibling::phi[contains(concat(@abort,"$"),"0%$")][@xml:id="id8"][preceding-sibling::*[position() = 1]][not(preceding-sibling::phi)][following-sibling::tau[@xml:lang="no-nb"][@xml:id="id9"][preceding-sibling::*[position() = 2]][following-sibling::chi[@xml:lang="no"][@xml:id="id10"][preceding-sibling::*[position() = 3]][not(following-sibling::*)][not(preceding-sibling::chi)]/eta[@xml:lang="no"][@xml:id="id11"][not(preceding-sibling::*)][not(following-sibling::*)]/theta[@token][@xml:lang="en"][not(following-sibling::*)]][position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<delta insert="this-is-att-value" xml:lang="no-nb" xml:id="id1">
<rho false="this-is-att-value">
<kappa and="123456789"/>
<eta true="content" xml:lang="en" xml:id="id2">
<beta/>
<omega xml:id="id3">
<chi object="another attribute value" xml:lang="en-GB" xml:id="id4"/>
<gamma xml:id="id5"/>
<any title="false" xml:lang="en-US" xml:id="id6">
<chi or="solid 1px green" xml:id="id7"/>
<tau content="this-is-att-value" xml:lang="no">
<omega number="solid 1px green" xml:lang="no-nb">
<psi src="false">
<alpha xml:lang="nb">
<kappa/>
<phi abort="100%" xml:id="id8"/>
<tau xml:lang="no-nb" xml:id="id9"/>
<chi xml:lang="no" xml:id="id10">
<eta xml:lang="no" xml:id="id11">
<theta token="_blank" xml:lang="en">
<green>This text must be green</green>
</theta>
</eta>
</chi>
</alpha>
</psi>
</omega>
</tau>
</any>
</omega>
</eta>
</rho>
</delta>
</tree>
</test>
<test>
<xpath>//chi[@xml:lang="en"]//omicron[@object][not(preceding-sibling::*)][not(child::node())][following-sibling::beta[@att="attribute"][@xml:lang="en-GB"][@xml:id="id1"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//xi[starts-with(concat(@title,"-"),"this.nodeValue-")][not(preceding-sibling::*)][not(child::node())][following-sibling::psi[not(child::node())][following-sibling::psi[contains(@delete,"ib")][@xml:lang="nb"][preceding-sibling::*[position() = 2]]//theta[@xml:id="id2"][following-sibling::rho[not(child::node())][following-sibling::sigma[@xml:lang="no-nb"][position() = 1]]]]]]</xpath>
<tree>
<chi xml:lang="en">
<omicron object="100%"/>
<beta att="attribute" xml:lang="en-GB" xml:id="id1">
<xi title="this.nodeValue"/>
<psi/>
<psi delete="attribute" xml:lang="nb">
<theta xml:id="id2"/>
<rho/>
<sigma xml:lang="no-nb">
<green>This text must be green</green>
</sigma>
</psi>
</beta>
</chi>
</tree>
</test>
<test>
<xpath>//chi[@xml:lang="en-US"]/epsilon[contains(concat(@attrib,"$"),"ent$")][@xml:lang="en"][not(preceding-sibling::*)][not(child::node())][following-sibling::iota[preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::rho[not(following-sibling::*)]/chi[@true][@xml:lang="no"][@xml:id="id1"]//zeta[@xml:lang="en-GB"][@xml:id="id2"][following-sibling::theta[@xml:id="id3"][not(child::node())][following-sibling::delta[@xml:lang="no"][not(following-sibling::*)]//alpha[@or="true"][@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]]//nu[contains(concat(@attrib,"$"),"ue$")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/lambda[contains(concat(@delete,"$"),"se$")][@xml:lang="en"][@xml:id="id5"][following-sibling::kappa[@xml:lang="en-GB"][@xml:id="id6"][following-sibling::chi[contains(@attribute,"d 1px green")]/nu[@xml:lang="en-US"][@xml:id="id7"][not(following-sibling::*)]//phi[@xml:lang="no"][not(preceding-sibling::*)][following-sibling::nu[@xml:id="id8"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]]][position() = 1]]]]]]</xpath>
<tree>
<chi xml:lang="en-US">
<epsilon attrib="content" xml:lang="en"/>
<iota/>
<rho>
<chi true="this-is-att-value" xml:lang="no" xml:id="id1">
<zeta xml:lang="en-GB" xml:id="id2"/>
<theta xml:id="id3"/>
<delta xml:lang="no">
<alpha or="true" xml:lang="no" xml:id="id4"/>
<pi xml:lang="no-nb">
<nu attrib="this.nodeValue" xml:lang="no-nb">
<lambda delete="false" xml:lang="en" xml:id="id5"/>
<kappa xml:lang="en-GB" xml:id="id6"/>
<chi attribute="solid 1px green">
<nu xml:lang="en-US" xml:id="id7">
<phi xml:lang="no"/>
<nu xml:id="id8">
<green>This text must be green</green>
</nu>
</nu>
</chi>
</nu>
</pi>
</delta>
</chi>
</rho>
</chi>
</tree>
</test>
<test>
<xpath>//beta[starts-with(concat(@object,"-"),"_blank-")]//iota[not(following-sibling::*)]/theta[starts-with(concat(@number,"-"),"123456789-")][@xml:lang="nb"][@xml:id="id1"]//delta[@true][not(following-sibling::*)]//chi[@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)]/psi[contains(concat(@number,"$"),"ent$")]/beta[contains(concat(@name,"$"),"ribute value$")][@xml:id="id3"][not(preceding-sibling::*)]//omega[@object="attribute"][not(following-sibling::*)]/beta[not(preceding-sibling::*)][not(following-sibling::*)]//nu[@attribute="this-is-att-value"][@xml:lang="no"][not(child::node())][following-sibling::rho[@content][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/delta[not(child::node())][following-sibling::epsilon[starts-with(concat(@false,"-"),"true-")][@xml:lang="en-US"][preceding-sibling::*[position() = 1]]//mu[starts-with(@src,"fals")][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::alpha[starts-with(@object,"attribute v")][@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::sigma[starts-with(concat(@desciption,"-"),"_blank-")][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::rho[@xml:id="id6"][not(following-sibling::*)][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<beta object="_blank">
<iota>
<theta number="123456789" xml:lang="nb" xml:id="id1">
<delta true="solid 1px green">
<chi xml:lang="nb" xml:id="id2">
<psi number="content">
<beta name="attribute value" xml:id="id3">
<omega object="attribute">
<beta>
<nu attribute="this-is-att-value" xml:lang="no"/>
<rho content="attribute" xml:lang="en-US">
<delta/>
<epsilon false="true" xml:lang="en-US">
<mu src="false" xml:id="id4"/>
<alpha object="attribute value" xml:lang="en-GB" xml:id="id5"/>
<sigma desciption="_blank"/>
<rho xml:id="id6">
<green>This text must be green</green>
</rho>
</epsilon>
</rho>
</beta>
</omega>
</beta>
</psi>
</chi>
</delta>
</theta>
</iota>
</beta>
</tree>
</test>
<test>
<xpath>//pi[@xml:lang="en-US"]//lambda[@data="123456789"][following-sibling::*[position()=2]][not(child::node())][following-sibling::tau[@xml:lang="en-US"][@xml:id="id1"][preceding-sibling::*[position() = 1]][following-sibling::phi[@xml:id="id2"][preceding-sibling::*[position() = 2]]//phi[starts-with(concat(@delete,"-"),"true-")][@xml:lang="en"][not(following-sibling::*)]/sigma[contains(@desciption,"lank")][not(following-sibling::*)]//psi[starts-with(@delete,"a")][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::delta[starts-with(@attr,"tru")][following-sibling::*[position()=1]][following-sibling::tau[starts-with(concat(@number,"-"),"content-")][preceding-sibling::*[position() = 2]]//gamma[not(preceding-sibling::*)][following-sibling::epsilon[@xml:id="id4"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::omega[@xml:lang="no-nb"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=4]][not(child::node())][following-sibling::psi[@xml:lang="en-US"][@xml:id="id5"][preceding-sibling::*[position() = 3]][following-sibling::eta[@xml:id="id6"][preceding-sibling::*[position() = 4]][following-sibling::epsilon[@src][@xml:id="id7"][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[starts-with(concat(@or,"-"),"false-")][@xml:id="id8"][preceding-sibling::*[position() = 6]][not(following-sibling::*)]//pi[not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[@number][@xml:id="id9"]//tau[starts-with(@insert,"tru")][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::upsilon[@xml:lang="nb"][@xml:id="id10"][not(child::node())][following-sibling::upsilon[contains(@desciption,"lue")][@xml:id="id11"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]][position() = 1]]]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<pi xml:lang="en-US">
<lambda data="123456789"/>
<tau xml:lang="en-US" xml:id="id1"/>
<phi xml:id="id2">
<phi delete="true" xml:lang="en">
<sigma desciption="_blank">
<psi delete="another attribute value" xml:id="id3"/>
<delta attr="true"/>
<tau number="content">
<gamma/>
<epsilon xml:id="id4"/>
<omega xml:lang="no-nb"/>
<psi xml:lang="en-US" xml:id="id5"/>
<eta xml:id="id6"/>
<epsilon src="attribute-value" xml:id="id7"/>
<phi or="false" xml:id="id8">
<pi/>
<upsilon number="content" xml:id="id9">
<tau insert="true"/>
<upsilon xml:lang="nb" xml:id="id10"/>
<upsilon desciption="this.nodeValue" xml:id="id11">
<green>This text must be green</green>
</upsilon>
</upsilon>
</phi>
</tau>
</sigma>
</phi>
</phi>
</pi>
</tree>
</test>
<test>
<xpath>//sigma[@true][@xml:lang="en-US"][@xml:id="id1"]/xi[@title][@xml:lang="en-US"][@xml:id="id2"][following-sibling::kappa[@xml:lang="en-US"][preceding-sibling::*[position() = 1]]//omicron[@xml:lang="en-GB"][following-sibling::kappa[not(child::node())][following-sibling::omicron[@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 2]][following-sibling::omicron[starts-with(concat(@desciption,"-"),"content-")][@xml:lang="nb"][@xml:id="id4"][not(following-sibling::*)]//gamma[@xml:lang="nb"][not(preceding-sibling::*)]/lambda[@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::*[starts-with(concat(@string,"-"),"100%-")][not(following-sibling::*)]/tau[@and][not(preceding-sibling::*)]//psi[starts-with(concat(@string,"-"),"_blank-")][@xml:lang="en-US"][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::theta[not(child::node())][following-sibling::beta[contains(concat(@false,"$"),"ttribute value$")][@xml:id="id7"][preceding-sibling::*[position() = 2]]//rho[@xml:lang="en-GB"][following-sibling::omega[@class][not(following-sibling::*)]]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<sigma true="123456789" xml:lang="en-US" xml:id="id1">
<xi title="attribute-value" xml:lang="en-US" xml:id="id2"/>
<kappa xml:lang="en-US">
<omicron xml:lang="en-GB"/>
<kappa/>
<omicron xml:lang="no" xml:id="id3"/>
<omicron desciption="content" xml:lang="nb" xml:id="id4">
<gamma xml:lang="nb">
<lambda xml:id="id5"/>
<any string="100%">
<tau and="attribute">
<psi string="_blank" xml:lang="en-US" xml:id="id6"/>
<theta/>
<beta false="another attribute value" xml:id="id7">
<rho xml:lang="en-GB"/>
<omega class="true">
<green>This text must be green</green>
</omega>
</beta>
</tau>
</any>
</gamma>
</omicron>
</kappa>
</sigma>
</tree>
</test>
<test>
<xpath>//upsilon[starts-with(@or,"solid 1p")][@xml:id="id1"]/epsilon[starts-with(@or,"100%")][@xml:id="id2"][not(preceding-sibling::*)]/psi[contains(concat(@or,"$"),"alue$")][@xml:id="id3"][not(following-sibling::*)]//theta[starts-with(@insert,"attribute v")][not(preceding-sibling::*)]//theta[contains(concat(@title,"$"),"ibute value$")][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::rho[preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]]</xpath>
<tree>
<upsilon or="solid 1px green" xml:id="id1">
<epsilon or="100%" xml:id="id2">
<psi or="this-is-att-value" xml:id="id3">
<theta insert="attribute value">
<theta title="attribute value"/>
<rho>
<green>This text must be green</green>
</rho>
</theta>
</psi>
</epsilon>
</upsilon>
</tree>
</test>
<test>
<xpath>//nu[contains(concat(@object,"$"),"ue$")][@xml:lang="en-GB"][@xml:id="id1"]//gamma[@xml:lang="no"][not(child::node())][following-sibling::*[@xml:lang="no"]//tau[starts-with(concat(@title,"-"),"true-")][@xml:id="id2"][not(preceding-sibling::*)]/gamma[contains(@name,"10")][not(preceding-sibling::*)][following-sibling::beta[contains(concat(@att,"$"),"s.nodeValue$")][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::delta[@xml:lang="no"][following-sibling::*[position()=4]][not(child::node())][following-sibling::psi[@abort][@xml:id="id3"][not(child::node())][following-sibling::psi[contains(concat(@object,"$"),"true$")][following-sibling::delta[@xml:id="id4"][preceding-sibling::*[position() = 5]][following-sibling::alpha[contains(@title,"e")][@xml:id="id5"][not(following-sibling::*)][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<nu object="this-is-att-value" xml:lang="en-GB" xml:id="id1">
<gamma xml:lang="no"/>
<any xml:lang="no">
<tau title="true" xml:id="id2">
<gamma name="100%"/>
<beta att="this.nodeValue" xml:lang="no-nb"/>
<delta xml:lang="no"/>
<psi abort="true" xml:id="id3"/>
<psi object="true"/>
<delta xml:id="id4"/>
<alpha title="true" xml:id="id5">
<green>This text must be green</green>
</alpha>
</tau>
</any>
</nu>
</tree>
</test>
<test>
<xpath>//alpha[@data="attribute"][@xml:lang="en-US"][@xml:id="id1"]/iota[starts-with(@att,"this-is-att-v")][@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@xml:lang="en"][@xml:id="id3"]/eta[@xml:id="id4"][not(following-sibling::*)]/theta[starts-with(concat(@insert,"-"),"attribute-")][@xml:id="id5"][following-sibling::*[position()=4]][following-sibling::delta[@xml:lang="nb"][not(child::node())][following-sibling::beta[following-sibling::*[position()=2]][following-sibling::upsilon[contains(concat(@insert,"$"),"value$")][@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::delta[starts-with(concat(@abort,"-"),"attribute-")][preceding-sibling::*[position() = 4]][not(following-sibling::*)]//mu[@xml:lang="en"][@xml:id="id7"][not(child::node())][following-sibling::alpha[@xml:id="id8"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/pi[@xml:lang="nb"][not(following-sibling::*)]/tau[@xml:lang="no"][@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)]//phi[contains(concat(@title,"$"),"ue$")]/phi[@string][@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<alpha data="attribute" xml:lang="en-US" xml:id="id1">
<iota att="this-is-att-value" xml:lang="en-GB" xml:id="id2"/>
<xi xml:lang="en" xml:id="id3">
<eta xml:id="id4">
<theta insert="attribute" xml:id="id5"/>
<delta xml:lang="nb"/>
<beta/>
<upsilon insert="another attribute value" xml:lang="en-US" xml:id="id6"/>
<delta abort="attribute">
<mu xml:lang="en" xml:id="id7"/>
<alpha xml:id="id8">
<pi xml:lang="nb">
<tau xml:lang="no" xml:id="id9">
<phi title="true">
<phi string="_blank" xml:id="id10">
<green>This text must be green</green>
</phi>
</phi>
</tau>
</pi>
</alpha>
</delta>
</eta>
</xi>
</alpha>
</tree>
</test>
<test>
<xpath>//chi//sigma[starts-with(concat(@src,"-"),"true-")][not(following-sibling::*)]/delta[@xml:id="id1"][following-sibling::kappa[preceding-sibling::*[position() = 1]][following-sibling::iota[@xml:lang="no-nb"][preceding-sibling::*[position() = 2]]/kappa[@or="attribute value"][@xml:lang="no"][not(preceding-sibling::*)]/rho[@xml:lang="no"][@xml:id="id2"]/mu[not(preceding-sibling::*)][following-sibling::nu][position() = 1]]]</xpath>
<tree>
<chi>
<sigma src="true">
<delta xml:id="id1"/>
<kappa/>
<iota xml:lang="no-nb">
<kappa or="attribute value" xml:lang="no">
<rho xml:lang="no" xml:id="id2">
<mu/>
<nu>
<green>This text must be green</green>
</nu>
</rho>
</kappa>
</iota>
</sigma>
</chi>
</tree>
</test>
<test>
<xpath>//gamma[contains(concat(@class,"$"),"te$")][@xml:lang="en-US"][@xml:id="id1"]//theta[@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)]/lambda[@xml:lang="no"][following-sibling::*[position()=1]][not(child::node())][following-sibling::gamma[contains(concat(@content,"$"),"ibute-value$")][@xml:lang="en-GB"][@xml:id="id3"]/mu[@xml:lang="no-nb"][following-sibling::*[position()=1]][following-sibling::eta[@xml:lang="en-GB"][@xml:id="id4"][not(following-sibling::*)]//zeta[@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon[not(child::node())][following-sibling::chi[starts-with(@abort,"an")][@xml:lang="no"][@xml:id="id6"][not(child::node())][following-sibling::epsilon[@number="123456789"][@xml:lang="no-nb"][@xml:id="id7"][not(child::node())][following-sibling::iota[contains(concat(@and,"$"),"odeValue$")][@xml:lang="en-US"][following-sibling::mu[starts-with(@string,"this.")][@xml:id="id8"][preceding-sibling::*[position() = 5]][following-sibling::upsilon[contains(concat(@string,"$"),"lank$")][@xml:lang="en-GB"][@xml:id="id9"][preceding-sibling::*[position() = 6]]][position() = 1]]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<gamma class="attribute" xml:lang="en-US" xml:id="id1">
<theta xml:lang="en-GB" xml:id="id2">
<lambda xml:lang="no"/>
<gamma content="attribute-value" xml:lang="en-GB" xml:id="id3">
<mu xml:lang="no-nb"/>
<eta xml:lang="en-GB" xml:id="id4">
<zeta xml:lang="en-GB" xml:id="id5"/>
<epsilon/>
<chi abort="another attribute value" xml:lang="no" xml:id="id6"/>
<epsilon number="123456789" xml:lang="no-nb" xml:id="id7"/>
<iota and="this.nodeValue" xml:lang="en-US"/>
<mu string="this.nodeValue" xml:id="id8"/>
<upsilon string="_blank" xml:lang="en-GB" xml:id="id9">
<green>This text must be green</green>
</upsilon>
</eta>
</gamma>
</theta>
</gamma>
</tree>
</test>
<test>
<xpath>//eta[@true="100%"]//mu[@xml:lang="no"][not(following-sibling::*)]/omega[@string][@xml:lang="nb"][not(child::node())][following-sibling::nu[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::omega[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::xi[@xml:lang="nb"][@xml:id="id1"][not(following-sibling::*)]/xi[not(following-sibling::*)]//rho[@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]/omicron[following-sibling::kappa[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::nu[@delete="attribute"][preceding-sibling::*[position() = 2]][following-sibling::alpha[@xml:id="id3"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::nu[starts-with(concat(@abort,"-"),"123456789-")][@xml:lang="en"][@xml:id="id4"][preceding-sibling::*[position() = 4]]//eta[contains(concat(@class,"$"),"is-is-att-value$")][following-sibling::*[position()=1]][not(child::node())][following-sibling::beta[@attrib][@xml:id="id5"][preceding-sibling::*[position() = 1]]/iota[not(following-sibling::*)]/beta[@string][@xml:lang="en"][@xml:id="id6"][not(following-sibling::*)]/omega[not(preceding-sibling::*)]][position() = 1]]][position() = 1]]]]]]</xpath>
<tree>
<eta true="100%">
<mu xml:lang="no">
<omega string="solid 1px green" xml:lang="nb"/>
<nu/>
<omega xml:lang="en-GB"/>
<xi xml:lang="nb" xml:id="id1">
<xi>
<rho xml:lang="en">
<omicron/>
<kappa xml:id="id2"/>
<nu delete="attribute"/>
<alpha xml:id="id3"/>
<nu abort="123456789" xml:lang="en" xml:id="id4">
<eta class="this-is-att-value"/>
<beta attrib="100%" xml:id="id5">
<iota>
<beta string="123456789" xml:lang="en" xml:id="id6">
<omega>
<green>This text must be green</green>
</omega>
</beta>
</iota>
</beta>
</nu>
</rho>
</xi>
</xi>
</mu>
</eta>
</tree>
</test>
<test>
<xpath>//zeta[@attribute][@xml:lang="en-GB"]//gamma[@string][@xml:lang="en"][not(preceding-sibling::*)]//mu[starts-with(@name,"tru")][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::*[position()=4]][following-sibling::nu[starts-with(concat(@content,"-"),"true-")][@xml:id="id2"][following-sibling::iota[@xml:id="id3"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::iota[@true][not(child::node())][following-sibling::omicron[@abort][@xml:id="id4"][preceding-sibling::*[position() = 4]]//theta[starts-with(@insert,"at")][@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//theta[@xml:id="id6"]//mu[@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=4]][not(child::node())][following-sibling::eta[contains(concat(@desciption,"$"),"reen$")][@xml:lang="no-nb"][not(child::node())][following-sibling::eta[starts-with(concat(@attrib,"-"),"attribute-")][@xml:id="id7"][preceding-sibling::*[position() = 2]][following-sibling::mu[@xml:id="id8"][following-sibling::lambda[not(following-sibling::*)]/sigma[@xml:lang="nb"][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[@xml:lang="no"][@xml:id="id9"]/omega[@token][@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::psi[@xml:lang="nb"]//lambda[not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::pi[contains(@token,"x ")][preceding-sibling::*[position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<zeta attribute="attribute-value" xml:lang="en-GB">
<gamma string="this.nodeValue" xml:lang="en">
<mu name="true" xml:id="id1"/>
<nu content="true" xml:id="id2"/>
<iota xml:id="id3"/>
<iota true="solid 1px green"/>
<omicron abort="another attribute value" xml:id="id4">
<theta insert="attribute-value" xml:lang="en-GB" xml:id="id5">
<theta xml:id="id6">
<mu xml:lang="no"/>
<eta desciption="solid 1px green" xml:lang="no-nb"/>
<eta attrib="attribute" xml:id="id7"/>
<mu xml:id="id8"/>
<lambda>
<sigma xml:lang="nb"/>
<theta xml:lang="no" xml:id="id9">
<omega token="attribute value" xml:lang="no-nb"/>
<psi xml:lang="nb">
<lambda/>
<pi token="solid 1px green">
<green>This text must be green</green>
</pi>
</psi>
</theta>
</lambda>
</theta>
</theta>
</omicron>
</gamma>
</zeta>
</tree>
</test>
<test>
<xpath>//beta[@xml:lang="nb"][@xml:id="id1"]//iota[contains(concat(@token,"$"),"lank$")][@xml:lang="en"][following-sibling::sigma[starts-with(concat(@token,"-"),"another attribute value-")][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=5]][not(child::node())][following-sibling::sigma[@abort][@xml:lang="no"][not(child::node())][following-sibling::rho[not(child::node())][following-sibling::kappa[@xml:lang="nb"][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::gamma[@string="100%"][preceding-sibling::*[position() = 5]][following-sibling::epsilon[preceding-sibling::*[position() = 6]]//tau[@xml:id="id3"][not(following-sibling::*)]/beta[starts-with(@and,"fa")][not(following-sibling::*)]/nu[@class][@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//phi[contains(concat(@insert,"$"),"this.nodeValue$")][@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::mu[preceding-sibling::*[position() = 1]][following-sibling::chi[contains(concat(@attrib,"$"),"ute$")][@xml:lang="no"][@xml:id="id6"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=4]][following-sibling::*[@xml:id="id7"][following-sibling::*[position()=3]][not(child::node())][following-sibling::rho[@xml:lang="no"][preceding-sibling::*[position() = 4]][following-sibling::*[position()=2]][following-sibling::kappa[@xml:lang="en-US"][preceding-sibling::*[position() = 5]][following-sibling::*[position()=1]][following-sibling::lambda[@xml:lang="en-US"][@xml:id="id8"][not(following-sibling::*)]/kappa[starts-with(concat(@string,"-"),"100%-")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//omicron[contains(concat(@content,"$"),"deValue$")][@xml:lang="no"][@xml:id="id9"][not(following-sibling::*)]/theta[contains(@object,"0")][not(following-sibling::*)]//lambda[starts-with(concat(@class,"-"),"this.nodeValue-")][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[starts-with(@insert,"_blan")][position() = 1]][position() = 1]]]]]][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<beta xml:lang="nb" xml:id="id1">
<iota token="_blank" xml:lang="en"/>
<sigma token="another attribute value" xml:id="id2"/>
<sigma abort="solid 1px green" xml:lang="no"/>
<rho/>
<kappa xml:lang="nb"/>
<gamma string="100%"/>
<epsilon>
<tau xml:id="id3">
<beta and="false">
<nu class="_blank" xml:lang="en" xml:id="id4">
<phi insert="this.nodeValue" xml:lang="en-GB" xml:id="id5"/>
<mu/>
<chi attrib="attribute" xml:lang="no" xml:id="id6"/>
<any xml:id="id7"/>
<rho xml:lang="no"/>
<kappa xml:lang="en-US"/>
<lambda xml:lang="en-US" xml:id="id8">
<kappa string="100%" xml:lang="no-nb">
<omicron content="this.nodeValue" xml:lang="no" xml:id="id9">
<theta object="100%">
<lambda class="this.nodeValue"/>
<xi insert="_blank">
<green>This text must be green</green>
</xi>
</theta>
</omicron>
</kappa>
</lambda>
</nu>
</beta>
</tau>
</epsilon>
</beta>
</tree>
</test>
<test>
<xpath>//theta[contains(concat(@content,"$"),"is.nodeValue$")][@xml:lang="en-US"][@xml:id="id1"]//gamma[starts-with(@or,"t")][@xml:lang="en"][following-sibling::*[position()=1]][following-sibling::beta[@xml:id="id2"][not(following-sibling::*)]//iota[starts-with(@and,"s")][not(preceding-sibling::*)]/psi[starts-with(@attr,"solid 1px")][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::kappa[@desciption="attribute"][@xml:lang="nb"][@xml:id="id4"]]]</xpath>
<tree>
<theta content="this.nodeValue" xml:lang="en-US" xml:id="id1">
<gamma or="true" xml:lang="en"/>
<beta xml:id="id2">
<iota and="solid 1px green">
<psi attr="solid 1px green" xml:id="id3"/>
<kappa desciption="attribute" xml:lang="nb" xml:id="id4">
<green>This text must be green</green>
</kappa>
</iota>
</beta>
</theta>
</tree>
</test>
<test>
<xpath>//theta[@xml:lang="nb"]/omicron[@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[@xml:lang="en-US"][@xml:id="id1"][not(following-sibling::*)]//xi[contains(concat(@data,"$"),"e$")][@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::zeta[contains(@attribute,"tt-value")][@xml:lang="nb"]/beta[@xml:id="id3"][not(preceding-sibling::*)]/mu[@src][@xml:id="id4"][not(following-sibling::*)]/kappa[@number][@xml:lang="nb"][@xml:id="id5"][not(child::node())][following-sibling::eta[@xml:id="id6"][not(following-sibling::*)]/theta[@xml:id="id7"][not(child::node())][following-sibling::theta[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::lambda[starts-with(concat(@or,"-"),"another attribute value-")][@xml:lang="en"][following-sibling::xi[@false][@xml:id="id8"][preceding-sibling::*[position() = 3]]//upsilon[@number][@xml:id="id9"][not(preceding-sibling::*)][not(child::node())][following-sibling::iota[@xml:lang="en"][not(child::node())][following-sibling::eta[@xml:lang="no-nb"]//eta[not(child::node())][following-sibling::eta[@number][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::tau[@src][@xml:id="id10"][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<theta xml:lang="nb">
<omicron xml:lang="nb"/>
<rho xml:lang="en-US" xml:id="id1">
<xi data="this-is-att-value" xml:lang="no-nb" xml:id="id2"/>
<zeta attribute="this-is-att-value" xml:lang="nb">
<beta xml:id="id3">
<mu src="this-is-att-value" xml:id="id4">
<kappa number="true" xml:lang="nb" xml:id="id5"/>
<eta xml:id="id6">
<theta xml:id="id7"/>
<theta xml:lang="en-US"/>
<lambda or="another attribute value" xml:lang="en"/>
<xi false="content" xml:id="id8">
<upsilon number="content" xml:id="id9"/>
<iota xml:lang="en"/>
<eta xml:lang="no-nb">
<eta/>
<eta number="content"/>
<tau src="100%" xml:id="id10">
<green>This text must be green</green>
</tau>
</eta>
</xi>
</eta>
</mu>
</beta>
</zeta>
</rho>
</theta>
</tree>
</test>
<test>
<xpath>//mu[contains(concat(@name,"$"),"se$")][@xml:lang="no-nb"][@xml:id="id1"]//alpha[@or]/phi[@att="true"][@xml:lang="no-nb"][not(child::node())][following-sibling::beta/gamma[@att][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::omicron[@insert][@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//chi[@true][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]//chi[@xml:id="id3"][following-sibling::omega[contains(concat(@attrib,"$")," value$")][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::mu[@abort][@xml:id="id5"][following-sibling::delta[@xml:lang="nb"][preceding-sibling::*[position() = 3]]/iota[@abort][@xml:lang="en"][@xml:id="id6"][not(preceding-sibling::*)]//sigma[@data][@xml:lang="no"][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[@xml:lang="en"][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]/zeta[starts-with(@attrib,"12")][@xml:id="id9"]/pi[@xml:lang="en"][@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]/omega[not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::delta[@xml:lang="en"][@xml:id="id11"][not(child::node())][following-sibling::gamma[@xml:id="id12"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<mu name="false" xml:lang="no-nb" xml:id="id1">
<alpha or="attribute-value">
<phi att="true" xml:lang="no-nb"/>
<beta>
<gamma att="content" xml:id="id2"/>
<omicron insert="this.nodeValue" xml:lang="no">
<chi true="100%" xml:lang="en-GB">
<chi xml:id="id3"/>
<omega attrib="another attribute value" xml:id="id4"/>
<mu abort="attribute" xml:id="id5"/>
<delta xml:lang="nb">
<iota abort="false" xml:lang="en" xml:id="id6">
<sigma data="100%" xml:lang="no" xml:id="id7">
<phi xml:lang="en" xml:id="id8">
<zeta attrib="123456789" xml:id="id9">
<pi xml:lang="en" xml:id="id10">
<omega/>
<delta xml:lang="en" xml:id="id11"/>
<gamma xml:id="id12">
<green>This text must be green</green>
</gamma>
</pi>
</zeta>
</phi>
</sigma>
</iota>
</delta>
</chi>
</omicron>
</beta>
</alpha>
</mu>
</tree>
</test>
<test>
<xpath>//rho/nu[not(preceding-sibling::*)][not(child::node())][following-sibling::psi[@xml:lang="en-GB"][not(following-sibling::*)]/mu[@xml:lang="no-nb"][not(preceding-sibling::*)]//theta[contains(concat(@number,"$"),".nodeValue$")][@xml:lang="nb"][@xml:id="id1"][not(child::node())][following-sibling::beta[@and="attribute value"][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[@xml:id="id2"][preceding-sibling::*[position() = 2]]//sigma[@attr][@xml:lang="nb"][not(following-sibling::*)]//pi[@content][@xml:id="id3"][not(preceding-sibling::*)][position() = 1]]][position() = 1]]</xpath>
<tree>
<rho>
<nu/>
<psi xml:lang="en-GB">
<mu xml:lang="no-nb">
<theta number="this.nodeValue" xml:lang="nb" xml:id="id1"/>
<beta and="attribute value" xml:lang="en-US"/>
<delta xml:id="id2">
<sigma attr="content" xml:lang="nb">
<pi content="100%" xml:id="id3">
<green>This text must be green</green>
</pi>
</sigma>
</delta>
</mu>
</psi>
</rho>
</tree>
</test>
<test>
<xpath>//sigma[@xml:id="id1"]/mu[@xml:id="id2"]/sigma[not(following-sibling::*)]//epsilon[@xml:lang="nb"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]//phi[@and="attribute"][@xml:id="id4"][following-sibling::sigma[contains(@false,"ue")][@xml:id="id5"][preceding-sibling::*[position() = 1]]//iota[@insert][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::chi[starts-with(concat(@attr,"-"),"100%-")][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::beta[preceding-sibling::*[position() = 2]][not(following-sibling::*)]/zeta[@delete][@xml:lang="no-nb"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::sigma[@xml:lang="en-GB"][@xml:id="id9"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/tau[@xml:id="id10"][not(following-sibling::*)]/pi[contains(concat(@string,"$"),"d 1px green$")][@xml:lang="no-nb"][@xml:id="id11"][not(preceding-sibling::*)]//psi[@xml:id="id12"]//zeta[not(preceding-sibling::*)][not(preceding-sibling::zeta or following-sibling::zeta)]/eta[@attribute][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::chi[@xml:id="id13"]//kappa[@and][@xml:lang="en"][not(following-sibling::*)]/alpha[@abort][@xml:id="id14"]//phi[contains(@title,"ute value")][not(following-sibling::*)]/xi[@xml:lang="no-nb"][@xml:id="id15"][not(following-sibling::*)]/chi[contains(concat(@data,"$"),"ue$")][@xml:lang="no-nb"]//upsilon[@xml:id="id16"][not(preceding-sibling::*)][not(following-sibling::*)]//psi[@xml:id="id17"]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<sigma xml:id="id1">
<mu xml:id="id2">
<sigma>
<epsilon xml:lang="nb" xml:id="id3">
<phi and="attribute" xml:id="id4"/>
<sigma false="attribute-value" xml:id="id5">
<iota insert="content" xml:id="id6"/>
<chi attr="100%" xml:id="id7"/>
<beta>
<zeta delete="this.nodeValue" xml:lang="no-nb" xml:id="id8"/>
<sigma xml:lang="en-GB" xml:id="id9">
<tau xml:id="id10">
<pi string="solid 1px green" xml:lang="no-nb" xml:id="id11">
<psi xml:id="id12">
<zeta>
<eta attribute="another attribute value" xml:lang="en-US"/>
<chi xml:id="id13">
<kappa and="123456789" xml:lang="en">
<alpha abort="123456789" xml:id="id14">
<phi title="attribute value">
<xi xml:lang="no-nb" xml:id="id15">
<chi data="attribute-value" xml:lang="no-nb">
<upsilon xml:id="id16">
<psi xml:id="id17">
<green>This text must be green</green>
</psi>
</upsilon>
</chi>
</xi>
</phi>
</alpha>
</kappa>
</chi>
</zeta>
</psi>
</pi>
</tau>
</sigma>
</beta>
</sigma>
</epsilon>
</sigma>
</mu>
</sigma>
</tree>
</test>
<test>
<xpath>//kappa[@xml:id="id1"]/eta[@xml:id="id2"][not(preceding-sibling::*)]//phi[@att="true"][@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[not(child::node())][following-sibling::omega[@xml:lang="en"][following-sibling::gamma[@xml:id="id4"][following-sibling::alpha[contains(concat(@class,"$"),"lank$")][@xml:lang="en-GB"]/iota[contains(concat(@insert,"$"),"123456789$")][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(preceding-sibling::iota)][not(child::node())][following-sibling::rho[contains(@src,"k")][preceding-sibling::*[position() = 1]]/alpha[@string][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::eta[@xml:id="id5"][preceding-sibling::*[position() = 1]]//mu[@insert="this.nodeValue"][not(following-sibling::*)]/pi[contains(concat(@attribute,"$"),"is-att-value$")][@xml:lang="no-nb"][@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]//mu[@xml:lang="no-nb"][@xml:id="id7"][not(preceding-sibling::*)]//epsilon[@xml:lang="en"][@xml:id="id8"]//omicron[not(preceding-sibling::*)][following-sibling::*[position()=5]][not(child::node())][following-sibling::omega[@xml:id="id9"][following-sibling::omega[@and="true"][@xml:id="id10"][preceding-sibling::*[position() = 2]][following-sibling::delta[starts-with(concat(@content,"-"),"attribute-")][@xml:lang="en-US"][following-sibling::nu[following-sibling::phi[@string][@xml:lang="no-nb"][not(following-sibling::*)]/upsilon[contains(concat(@att,"$")," attribute value$")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]/*[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/omega[@xml:lang="nb"][@xml:id="id11"][not(preceding-sibling::*)]]]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<kappa xml:id="id1">
<eta xml:id="id2">
<phi att="true" xml:id="id3"/>
<xi/>
<omega xml:lang="en"/>
<gamma xml:id="id4"/>
<alpha class="_blank" xml:lang="en-GB">
<iota insert="123456789"/>
<rho src="_blank">
<alpha string="solid 1px green" xml:lang="en-US"/>
<eta xml:id="id5">
<mu insert="this.nodeValue">
<pi attribute="this-is-att-value" xml:lang="no-nb" xml:id="id6">
<mu xml:lang="no-nb" xml:id="id7">
<epsilon xml:lang="en" xml:id="id8">
<omicron/>
<omega xml:id="id9"/>
<omega and="true" xml:id="id10"/>
<delta content="attribute" xml:lang="en-US"/>
<nu/>
<phi string="123456789" xml:lang="no-nb">
<upsilon att="another attribute value" xml:lang="en-GB">
<any xml:lang="no-nb">
<omega xml:lang="nb" xml:id="id11">
<green>This text must be green</green>
</omega>
</any>
</upsilon>
</phi>
</epsilon>
</mu>
</pi>
</mu>
</eta>
</rho>
</alpha>
</eta>
</kappa>
</tree>
</test>
<test>
<xpath>//omega/rho[starts-with(concat(@content,"-"),"solid 1px green-")][not(preceding-sibling::*)][not(following-sibling::*)]/iota[contains(@or,"a")][@xml:id="id1"][not(child::node())][following-sibling::kappa[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::beta[@false][@xml:lang="en"][following-sibling::zeta[contains(concat(@title,"$"),"this-is-att-value$")][@xml:lang="nb"][not(following-sibling::*)]//theta[@attr][not(preceding-sibling::*)]/beta[@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[@string][@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//phi[@xml:lang="en-US"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/pi[contains(@att,"k")][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/beta[@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::alpha[@false="true"][@xml:id="id6"][following-sibling::*[position()=1]][following-sibling::epsilon[@xml:lang="no-nb"][@xml:id="id7"]//delta[contains(@insert,"bute value")][@xml:lang="en-US"][not(following-sibling::*)]/eta[@xml:lang="no"][not(preceding-sibling::*)][following-sibling::xi[@att][preceding-sibling::*[position() = 1]]/xi[@xml:lang="no"][not(child::node())][following-sibling::alpha[@or="this.nodeValue"]//delta[@title="true"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::iota[@xml:lang="no"]/omega[@xml:id="id9"]/sigma[not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<omega>
<rho content="solid 1px green">
<iota or="_blank" xml:id="id1"/>
<kappa/>
<beta false="123456789" xml:lang="en"/>
<zeta title="this-is-att-value" xml:lang="nb">
<theta attr="solid 1px green">
<beta xml:lang="nb"/>
<gamma string="true" xml:lang="no" xml:id="id2">
<phi xml:lang="en-US" xml:id="id3">
<pi att="_blank" xml:id="id4">
<beta xml:id="id5"/>
<alpha false="true" xml:id="id6"/>
<epsilon xml:lang="no-nb" xml:id="id7">
<delta insert="attribute value" xml:lang="en-US">
<eta xml:lang="no"/>
<xi att="attribute value">
<xi xml:lang="no"/>
<alpha or="this.nodeValue">
<delta title="true" xml:id="id8"/>
<iota xml:lang="no">
<omega xml:id="id9">
<sigma>
<green>This text must be green</green>
</sigma>
</omega>
</iota>
</alpha>
</xi>
</delta>
</epsilon>
</pi>
</phi>
</gamma>
</theta>
</zeta>
</rho>
</omega>
</tree>
</test>
<test>
<xpath>//beta[@xml:id="id1"]//chi[@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/epsilon[@xml:lang="no"][following-sibling::*[position()=1]][following-sibling::theta[@xml:lang="no"][@xml:id="id3"][not(following-sibling::*)]//theta[starts-with(@string,"100")][@xml:lang="en"][not(preceding-sibling::*)][not(child::node())][following-sibling::chi[not(child::node())][following-sibling::omicron[@xml:lang="en-US"][@xml:id="id4"][not(following-sibling::*)]//tau[@attr][@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//omicron[@xml:id="id6"][not(preceding-sibling::*)]/zeta[@title="123456789"][@xml:id="id7"][not(preceding-sibling::*)]//xi[@xml:lang="nb"][not(preceding-sibling::*)]//lambda[starts-with(concat(@object,"-"),"false-")][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@xml:lang="en-US"][@xml:id="id8"][preceding-sibling::*[position() = 1]]/omega[@true][@xml:id="id9"][not(preceding-sibling::*)][following-sibling::delta[@xml:id="id10"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::theta[contains(concat(@true,"$"),"ue$")][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<beta xml:id="id1">
<chi xml:lang="en-GB" xml:id="id2">
<epsilon xml:lang="no"/>
<theta xml:lang="no" xml:id="id3">
<theta string="100%" xml:lang="en"/>
<chi/>
<omicron xml:lang="en-US" xml:id="id4">
<tau attr="solid 1px green" xml:lang="en-GB" xml:id="id5">
<omicron xml:id="id6">
<zeta title="123456789" xml:id="id7">
<xi xml:lang="nb">
<lambda object="false"/>
<omicron xml:lang="en-US" xml:id="id8">
<omega true="_blank" xml:id="id9"/>
<delta xml:id="id10"/>
<theta true="true">
<green>This text must be green</green>
</theta>
</omicron>
</xi>
</zeta>
</omicron>
</tau>
</omicron>
</theta>
</chi>
</beta>
</tree>
</test>
<test>
<xpath>//nu[starts-with(@name,"123456")][@xml:lang="nb"]//gamma[@xml:lang="nb"][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::delta[@xml:lang="en-GB"][@xml:id="id2"]/lambda[@xml:lang="no"][@xml:id="id3"][not(preceding-sibling::*)]//delta[starts-with(concat(@attr,"-"),"another attribute value-")][@xml:lang="en-US"][not(following-sibling::*)]//zeta[@xml:lang="en"][not(following-sibling::*)]//theta[starts-with(concat(@number,"-"),"attribute-")][@xml:lang="nb"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::epsilon[contains(@src,"t")][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::omicron[@att][@xml:id="id6"][not(child::node())][following-sibling::psi[@xml:lang="en"]//theta[@attribute][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::lambda[@data="attribute value"][@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/nu[@object]//mu[@xml:lang="en-GB"][@xml:id="id8"]//tau[@xml:lang="en"][@xml:id="id9"][not(following-sibling::*)]//delta[@xml:lang="en"][not(preceding-sibling::*)]//*[@xml:lang="en-US"][@xml:id="id10"][not(following-sibling::*)]/pi[@xml:lang="no"][@xml:id="id11"][not(child::node())][following-sibling::zeta[@xml:lang="nb"][@xml:id="id12"][preceding-sibling::*[position() = 1]]//gamma[not(preceding-sibling::*)][not(following-sibling::gamma)]/theta[contains(@attrib,"e")][not(preceding-sibling::*)][not(child::node())][following-sibling::mu[starts-with(concat(@or,"-"),"another attribute value-")][@xml:id="id13"][position() = 1]][position() = 1]][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<nu name="123456789" xml:lang="nb">
<gamma xml:lang="nb" xml:id="id1"/>
<delta xml:lang="en-GB" xml:id="id2">
<lambda xml:lang="no" xml:id="id3">
<delta attr="another attribute value" xml:lang="en-US">
<zeta xml:lang="en">
<theta number="attribute-value" xml:lang="nb" xml:id="id4"/>
<epsilon src="content" xml:id="id5"/>
<omicron att="another attribute value" xml:id="id6"/>
<psi xml:lang="en">
<theta attribute="123456789" xml:id="id7"/>
<lambda data="attribute value" xml:lang="en-GB">
<nu object="attribute-value">
<mu xml:lang="en-GB" xml:id="id8">
<tau xml:lang="en" xml:id="id9">
<delta xml:lang="en">
<any xml:lang="en-US" xml:id="id10">
<pi xml:lang="no" xml:id="id11"/>
<zeta xml:lang="nb" xml:id="id12">
<gamma>
<theta attrib="this.nodeValue"/>
<mu or="another attribute value" xml:id="id13">
<green>This text must be green</green>
</mu>
</gamma>
</zeta>
</any>
</delta>
</tau>
</mu>
</nu>
</lambda>
</psi>
</zeta>
</delta>
</lambda>
</delta>
</nu>
</tree>
</test>
<test>
<xpath>//mu[starts-with(concat(@or,"-"),"_blank-")][@xml:id="id1"]//zeta[@xml:lang="en"][not(following-sibling::*)]//upsilon[@xml:id="id2"][not(preceding-sibling::*)]//eta[@true][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/rho[contains(@content,"on")][following-sibling::*[position()=2]][not(child::node())][following-sibling::iota[@class][@xml:id="id4"][not(preceding-sibling::iota)][not(child::node())][following-sibling::omega[@false][@xml:lang="en-US"][preceding-sibling::*[position() = 2]]//*[@class][@xml:id="id5"][not(following-sibling::*)]/delta[starts-with(concat(@insert,"-"),"this.nodeValue-")][following-sibling::omega[@xml:lang="en-GB"][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::beta[@xml:lang="en-US"][@xml:id="id7"][not(following-sibling::*)]//lambda[starts-with(concat(@content,"-"),"this-")][@xml:lang="en-US"][following-sibling::*[position()=4]][not(child::node())][following-sibling::alpha[starts-with(@class,"attribute-v")][preceding-sibling::*[position() = 1]][following-sibling::theta[contains(@false,"bu")][@xml:lang="nb"][@xml:id="id8"][preceding-sibling::*[position() = 2]][following-sibling::delta[preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::beta[@name="_blank"][@xml:id="id9"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]//gamma[@xml:lang="en-GB"][@xml:id="id10"][not(preceding-sibling::*)][following-sibling::delta[contains(concat(@desciption,"$"),"-is-att-value$")][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::kappa[contains(concat(@attr,"$"),"56789$")][@xml:lang="no"][preceding-sibling::*[position() = 2]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<mu or="_blank" xml:id="id1">
<zeta xml:lang="en">
<upsilon xml:id="id2">
<eta true="true" xml:id="id3">
<rho content="content"/>
<iota class="attribute" xml:id="id4"/>
<omega false="123456789" xml:lang="en-US">
<any class="attribute value" xml:id="id5">
<delta insert="this.nodeValue"/>
<omega xml:lang="en-GB" xml:id="id6"/>
<beta xml:lang="en-US" xml:id="id7">
<lambda content="this-is-att-value" xml:lang="en-US"/>
<alpha class="attribute-value"/>
<theta false="attribute" xml:lang="nb" xml:id="id8"/>
<delta/>
<beta name="_blank" xml:id="id9">
<gamma xml:lang="en-GB" xml:id="id10"/>
<delta desciption="this-is-att-value"/>
<kappa attr="123456789" xml:lang="no">
<green>This text must be green</green>
</kappa>
</beta>
</beta>
</any>
</omega>
</eta>
</upsilon>
</zeta>
</mu>
</tree>
</test>
<test>
<xpath>//*[@xml:lang="no-nb"]/*[contains(@class,"k")][@xml:lang="en-GB"]/beta[@desciption="false"][@xml:lang="en-GB"][not(preceding-sibling::*)][not(preceding-sibling::beta)][not(child::node())][following-sibling::sigma[@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::pi[contains(concat(@title,"$"),"t$")][@xml:lang="no"][@xml:id="id1"][not(following-sibling::*)]/omega[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//beta[@xml:lang="en"][@xml:id="id2"]//mu[contains(@and,"bute va")][@xml:lang="nb"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/lambda[contains(concat(@delete,"$"),"100%$")][@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::pi[@xml:id="id5"][not(child::node())][following-sibling::phi[contains(@src,"x green")][@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=6]][following-sibling::tau[contains(@object,"conte")][@xml:lang="en"][@xml:id="id6"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=5]][following-sibling::phi[following-sibling::xi[@false="content"][@xml:lang="en-GB"][@xml:id="id7"][preceding-sibling::*[position() = 5]][following-sibling::phi[@xml:lang="no"][@xml:id="id8"][preceding-sibling::*[position() = 6]][following-sibling::*[position()=2]][following-sibling::tau[@xml:id="id9"][preceding-sibling::*[position() = 7]][following-sibling::eta[@xml:id="id10"]//chi[@xml:id="id11"][not(preceding-sibling::*)][following-sibling::alpha[@false][@xml:lang="no"][@xml:id="id12"][not(following-sibling::*)]/iota[not(child::node())][following-sibling::zeta[@xml:lang="no"][@xml:id="id13"][not(following-sibling::*)]//beta[contains(@att,"lue")][@xml:lang="en-US"]/chi[@xml:lang="en-US"][@xml:id="id14"][not(preceding-sibling::*)][position() = 1]]]]][position() = 1]]]]][position() = 1]]]]]</xpath>
<tree>
<any xml:lang="no-nb">
<any class="_blank" xml:lang="en-GB">
<beta desciption="false" xml:lang="en-GB"/>
<sigma xml:lang="nb"/>
<pi title="content" xml:lang="no" xml:id="id1">
<omega xml:lang="no-nb">
<beta xml:lang="en" xml:id="id2">
<mu and="attribute value" xml:lang="nb" xml:id="id3">
<lambda delete="100%" xml:lang="en-US" xml:id="id4"/>
<pi xml:id="id5"/>
<phi src="solid 1px green" xml:lang="en-GB"/>
<tau object="content" xml:lang="en" xml:id="id6"/>
<phi/>
<xi false="content" xml:lang="en-GB" xml:id="id7"/>
<phi xml:lang="no" xml:id="id8"/>
<tau xml:id="id9"/>
<eta xml:id="id10">
<chi xml:id="id11"/>
<alpha false="this.nodeValue" xml:lang="no" xml:id="id12">
<iota/>
<zeta xml:lang="no" xml:id="id13">
<beta att="this-is-att-value" xml:lang="en-US">
<chi xml:lang="en-US" xml:id="id14">
<green>This text must be green</green>
</chi>
</beta>
</zeta>
</alpha>
</eta>
</mu>
</beta>
</omega>
</pi>
</any>
</any>
</tree>
</test>
<test>
<xpath>//mu[@xml:lang="en"][@xml:id="id1"]/eta[@insert][@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)]/delta[@xml:lang="no"][@xml:id="id3"][not(child::node())][following-sibling::beta[starts-with(@attribute,"another attr")][@xml:lang="en"][@xml:id="id4"]/alpha[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::zeta[contains(@delete,"78")][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::xi[@object][@xml:id="id6"]][position() = 1]]]</xpath>
<tree>
<mu xml:lang="en" xml:id="id1">
<eta insert="false" xml:lang="en-US" xml:id="id2">
<delta xml:lang="no" xml:id="id3"/>
<beta attribute="another attribute value" xml:lang="en" xml:id="id4">
<alpha xml:lang="en-US"/>
<zeta delete="123456789" xml:id="id5"/>
<xi object="true" xml:id="id6">
<green>This text must be green</green>
</xi>
</beta>
</eta>
</mu>
</tree>
</test>
<test>
<xpath>//sigma[@number="content"][@xml:id="id1"]//xi[starts-with(concat(@attr,"-"),"this-")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[@or][not(preceding-sibling::upsilon)][following-sibling::rho[@xml:lang="nb"][@xml:id="id2"][not(following-sibling::*)]//psi[@xml:lang="en"][@xml:id="id3"]//beta[@xml:lang="en"][@xml:id="id4"][following-sibling::xi[@xml:lang="nb"][preceding-sibling::*[position() = 1]]/alpha[not(preceding-sibling::*)][following-sibling::xi[starts-with(concat(@token,"-"),"attribute-")][@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::xi[contains(@title,"ibute")][@xml:lang="en"][@xml:id="id6"][not(following-sibling::*)]/gamma[not(preceding-sibling::*)][following-sibling::pi[starts-with(@attr,"s")][@xml:lang="no-nb"][@xml:id="id7"][not(child::node())][following-sibling::psi[preceding-sibling::*[position() = 2]][not(following-sibling::*)]/gamma[starts-with(concat(@string,"-"),"_blank-")][not(preceding-sibling::*)]/beta[@desciption][@xml:lang="no"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::omega[contains(@title,"ent")][@xml:lang="no"][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@xml:lang="en-US"][not(following-sibling::*)]/eta[contains(@src,"tent")][@xml:lang="no"][@xml:id="id9"][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<sigma number="content" xml:id="id1">
<xi attr="this-is-att-value" xml:lang="no-nb"/>
<upsilon or="false"/>
<rho xml:lang="nb" xml:id="id2">
<psi xml:lang="en" xml:id="id3">
<beta xml:lang="en" xml:id="id4"/>
<xi xml:lang="nb">
<alpha/>
<xi token="attribute" xml:id="id5"/>
<xi title="attribute" xml:lang="en" xml:id="id6">
<gamma/>
<pi attr="solid 1px green" xml:lang="no-nb" xml:id="id7"/>
<psi>
<gamma string="_blank">
<beta desciption="this-is-att-value" xml:lang="no" xml:id="id8"/>
<omega title="content" xml:lang="no"/>
<phi xml:lang="en-US">
<eta src="content" xml:lang="no" xml:id="id9">
<green>This text must be green</green>
</eta>
</phi>
</gamma>
</psi>
</xi>
</xi>
</psi>
</rho>
</sigma>
</tree>
</test>
<test>
<xpath>//omega[starts-with(@string,"tr")][@xml:lang="en-US"]/chi[@attribute="this.nodeValue"][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[@xml:lang="nb"][@xml:id="id1"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][following-sibling::chi[not(child::node())][following-sibling::chi[starts-with(concat(@insert,"-"),"false-")][@xml:lang="en"][@xml:id="id2"][not(following-sibling::*)]/zeta//upsilon[@data][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/tau[starts-with(@delete,"t")][@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::mu[not(following-sibling::*)]//iota[contains(concat(@desciption,"$"),"lse$")][@xml:lang="en-GB"][not(following-sibling::*)]//pi[@xml:lang="en"]//pi[@xml:lang="en-GB"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]//rho[@xml:lang="en"][not(child::node())][following-sibling::chi[@xml:lang="en"][not(child::node())][following-sibling::eta//alpha[@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]//phi[contains(concat(@insert,"$"),"ute$")][@xml:id="id6"][not(child::node())][following-sibling::lambda[contains(@attribute,"ue")][@xml:lang="no"][@xml:id="id7"][preceding-sibling::*[position() = 1]]/mu[starts-with(concat(@attribute,"-"),"attribute-")][not(following-sibling::*)]//zeta[@xml:id="id8"][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[starts-with(concat(@att,"-"),"solid 1px green-")][preceding-sibling::*[position() = 1]]]]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<omega string="true" xml:lang="en-US">
<chi attribute="this.nodeValue"/>
<nu xml:lang="nb" xml:id="id1"/>
<chi/>
<chi insert="false" xml:lang="en" xml:id="id2">
<zeta>
<upsilon data="_blank" xml:id="id3">
<tau delete="this.nodeValue" xml:lang="en" xml:id="id4"/>
<mu>
<iota desciption="false" xml:lang="en-GB">
<pi xml:lang="en">
<pi xml:lang="en-GB" xml:id="id5">
<rho xml:lang="en"/>
<chi xml:lang="en"/>
<eta>
<alpha xml:lang="nb">
<phi insert="attribute" xml:id="id6"/>
<lambda attribute="this.nodeValue" xml:lang="no" xml:id="id7">
<mu attribute="attribute-value">
<zeta xml:id="id8"/>
<gamma att="solid 1px green">
<green>This text must be green</green>
</gamma>
</mu>
</lambda>
</alpha>
</eta>
</pi>
</pi>
</iota>
</mu>
</upsilon>
</zeta>
</chi>
</omega>
</tree>
</test>
<test>
<xpath>//beta[@abort="content"]/kappa[starts-with(concat(@src,"-"),"this.nodeValue-")][@xml:id="id1"][not(child::node())][following-sibling::rho[contains(@token,"lank")][@xml:lang="no"][preceding-sibling::*[position() = 1]]//nu[@data][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::omicron[starts-with(concat(@number,"-"),"attribute-")][not(child::node())][following-sibling::rho[contains(@insert,"1px green")][not(following-sibling::*)]//psi[not(child::node())][following-sibling::beta[@xml:lang="en-US"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]]]][position() = 1]]</xpath>
<tree>
<beta abort="content">
<kappa src="this.nodeValue" xml:id="id1"/>
<rho token="_blank" xml:lang="no">
<nu data="this.nodeValue"/>
<omicron number="attribute-value"/>
<rho insert="solid 1px green">
<psi/>
<beta xml:lang="en-US" xml:id="id2">
<green>This text must be green</green>
</beta>
</rho>
</rho>
</beta>
</tree>
</test>
<test>
<xpath>//theta[@insert][@xml:lang="en-GB"][@xml:id="id1"]/chi[@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::zeta[@xml:lang="en-US"][@xml:id="id3"][not(following-sibling::*)]//delta[@or="attribute-value"][@xml:lang="en-GB"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::mu[following-sibling::beta[@xml:id="id5"][preceding-sibling::*[position() = 2]][not(following-sibling::*)][position() = 1]]][position() = 1]]</xpath>
<tree>
<theta insert="this.nodeValue" xml:lang="en-GB" xml:id="id1">
<chi xml:id="id2"/>
<zeta xml:lang="en-US" xml:id="id3">
<delta or="attribute-value" xml:lang="en-GB" xml:id="id4"/>
<mu/>
<beta xml:id="id5">
<green>This text must be green</green>
</beta>
</zeta>
</theta>
</tree>
</test>
<test>
<xpath>//epsilon//lambda[@token][@xml:lang="no"][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::kappa[contains(concat(@att,"$"),"ute$")][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/*[@xml:id="id3"][not(following-sibling::*)]//nu[@xml:lang="nb"][following-sibling::*[position()=2]][not(child::node())][following-sibling::iota[@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::omega[@string="false"][@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 2]]//beta[@number="true"][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/beta[starts-with(@delete,"attr")][@xml:id="id6"][following-sibling::pi[@xml:lang="en-US"][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::delta[@xml:lang="no-nb"][preceding-sibling::*[position() = 2]]//chi[@xml:id="id8"][not(following-sibling::*)]//zeta[@and="this-is-att-value"][@xml:lang="no-nb"][@xml:id="id9"][not(following-sibling::*)]/kappa[@xml:id="id10"][following-sibling::beta[following-sibling::*[position()=3]][following-sibling::sigma[@xml:lang="en-US"][@xml:id="id11"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][following-sibling::tau[@xml:id="id12"][following-sibling::omega[starts-with(concat(@attr,"-"),"true-")][@xml:lang="en"][@xml:id="id13"]/nu[@attribute="100%"][@xml:lang="no"][@xml:id="id14"][not(following-sibling::*)]/omicron[@xml:lang="en-GB"][@xml:id="id15"]//beta[starts-with(concat(@true,"-"),"attribute value-")][@xml:id="id16"][following-sibling::*[position()=1]][following-sibling::gamma[starts-with(@title,"s")][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]]]]</xpath>
<tree>
<epsilon>
<lambda token="solid 1px green" xml:lang="no" xml:id="id1"/>
<kappa att="attribute" xml:id="id2">
<any xml:id="id3">
<nu xml:lang="nb"/>
<iota xml:id="id4"/>
<omega string="false" xml:lang="no-nb" xml:id="id5">
<beta number="true" xml:lang="no-nb">
<beta delete="attribute value" xml:id="id6"/>
<pi xml:lang="en-US" xml:id="id7"/>
<delta xml:lang="no-nb">
<chi xml:id="id8">
<zeta and="this-is-att-value" xml:lang="no-nb" xml:id="id9">
<kappa xml:id="id10"/>
<beta/>
<sigma xml:lang="en-US" xml:id="id11"/>
<tau xml:id="id12"/>
<omega attr="true" xml:lang="en" xml:id="id13">
<nu attribute="100%" xml:lang="no" xml:id="id14">
<omicron xml:lang="en-GB" xml:id="id15">
<beta true="attribute value" xml:id="id16"/>
<gamma title="solid 1px green" xml:lang="no-nb">
<green>This text must be green</green>
</gamma>
</omicron>
</nu>
</omega>
</zeta>
</chi>
</delta>
</beta>
</omega>
</any>
</kappa>
</epsilon>
</tree>
</test>
<test>
<xpath>//nu[starts-with(@class,"at")][@xml:lang="nb"][@xml:id="id1"]//mu[@insert][@xml:id="id2"][not(preceding-sibling::*)]/pi[contains(concat(@content,"$"),"k$")]/sigma[not(following-sibling::*)]//rho[@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::omicron[@and][@xml:id="id5"][following-sibling::*[position()=2]][not(preceding-sibling::omicron)][not(child::node())][following-sibling::beta[@class="true"][@xml:lang="nb"][following-sibling::rho[@xml:id="id6"][not(following-sibling::*)]//epsilon[not(preceding-sibling::*)][not(child::node())][following-sibling::theta[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/gamma[contains(concat(@src,"$"),"0%$")][@xml:lang="en"][@xml:id="id7"][following-sibling::lambda[starts-with(@desciption,"_bla")][@xml:id="id8"][preceding-sibling::*[position() = 1]]/sigma[@xml:id="id9"][not(following-sibling::*)]//eta[contains(@delete,"nt")][@xml:lang="nb"][@xml:id="id10"][not(following-sibling::*)][not(preceding-sibling::eta)]//alpha[following-sibling::*[position()=3]][following-sibling::upsilon[not(child::node())][following-sibling::omega[@number="solid 1px green"][not(child::node())][following-sibling::omega[@xml:lang="en-US"][@xml:id="id11"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/gamma[@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::nu[@xml:lang="en-GB"][@xml:id="id12"][not(following-sibling::*)][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<nu class="attribute-value" xml:lang="nb" xml:id="id1">
<mu insert="solid 1px green" xml:id="id2">
<pi content="_blank">
<sigma>
<rho xml:id="id3"/>
<pi xml:id="id4"/>
<omicron and="attribute" xml:id="id5"/>
<beta class="true" xml:lang="nb"/>
<rho xml:id="id6">
<epsilon/>
<theta xml:lang="no">
<gamma src="100%" xml:lang="en" xml:id="id7"/>
<lambda desciption="_blank" xml:id="id8">
<sigma xml:id="id9">
<eta delete="content" xml:lang="nb" xml:id="id10">
<alpha/>
<upsilon/>
<omega number="solid 1px green"/>
<omega xml:lang="en-US" xml:id="id11">
<gamma xml:lang="nb"/>
<nu xml:lang="en-GB" xml:id="id12">
<green>This text must be green</green>
</nu>
</omega>
</eta>
</sigma>
</lambda>
</theta>
</rho>
</sigma>
</pi>
</mu>
</nu>
</tree>
</test>
<test>
<xpath>//kappa[@class="another attribute value"][@xml:lang="en-GB"][@xml:id="id1"]//nu[contains(concat(@att,"$"),"green$")][@xml:lang="nb"][@xml:id="id2"][not(preceding-sibling::*)]//alpha[contains(@false,"100")][@xml:id="id3"][following-sibling::mu[@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::tau[starts-with(concat(@class,"-"),"this.nodeValue-")][@xml:lang="en-US"][@xml:id="id5"][preceding-sibling::*[position() = 2]][following-sibling::nu[starts-with(@desciption,"f")][@xml:lang="no"][not(following-sibling::*)]/alpha[contains(concat(@content,"$"),"ue$")][@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@xml:lang="no-nb"][@xml:id="id6"][following-sibling::*[position()=2]][following-sibling::eta[@token][@xml:lang="en-US"][@xml:id="id7"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::delta[starts-with(concat(@class,"-"),"100%-")][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/iota[starts-with(@true,"thi")][@xml:lang="no"][@xml:id="id8"][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[contains(concat(@attrib,"$"),"content$")][@xml:lang="no"][@xml:id="id9"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<kappa class="another attribute value" xml:lang="en-GB" xml:id="id1">
<nu att="solid 1px green" xml:lang="nb" xml:id="id2">
<alpha false="100%" xml:id="id3"/>
<mu xml:lang="no" xml:id="id4"/>
<tau class="this.nodeValue" xml:lang="en-US" xml:id="id5"/>
<nu desciption="false" xml:lang="no">
<alpha content="this.nodeValue" xml:lang="nb"/>
<tau xml:lang="no-nb" xml:id="id6"/>
<eta token="another attribute value" xml:lang="en-US" xml:id="id7"/>
<delta class="100%">
<iota true="this.nodeValue" xml:lang="no" xml:id="id8"/>
<phi attrib="content" xml:lang="no" xml:id="id9">
<green>This text must be green</green>
</phi>
</delta>
</nu>
</nu>
</kappa>
</tree>
</test>
<test>
<xpath>//eta[@xml:lang="no"][@xml:id="id1"]/gamma[contains(concat(@number,"$"),"ue$")][@xml:id="id2"]//beta[@src="true"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::omega[starts-with(concat(@src,"-"),"this.nodeValue-")][@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::kappa//alpha[@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::kappa[starts-with(concat(@string,"-"),"attribute-")][not(following-sibling::*)]//zeta[@xml:lang="en-US"]//omicron[contains(@abort,"al")][@xml:lang="no"][not(following-sibling::omicron)][not(child::node())][following-sibling::epsilon[@xml:id="id3"][following-sibling::sigma[starts-with(@class,"100")][@xml:lang="en-US"][not(following-sibling::*)]//upsilon[@xml:lang="nb"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/delta[contains(@att,"lid 1px gr")][@xml:lang="no-nb"][@xml:id="id5"]//delta[not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::theta[@src][@xml:lang="no"][@xml:id="id6"][not(child::node())][following-sibling::upsilon[@xml:lang="en-GB"][@xml:id="id7"][following-sibling::*[position()=1]][following-sibling::eta[@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/tau[@xml:lang="en"][@xml:id="id9"][following-sibling::*[position()=2]][following-sibling::phi[@xml:lang="nb"][@xml:id="id10"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[@insert][not(following-sibling::*)]]]]]]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<eta xml:lang="no" xml:id="id1">
<gamma number="true" xml:id="id2">
<beta src="true"/>
<omega src="this.nodeValue" xml:lang="en"/>
<kappa>
<alpha xml:lang="no"/>
<kappa string="attribute">
<zeta xml:lang="en-US">
<omicron abort="false" xml:lang="no"/>
<epsilon xml:id="id3"/>
<sigma class="100%" xml:lang="en-US">
<upsilon xml:lang="nb" xml:id="id4">
<delta att="solid 1px green" xml:lang="no-nb" xml:id="id5">
<delta/>
<theta src="attribute value" xml:lang="no" xml:id="id6"/>
<upsilon xml:lang="en-GB" xml:id="id7"/>
<eta xml:lang="en-GB" xml:id="id8">
<tau xml:lang="en" xml:id="id9"/>
<phi xml:lang="nb" xml:id="id10"/>
<nu insert="true">
<green>This text must be green</green>
</nu>
</eta>
</delta>
</upsilon>
</sigma>
</zeta>
</kappa>
</kappa>
</gamma>
</eta>
</tree>
</test>
<test>
<xpath>//*[@xml:lang="nb"][@xml:id="id1"]//phi[starts-with(@or,"12345")][@xml:lang="en-US"][following-sibling::*[position()=4]][following-sibling::kappa[@xml:lang="en"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::*[@xml:lang="nb"][@xml:id="id2"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][not(child::node())][following-sibling::iota[@xml:lang="no-nb"][following-sibling::beta[@xml:id="id3"]/zeta[@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::delta[@attr="attribute-value"][preceding-sibling::*[position() = 1]]//upsilon[contains(@delete,"e")][@xml:id="id4"][following-sibling::*[position()=2]][not(child::node())][following-sibling::epsilon[@xml:lang="en-US"][@xml:id="id5"][following-sibling::gamma[@name]//alpha[@xml:id="id6"]/phi[@insert][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::psi[@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[starts-with(concat(@false,"-"),"123456789-")][@xml:lang="en-US"][@xml:id="id7"]/omicron[@attrib][following-sibling::zeta[@xml:id="id8"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::iota[@xml:lang="no"][@xml:id="id9"][not(following-sibling::*)]/beta[not(child::node())][following-sibling::tau[contains(@class,"89")][@xml:lang="no"][@xml:id="id10"]//iota[@data][@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::theta[@token="another attribute value"][@xml:lang="en-US"][@xml:id="id11"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]]]]][position() = 1]]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<any xml:lang="nb" xml:id="id1">
<phi or="123456789" xml:lang="en-US"/>
<kappa xml:lang="en"/>
<any xml:lang="nb" xml:id="id2"/>
<iota xml:lang="no-nb"/>
<beta xml:id="id3">
<zeta xml:lang="en-US"/>
<delta attr="attribute-value">
<upsilon delete="true" xml:id="id4"/>
<epsilon xml:lang="en-US" xml:id="id5"/>
<gamma name="123456789">
<alpha xml:id="id6">
<phi insert="solid 1px green" xml:lang="en-US"/>
<psi xml:lang="en"/>
<nu false="123456789" xml:lang="en-US" xml:id="id7">
<omicron attrib="123456789"/>
<zeta xml:id="id8"/>
<iota xml:lang="no" xml:id="id9">
<beta/>
<tau class="123456789" xml:lang="no" xml:id="id10">
<iota data="123456789" xml:lang="no-nb"/>
<theta token="another attribute value" xml:lang="en-US" xml:id="id11">
<green>This text must be green</green>
</theta>
</tau>
</iota>
</nu>
</alpha>
</gamma>
</delta>
</beta>
</any>
</tree>
</test>
<test>
<xpath>//*[@xml:lang="nb"]//*[@xml:id="id1"][not(preceding-sibling::*)][following-sibling::lambda[@attrib][preceding-sibling::*[position() = 1]][following-sibling::tau[contains(concat(@desciption,"$"),"789$")][@xml:lang="en"][@xml:id="id2"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//rho[not(preceding-sibling::*)]/gamma[@xml:lang="no-nb"][@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::beta[@xml:id="id4"][not(child::node())][following-sibling::nu[@xml:lang="nb"][preceding-sibling::*[position() = 2]][following-sibling::*[@xml:lang="en-US"][not(child::node())][following-sibling::pi[@xml:id="id5"][following-sibling::omicron[contains(concat(@attrib,"$"),"alse$")][@xml:lang="en"][not(child::node())][following-sibling::xi[@name="content"][@xml:lang="en-US"][preceding-sibling::*[position() = 6]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]]]</xpath>
<tree>
<any xml:lang="nb">
<any xml:id="id1"/>
<lambda attrib="solid 1px green"/>
<tau desciption="123456789" xml:lang="en" xml:id="id2">
<rho>
<gamma xml:lang="no-nb" xml:id="id3"/>
<beta xml:id="id4"/>
<nu xml:lang="nb"/>
<any xml:lang="en-US"/>
<pi xml:id="id5"/>
<omicron attrib="false" xml:lang="en"/>
<xi name="content" xml:lang="en-US">
<green>This text must be green</green>
</xi>
</rho>
</tau>
</any>
</tree>
</test>
<test>
<xpath>//kappa[@name][@xml:lang="no"][@xml:id="id1"]/zeta[starts-with(@or,"attribu")][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/iota[contains(concat(@and,"$"),"his-is-att-value$")][@xml:lang="no"][@xml:id="id3"][not(preceding-sibling::*)]//omicron[@xml:lang="no"][@xml:id="id4"][not(following-sibling::*)]//rho[starts-with(concat(@false,"-"),"attribute value-")][@xml:id="id5"][not(preceding-sibling::*)]/omega[starts-with(concat(@attrib,"-"),"attribute-")][following-sibling::*[position()=2]][following-sibling::delta[@xml:lang="en-GB"][@xml:id="id6"][preceding-sibling::*[position() = 1]][following-sibling::rho[starts-with(concat(@abort,"-"),"content-")][preceding-sibling::*[position() = 2]]//kappa[@false="false"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@xml:id="id7"][preceding-sibling::*[position() = 1]]/delta[@xml:id="id8"]//sigma[contains(@false,"x gree")][@xml:lang="en-US"][@xml:id="id9"][following-sibling::pi[@xml:lang="no-nb"][not(following-sibling::*)]/upsilon[contains(concat(@token,"$"),"solid 1px green$")][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[@xml:lang="en"]/upsilon[@xml:lang="no"][not(following-sibling::*)]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<kappa name="solid 1px green" xml:lang="no" xml:id="id1">
<zeta or="attribute-value" xml:id="id2">
<iota and="this-is-att-value" xml:lang="no" xml:id="id3">
<omicron xml:lang="no" xml:id="id4">
<rho false="attribute value" xml:id="id5">
<omega attrib="attribute"/>
<delta xml:lang="en-GB" xml:id="id6"/>
<rho abort="content">
<kappa false="false"/>
<eta xml:id="id7">
<delta xml:id="id8">
<sigma false="solid 1px green" xml:lang="en-US" xml:id="id9"/>
<pi xml:lang="no-nb">
<upsilon token="solid 1px green"/>
<upsilon xml:lang="en">
<upsilon xml:lang="no">
<green>This text must be green</green>
</upsilon>
</upsilon>
</pi>
</delta>
</eta>
</rho>
</rho>
</omicron>
</iota>
</zeta>
</kappa>
</tree>
</test>
<test>
<xpath>//gamma[contains(@attrib,"lse")][@xml:lang="en-US"][@xml:id="id1"]//xi[contains(@string,"t")][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[contains(@attr,"ri")][@xml:id="id2"]/theta[contains(@data,"tent")][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@true][@xml:lang="no-nb"][not(following-sibling::*)]/kappa[@false][@xml:lang="no"][following-sibling::*[position()=2]][following-sibling::tau[@or][@xml:id="id4"][not(child::node())][following-sibling::omicron[@attrib="content"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/sigma[contains(concat(@object,"$"),"attribute$")][not(preceding-sibling::*)][not(child::node())][following-sibling::delta[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::chi[not(following-sibling::*)]//*[@xml:lang="en"][@xml:id="id5"]/mu[contains(concat(@name,"$"),"tribute value$")][not(child::node())][following-sibling::xi[@xml:id="id6"][preceding-sibling::*[position() = 1]]/beta[starts-with(@delete,"att")][@xml:id="id7"][not(child::node())][following-sibling::delta[@xml:lang="en-US"][@xml:id="id8"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//kappa[@xml:id="id9"][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[@title][@xml:id="id10"][not(following-sibling::*)][position() = 1]]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<gamma attrib="false" xml:lang="en-US" xml:id="id1">
<xi string="this-is-att-value"/>
<xi attr="attribute value" xml:id="id2">
<theta data="content" xml:id="id3"/>
<psi true="another attribute value" xml:lang="no-nb">
<kappa false="100%" xml:lang="no"/>
<tau or="100%" xml:id="id4"/>
<omicron attrib="content">
<sigma object="attribute"/>
<delta xml:lang="en-US"/>
<chi>
<any xml:lang="en" xml:id="id5">
<mu name="another attribute value"/>
<xi xml:id="id6">
<beta delete="attribute value" xml:id="id7"/>
<delta xml:lang="en-US" xml:id="id8">
<kappa xml:id="id9"/>
<pi title="this.nodeValue" xml:id="id10">
<green>This text must be green</green>
</pi>
</delta>
</xi>
</any>
</chi>
</omicron>
</psi>
</xi>
</gamma>
</tree>
</test>
<test>
<xpath>//tau[@name][@xml:lang="no"][@xml:id="id1"]/nu[@xml:lang="nb"][@xml:id="id2"][not(child::node())][following-sibling::pi[preceding-sibling::*[position() = 1]]//pi[@data="attribute"][@xml:lang="en-GB"][@xml:id="id3"][following-sibling::epsilon[starts-with(@src,"this.")][@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::delta[contains(@token,"a")][@xml:id="id4"][following-sibling::theta[contains(concat(@class,"$"),"100%$")][@xml:lang="en-US"][@xml:id="id5"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=3]][following-sibling::alpha[starts-with(@attrib,"at")][following-sibling::*[position()=2]][following-sibling::eta[@xml:lang="nb"][@xml:id="id6"][preceding-sibling::*[position() = 5]][following-sibling::*[position()=1]][not(child::node())][following-sibling::tau[preceding-sibling::*[position() = 6]][not(following-sibling::*)]//*[contains(concat(@att,"$"),"true$")][following-sibling::omicron[not(following-sibling::*)][not(preceding-sibling::omicron)]/gamma[@token="solid 1px green"][@xml:lang="no-nb"][not(following-sibling::*)]//xi[starts-with(@att,"attribute-va")][@xml:lang="en"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::chi[starts-with(concat(@token,"-"),"123456789-")][@xml:id="id8"][preceding-sibling::*[position() = 1]][position() = 1]][position() = 1]]]]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<tau name="content" xml:lang="no" xml:id="id1">
<nu xml:lang="nb" xml:id="id2"/>
<pi>
<pi data="attribute" xml:lang="en-GB" xml:id="id3"/>
<epsilon src="this.nodeValue" xml:lang="nb"/>
<delta token="false" xml:id="id4"/>
<theta class="100%" xml:lang="en-US" xml:id="id5"/>
<alpha attrib="attribute-value"/>
<eta xml:lang="nb" xml:id="id6"/>
<tau>
<any att="true"/>
<omicron>
<gamma token="solid 1px green" xml:lang="no-nb">
<xi att="attribute-value" xml:lang="en" xml:id="id7"/>
<chi token="123456789" xml:id="id8">
<green>This text must be green</green>
</chi>
</gamma>
</omicron>
</tau>
</pi>
</tau>
</tree>
</test>
<test>
<xpath>//lambda//mu[@attr="true"][@xml:lang="en-US"][@xml:id="id1"][following-sibling::sigma[preceding-sibling::*[position() = 1]][following-sibling::iota[not(child::node())][following-sibling::eta[contains(concat(@true,"$"),"attribute value$")][not(following-sibling::*)]//chi[not(child::node())][following-sibling::psi[@xml:id="id2"][not(child::node())][following-sibling::tau[@xml:lang="no"][@xml:id="id3"][not(following-sibling::*)]//gamma[@true][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::*[position()=9]][following-sibling::lambda[not(child::node())][following-sibling::gamma[@xml:lang="no-nb"][@xml:id="id4"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=7]][not(child::node())][following-sibling::rho[preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::*[@xml:lang="en"][not(child::node())][following-sibling::omicron[preceding-sibling::*[position() = 5]][not(child::node())][following-sibling::zeta[@xml:id="id5"][not(child::node())][following-sibling::kappa[@xml:id="id6"][following-sibling::*[position()=2]][following-sibling::zeta[@xml:id="id7"][not(child::node())][following-sibling::delta[@attr][@xml:lang="en"][preceding-sibling::*[position() = 9]]//omicron[contains(@class,"ttrib")][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]][position() = 1]]]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<lambda>
<mu attr="true" xml:lang="en-US" xml:id="id1"/>
<sigma/>
<iota/>
<eta true="attribute value">
<chi/>
<psi xml:id="id2"/>
<tau xml:lang="no" xml:id="id3">
<gamma true="attribute-value" xml:lang="nb"/>
<lambda/>
<gamma xml:lang="no-nb" xml:id="id4"/>
<rho/>
<any xml:lang="en"/>
<omicron/>
<zeta xml:id="id5"/>
<kappa xml:id="id6"/>
<zeta xml:id="id7"/>
<delta attr="attribute value" xml:lang="en">
<omicron class="attribute">
<green>This text must be green</green>
</omicron>
</delta>
</tau>
</eta>
</lambda>
</tree>
</test>
<test>
<xpath>//omicron/upsilon[contains(@token,"56789")][@xml:lang="en"][@xml:id="id1"][following-sibling::*[position()=6]][following-sibling::theta[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::phi[@data][@xml:id="id2"][not(child::node())][following-sibling::psi[contains(concat(@name,"$"),"k$")][@xml:id="id3"][preceding-sibling::*[position() = 3]][following-sibling::chi[@object][@xml:id="id4"][not(child::node())][following-sibling::rho[@xml:lang="en-US"][@xml:id="id5"][not(child::node())][following-sibling::eta[@xml:lang="en"][@xml:id="id6"]//alpha[@desciption="content"][@xml:id="id7"][not(preceding-sibling::*)]//pi[@attribute][not(preceding-sibling::*)][not(preceding-sibling::pi)]/zeta[contains(@data,"t")][@xml:lang="en"][@xml:id="id8"][not(child::node())][following-sibling::kappa[@false][@xml:id="id9"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::nu[starts-with(concat(@abort,"-"),"content-")][@xml:lang="en-US"][not(following-sibling::*)]/beta[@or][@xml:lang="en-GB"][following-sibling::mu[@token][@xml:id="id10"]//alpha[contains(concat(@and,"$"),"00%$")]//xi[@number][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]/iota[@xml:id="id11"][not(following-sibling::*)]//tau[@xml:id="id12"][not(preceding-sibling::*)][not(following-sibling::*)]/sigma[contains(@insert,"so")][@xml:id="id13"][not(preceding-sibling::*)][not(following-sibling::*)]/mu[@xml:id="id14"]][position() = 1]]][position() = 1]]]]][position() = 1]]]</xpath>
<tree>
<omicron>
<upsilon token="123456789" xml:lang="en" xml:id="id1"/>
<theta/>
<phi data="this.nodeValue" xml:id="id2"/>
<psi name="_blank" xml:id="id3"/>
<chi object="another attribute value" xml:id="id4"/>
<rho xml:lang="en-US" xml:id="id5"/>
<eta xml:lang="en" xml:id="id6">
<alpha desciption="content" xml:id="id7">
<pi attribute="true">
<zeta data="content" xml:lang="en" xml:id="id8"/>
<kappa false="this.nodeValue" xml:id="id9"/>
<nu abort="content" xml:lang="en-US">
<beta or="attribute value" xml:lang="en-GB"/>
<mu token="attribute" xml:id="id10">
<alpha and="100%">
<xi number="content" xml:lang="en-GB">
<iota xml:id="id11">
<tau xml:id="id12">
<sigma insert="solid 1px green" xml:id="id13">
<mu xml:id="id14">
<green>This text must be green</green>
</mu>
</sigma>
</tau>
</iota>
</xi>
</alpha>
</mu>
</nu>
</pi>
</alpha>
</eta>
</omicron>
</tree>
</test>
<test>
<xpath>//omicron/phi[@xml:id="id1"][not(following-sibling::*)]/omicron[starts-with(@false,"attri")][@xml:id="id2"][not(child::node())][following-sibling::delta[@xml:id="id3"][preceding-sibling::*[position() = 1]]/gamma[following-sibling::psi[@xml:lang="en-GB"][@xml:id="id4"][not(child::node())][following-sibling::tau[@xml:lang="en-GB"][following-sibling::chi[preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::*[starts-with(concat(@data,"-"),"false-")][@xml:id="id5"][following-sibling::*[position()=2]][following-sibling::omega[@xml:lang="en-GB"][@xml:id="id6"][preceding-sibling::*[position() = 5]][following-sibling::epsilon[@xml:lang="no"][@xml:id="id7"][not(following-sibling::*)]//beta[@xml:lang="nb"][@xml:id="id8"][not(preceding-sibling::*)][not(following-sibling::*)]/upsilon[@xml:id="id9"]//theta[@number][not(following-sibling::*)]//psi[@xml:lang="nb"][@xml:id="id10"][following-sibling::sigma[@string="solid 1px green"]//epsilon[@xml:lang="en-GB"][@xml:id="id11"][not(following-sibling::*)]/kappa[contains(concat(@class,"$"),"nk$")][@xml:lang="no-nb"][not(preceding-sibling::*)]//sigma[@xml:lang="no-nb"][@xml:id="id12"][not(preceding-sibling::*)][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<omicron>
<phi xml:id="id1">
<omicron false="attribute" xml:id="id2"/>
<delta xml:id="id3">
<gamma/>
<psi xml:lang="en-GB" xml:id="id4"/>
<tau xml:lang="en-GB"/>
<chi/>
<any data="false" xml:id="id5"/>
<omega xml:lang="en-GB" xml:id="id6"/>
<epsilon xml:lang="no" xml:id="id7">
<beta xml:lang="nb" xml:id="id8">
<upsilon xml:id="id9">
<theta number="123456789">
<psi xml:lang="nb" xml:id="id10"/>
<sigma string="solid 1px green">
<epsilon xml:lang="en-GB" xml:id="id11">
<kappa class="_blank" xml:lang="no-nb">
<sigma xml:lang="no-nb" xml:id="id12">
<green>This text must be green</green>
</sigma>
</kappa>
</epsilon>
</sigma>
</theta>
</upsilon>
</beta>
</epsilon>
</delta>
</phi>
</omicron>
</tree>
</test>
<test>
<xpath>//phi[@xml:lang="en-GB"][@xml:id="id1"]/psi[@xml:lang="nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::phi[@xml:lang="nb"][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::omicron[@title="another attribute value"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/lambda[starts-with(concat(@token,"-"),"solid 1px green-")][@xml:lang="en"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::mu[contains(@delete,"%")][@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::eta[preceding-sibling::*[position() = 2]][not(following-sibling::eta)][following-sibling::delta[@token][@xml:id="id4"][preceding-sibling::*[position() = 3]][not(following-sibling::*)][position() = 1]]]]]]</xpath>
<tree>
<phi xml:lang="en-GB" xml:id="id1">
<psi xml:lang="nb"/>
<phi xml:lang="nb" xml:id="id2"/>
<omicron title="another attribute value">
<lambda token="solid 1px green" xml:lang="en" xml:id="id3"/>
<mu delete="100%" xml:lang="no"/>
<eta/>
<delta token="true" xml:id="id4">
<green>This text must be green</green>
</delta>
</omicron>
</phi>
</tree>
</test>
<test>
<xpath>//rho[@xml:lang="en-GB"]//xi[not(preceding-sibling::*)]//omicron[@xml:lang="en"][@xml:id="id1"][not(following-sibling::*)]/xi[contains(concat(@or,"$"),"lue$")][@xml:lang="en-US"][not(following-sibling::*)]//delta[not(following-sibling::*)][not(preceding-sibling::delta)]/*[@desciption="solid 1px green"][@xml:lang="en-US"]/sigma[@xml:lang="en-US"][@xml:id="id2"][not(child::node())][following-sibling::mu[@xml:lang="no-nb"]/delta[@desciption][@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]]//lambda[starts-with(@title,"10")][not(preceding-sibling::*)][not(following-sibling::*)]//rho[@xml:lang="en-US"][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[contains(@class,"fa")][@xml:id="id3"][preceding-sibling::*[position() = 1]]/delta[not(child::node())][following-sibling::zeta[starts-with(concat(@token,"-"),"attribute-")]/kappa[@token="this.nodeValue"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::gamma[@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/psi[@xml:id="id5"][not(preceding-sibling::*)]//kappa[contains(concat(@string,"$"),"ibute-value$")][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::tau[contains(@desciption,"789")][@xml:lang="en-US"][@xml:id="id7"][preceding-sibling::*[position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<rho xml:lang="en-GB">
<xi>
<omicron xml:lang="en" xml:id="id1">
<xi or="this.nodeValue" xml:lang="en-US">
<delta>
<any desciption="solid 1px green" xml:lang="en-US">
<sigma xml:lang="en-US" xml:id="id2"/>
<mu xml:lang="no-nb">
<delta desciption="attribute value" xml:lang="en-GB"/>
<rho xml:lang="no-nb">
<lambda title="100%">
<rho xml:lang="en-US"/>
<nu class="false" xml:id="id3">
<delta/>
<zeta token="attribute-value">
<kappa token="this.nodeValue" xml:id="id4"/>
<gamma xml:lang="nb">
<psi xml:id="id5">
<kappa string="attribute-value" xml:id="id6"/>
<tau desciption="123456789" xml:lang="en-US" xml:id="id7">
<green>This text must be green</green>
</tau>
</psi>
</gamma>
</zeta>
</nu>
</lambda>
</rho>
</mu>
</any>
</delta>
</xi>
</omicron>
</xi>
</rho>
</tree>
</test>
<test>
<xpath>//epsilon[starts-with(@and,"false")][@xml:lang="no"][@xml:id="id1"]/xi[@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::mu[not(following-sibling::*)]/lambda[not(following-sibling::*)]/xi[@class="attribute-value"][@xml:id="id3"]/omicron[not(preceding-sibling::*)][following-sibling::omega[@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/*[@xml:lang="nb"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::delta[contains(concat(@true,"$"),"value$")][@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 1]][following-sibling::xi[@desciption][@xml:id="id7"][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<epsilon and="false" xml:lang="no" xml:id="id1">
<xi xml:lang="no" xml:id="id2"/>
<mu>
<lambda>
<xi class="attribute-value" xml:id="id3">
<omicron/>
<omega xml:id="id4">
<any xml:lang="nb" xml:id="id5"/>
<delta true="another attribute value" xml:lang="en-US" xml:id="id6"/>
<xi desciption="true" xml:id="id7">
<green>This text must be green</green>
</xi>
</omega>
</xi>
</lambda>
</mu>
</epsilon>
</tree>
</test>
<test>
<xpath>//sigma//zeta[@xml:lang="no"][not(following-sibling::*)]/beta[@xml:lang="en-GB"][@xml:id="id1"][not(preceding-sibling::beta)][not(child::node())][following-sibling::pi[starts-with(concat(@name,"-"),"false-")][@xml:lang="no-nb"][@xml:id="id2"][preceding-sibling::*[position() = 1]]/iota[starts-with(@att,"co")][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[starts-with(concat(@attribute,"-"),"another attribute value-")][@xml:id="id3"]/alpha[starts-with(concat(@title,"-"),"another attribute value-")][@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]/sigma[@true="content"][@xml:lang="nb"][@xml:id="id4"][not(following-sibling::*)]//pi[not(preceding-sibling::*)][not(following-sibling::*)]/alpha[not(preceding-sibling::*)][following-sibling::nu[starts-with(concat(@attr,"-"),"another attribute value-")][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::sigma[preceding-sibling::*[position() = 2]][following-sibling::epsilon[@xml:id="id6"][following-sibling::lambda[@att][@xml:lang="en-GB"][preceding-sibling::*[position() = 4]]/*[@xml:lang="en-US"][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<sigma>
<zeta xml:lang="no">
<beta xml:lang="en-GB" xml:id="id1"/>
<pi name="false" xml:lang="no-nb" xml:id="id2">
<iota att="content"/>
<pi attribute="another attribute value" xml:id="id3">
<alpha title="another attribute value" xml:lang="nb">
<sigma true="content" xml:lang="nb" xml:id="id4">
<pi>
<alpha/>
<nu attr="another attribute value" xml:id="id5"/>
<sigma/>
<epsilon xml:id="id6"/>
<lambda att="true" xml:lang="en-GB">
<any xml:lang="en-US" xml:id="id7">
<green>This text must be green</green>
</any>
</lambda>
</pi>
</sigma>
</alpha>
</pi>
</pi>
</zeta>
</sigma>
</tree>
</test>
<test>
<xpath>//xi[@xml:lang="no-nb"][@xml:id="id1"]/kappa[contains(@object,"co")][not(following-sibling::*)]/xi[@false][@xml:lang="en-US"][not(preceding-sibling::*)][not(following-sibling::*)]//psi[not(preceding-sibling::*)][following-sibling::rho[@attrib][@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//iota[@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::iota[@xml:lang="no-nb"]/phi[starts-with(@true,"this.nodeVal")][@xml:lang="no"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::chi[@xml:id="id4"][not(following-sibling::*)]/lambda[contains(@title,"3456789")][not(preceding-sibling::*)]//epsilon[contains(concat(@false,"$"),"se$")][@xml:id="id5"]/alpha[@src="false"][@xml:lang="en-GB"][following-sibling::beta[not(preceding-sibling::beta)][not(child::node())][following-sibling::zeta[@attr="this.nodeValue"][@xml:id="id6"][not(following-sibling::*)]//phi//kappa[not(following-sibling::*)]//iota[contains(@src,"ue")][not(preceding-sibling::*)][not(following-sibling::*)]/psi[not(preceding-sibling::*)][not(following-sibling::*)]/phi[@object="another attribute value"][not(preceding-sibling::*)][not(following-sibling::phi)]//beta[not(following-sibling::*)]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<xi xml:lang="no-nb" xml:id="id1">
<kappa object="content">
<xi false="_blank" xml:lang="en-US">
<psi/>
<rho attrib="attribute" xml:lang="no" xml:id="id2">
<iota xml:lang="no-nb"/>
<iota xml:lang="no-nb">
<phi true="this.nodeValue" xml:lang="no" xml:id="id3"/>
<chi xml:id="id4">
<lambda title="123456789">
<epsilon false="false" xml:id="id5">
<alpha src="false" xml:lang="en-GB"/>
<beta/>
<zeta attr="this.nodeValue" xml:id="id6">
<phi>
<kappa>
<iota src="true">
<psi>
<phi object="another attribute value">
<beta>
<green>This text must be green</green>
</beta>
</phi>
</psi>
</iota>
</kappa>
</phi>
</zeta>
</epsilon>
</lambda>
</chi>
</iota>
</rho>
</xi>
</kappa>
</xi>
</tree>
</test>
<test>
<xpath>//nu[@xml:lang="no"][@xml:id="id1"]//delta[contains(concat(@att,"$"),"ribute-value$")][@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)]//phi[@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon[@xml:id="id4"][following-sibling::*[position()=2]][following-sibling::*[preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][following-sibling::eta[@xml:id="id5"]//eta[@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[@desciption][@xml:lang="no"][not(following-sibling::*)]/chi[starts-with(@data,"attribut")][not(preceding-sibling::*)]/chi[following-sibling::omega[@xml:lang="nb"][@xml:id="id6"][not(child::node())][following-sibling::beta[@insert="another attribute value"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=3]][following-sibling::rho[starts-with(@src,"true")][preceding-sibling::*[position() = 3]][following-sibling::pi[starts-with(@token,"1")][@xml:lang="en-GB"][@xml:id="id7"][following-sibling::iota[@xml:id="id8"][preceding-sibling::*[position() = 5]]//kappa[contains(@abort,"lue")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@token="false"][@xml:lang="no-nb"][@xml:id="id9"][not(following-sibling::*)][not(preceding-sibling::eta)]/mu[@insert="another attribute value"][@xml:id="id10"][not(child::node())][following-sibling::chi[@attrib][not(following-sibling::*)]/xi[@name][@xml:id="id11"][not(preceding-sibling::*)]/theta[contains(@title,"no")][not(preceding-sibling::*)][not(following-sibling::*)]]][position() = 1]]]]]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<nu xml:lang="no" xml:id="id1">
<delta att="attribute-value" xml:lang="no" xml:id="id2">
<phi xml:id="id3"/>
<epsilon xml:id="id4"/>
<any/>
<eta xml:id="id5">
<eta xml:lang="no-nb"/>
<upsilon desciption="attribute" xml:lang="no">
<chi data="attribute">
<chi/>
<omega xml:lang="nb" xml:id="id6"/>
<beta insert="another attribute value"/>
<rho src="true"/>
<pi token="100%" xml:lang="en-GB" xml:id="id7"/>
<iota xml:id="id8">
<kappa abort="this.nodeValue" xml:lang="no-nb"/>
<eta token="false" xml:lang="no-nb" xml:id="id9">
<mu insert="another attribute value" xml:id="id10"/>
<chi attrib="100%">
<xi name="another attribute value" xml:id="id11">
<theta title="this.nodeValue">
<green>This text must be green</green>
</theta>
</xi>
</chi>
</eta>
</iota>
</chi>
</upsilon>
</eta>
</delta>
</nu>
</tree>
</test>
<test>
<xpath>//psi[@xml:lang="en-GB"]/rho[@xml:lang="en"][not(following-sibling::*)]//eta[@token="123456789"][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::kappa[starts-with(@or,"tru")][@xml:id="id1"][not(following-sibling::*)]/delta[starts-with(@desciption,"this.")][@xml:id="id2"]//phi[starts-with(@token,"100%")][@xml:lang="no-nb"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::alpha[preceding-sibling::*[position() = 1]][following-sibling::mu[@xml:id="id4"][preceding-sibling::*[position() = 2]]//psi[@xml:id="id5"]//zeta[@xml:lang="en"][@xml:id="id6"][not(preceding-sibling::*)]/phi[@src][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::tau[@xml:lang="en"][preceding-sibling::*[position() = 1]][not(preceding-sibling::tau)]/eta[contains(concat(@title,"$"),"true$")][@xml:id="id7"]//delta[contains(concat(@number,"$"),"attribute value$")][@xml:lang="nb"][@xml:id="id8"][not(preceding-sibling::*)]//chi[@desciption][@xml:id="id9"]//phi[@token][@xml:lang="en-US"][@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]//xi[@attribute][not(preceding-sibling::*)][following-sibling::epsilon[@xml:id="id11"]//zeta[@xml:lang="en-US"][@xml:id="id12"][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[@number][preceding-sibling::*[position() = 1]][following-sibling::omicron[@xml:lang="no-nb"][@xml:id="id13"][not(child::node())][following-sibling::delta[@data="_blank"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]]]]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<psi xml:lang="en-GB">
<rho xml:lang="en">
<eta token="123456789" xml:lang="no"/>
<kappa or="true" xml:id="id1">
<delta desciption="this.nodeValue" xml:id="id2">
<phi token="100%" xml:lang="no-nb" xml:id="id3"/>
<alpha/>
<mu xml:id="id4">
<psi xml:id="id5">
<zeta xml:lang="en" xml:id="id6">
<phi src="123456789" xml:lang="no"/>
<tau xml:lang="en">
<eta title="true" xml:id="id7">
<delta number="attribute value" xml:lang="nb" xml:id="id8">
<chi desciption="attribute-value" xml:id="id9">
<phi token="true" xml:lang="en-US" xml:id="id10">
<xi attribute="123456789"/>
<epsilon xml:id="id11">
<zeta xml:lang="en-US" xml:id="id12"/>
<pi number="attribute-value"/>
<omicron xml:lang="no-nb" xml:id="id13"/>
<delta data="_blank">
<green>This text must be green</green>
</delta>
</epsilon>
</phi>
</chi>
</delta>
</eta>
</tau>
</zeta>
</psi>
</mu>
</delta>
</kappa>
</rho>
</psi>
</tree>
</test>
<test>
<xpath>//omega[@true][@xml:lang="en-US"][@xml:id="id1"]/delta[following-sibling::chi[@abort][@xml:lang="en"][following-sibling::kappa[preceding-sibling::*[position() = 2]]//lambda//tau[@xml:lang="nb"][@xml:id="id2"]//beta[contains(concat(@token,"$"),"false$")][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::gamma[@xml:lang="en"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//chi[@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@xml:lang="no"][not(following-sibling::*)]//iota[starts-with(@desciption,"_")][@xml:id="id5"][not(following-sibling::*)]//xi[@xml:id="id6"][following-sibling::rho[@attr][@xml:lang="en"][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//beta[starts-with(concat(@name,"-"),"100%-")][@xml:lang="en-US"][not(preceding-sibling::*)]//alpha[@xml:lang="no-nb"][@xml:id="id8"]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<omega true="true" xml:lang="en-US" xml:id="id1">
<delta/>
<chi abort="true" xml:lang="en"/>
<kappa>
<lambda>
<tau xml:lang="nb" xml:id="id2">
<beta token="false" xml:id="id3"/>
<gamma xml:lang="en">
<chi xml:id="id4"/>
<xi xml:lang="no">
<iota desciption="_blank" xml:id="id5">
<xi xml:id="id6"/>
<rho attr="true" xml:lang="en" xml:id="id7">
<beta name="100%" xml:lang="en-US">
<alpha xml:lang="no-nb" xml:id="id8">
<green>This text must be green</green>
</alpha>
</beta>
</rho>
</iota>
</xi>
</gamma>
</tau>
</lambda>
</kappa>
</omega>
</tree>
</test>
<test>
<xpath>//zeta/kappa[contains(@desciption,"nk")][not(preceding-sibling::*)][following-sibling::omega[@abort="another attribute value"][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::lambda[@class="true"][@xml:lang="no-nb"][@xml:id="id1"][not(child::node())][following-sibling::iota[contains(@insert,"ute val")][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::chi[@xml:lang="no"][@xml:id="id2"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]]][position() = 1]][position() = 1]]</xpath>
<tree>
<zeta>
<kappa desciption="_blank"/>
<omega abort="another attribute value" xml:lang="no-nb"/>
<lambda class="true" xml:lang="no-nb" xml:id="id1"/>
<iota insert="another attribute value"/>
<chi xml:lang="no" xml:id="id2">
<green>This text must be green</green>
</chi>
</zeta>
</tree>
</test>
<test>
<xpath>//*[@xml:lang="en-GB"]//eta[contains(@attr,"23")][not(following-sibling::*)]/lambda[contains(concat(@true,"$"),"789$")][@xml:lang="en-GB"][@xml:id="id1"]/xi[@xml:lang="en"][@xml:id="id2"]/beta[contains(@data,"%")][@xml:lang="en"][not(preceding-sibling::*)][following-sibling::chi[contains(@or,"ibu")][@xml:id="id3"][following-sibling::upsilon[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@number][@xml:id="id4"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//chi[not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[starts-with(@att,"attri")][following-sibling::*[position()=1]][not(child::node())][following-sibling::eta[starts-with(concat(@object,"-"),"another attribute value-")][@xml:lang="no"]//omicron[not(preceding-sibling::*)][not(following-sibling::*)]]]]][position() = 1]]</xpath>
<tree>
<any xml:lang="en-GB">
<eta attr="123456789">
<lambda true="123456789" xml:lang="en-GB" xml:id="id1">
<xi xml:lang="en" xml:id="id2">
<beta data="100%" xml:lang="en"/>
<chi or="another attribute value" xml:id="id3"/>
<upsilon xml:lang="en-GB"/>
<phi number="false" xml:id="id4">
<chi/>
<lambda att="attribute value"/>
<eta object="another attribute value" xml:lang="no">
<omicron>
<green>This text must be green</green>
</omicron>
</eta>
</phi>
</xi>
</lambda>
</eta>
</any>
</tree>
</test>
<test>
<xpath>//beta[starts-with(@object,"attribut")][@xml:lang="no-nb"]/mu[@xml:lang="en"][not(following-sibling::*)][not(following-sibling::mu)]/theta[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::theta[@true="attribute"][@xml:lang="nb"][@xml:id="id1"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][following-sibling::delta[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//phi[contains(concat(@string,"$"),"nt$")][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::epsilon[@title][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<beta object="attribute" xml:lang="no-nb">
<mu xml:lang="en">
<theta xml:lang="en-US"/>
<theta true="attribute" xml:lang="nb" xml:id="id1"/>
<delta xml:lang="en-GB">
<phi string="content" xml:id="id2"/>
<epsilon title="this.nodeValue" xml:lang="no-nb">
<green>This text must be green</green>
</epsilon>
</delta>
</mu>
</beta>
</tree>
</test>
<test>
<xpath>//omega[@xml:id="id1"]//tau[contains(@insert,"00%")][@xml:lang="en"][@xml:id="id2"][following-sibling::*[position()=1]][not(child::node())][following-sibling::beta[starts-with(@object,"attribute ")][@xml:lang="no-nb"][@xml:id="id3"]/beta[starts-with(@desciption,"solid 1px ")][@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/nu[@true][@xml:id="id5"][not(following-sibling::*)]//alpha[contains(concat(@desciption,"$"),"e$")][not(preceding-sibling::*)][not(child::node())][following-sibling::gamma[@xml:lang="en-GB"][@xml:id="id6"][not(following-sibling::*)]/omicron[contains(concat(@insert,"$"),"0%$")][@xml:lang="nb"][@xml:id="id7"][not(preceding-sibling::*)]/kappa[contains(concat(@delete,"$"),"rue$")][@xml:lang="en-US"][@xml:id="id8"][not(preceding-sibling::*)]//omega[@xml:lang="en-GB"][@xml:id="id9"][not(preceding-sibling::*)]//nu[@xml:lang="no"][@xml:id="id10"]/kappa[@insert][@xml:lang="no-nb"][@xml:id="id11"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::kappa[starts-with(concat(@name,"-"),"content-")][@xml:lang="en"][not(following-sibling::*)]/phi[not(preceding-sibling::*)][position() = 1]]]]</xpath>
<tree>
<omega xml:id="id1">
<tau insert="100%" xml:lang="en" xml:id="id2"/>
<beta object="attribute value" xml:lang="no-nb" xml:id="id3">
<beta desciption="solid 1px green" xml:lang="no" xml:id="id4">
<nu true="true" xml:id="id5">
<alpha desciption="false"/>
<gamma xml:lang="en-GB" xml:id="id6">
<omicron insert="100%" xml:lang="nb" xml:id="id7">
<kappa delete="true" xml:lang="en-US" xml:id="id8">
<omega xml:lang="en-GB" xml:id="id9">
<nu xml:lang="no" xml:id="id10">
<kappa insert="100%" xml:lang="no-nb" xml:id="id11"/>
<kappa name="content" xml:lang="en">
<phi>
<green>This text must be green</green>
</phi>
</kappa>
</nu>
</omega>
</kappa>
</omicron>
</gamma>
</nu>
</beta>
</beta>
</omega>
</tree>
</test>
<test>
<xpath>//nu[@xml:lang="no"][@xml:id="id1"]/iota[starts-with(@content,"this-is-att-valu")][not(preceding-sibling::iota)]/zeta[@title][not(following-sibling::*)]//sigma[@delete="this-is-att-value"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[following-sibling::*[preceding-sibling::*[position() = 2]]/iota[@xml:id="id3"][not(child::node())][following-sibling::omega[@delete][following-sibling::iota[@desciption][@xml:lang="en"][preceding-sibling::*[position() = 2]]//upsilon[following-sibling::*[position()=2]][not(following-sibling::upsilon)][not(child::node())][following-sibling::chi[@xml:id="id4"][following-sibling::*[position()=1]][following-sibling::alpha[@att][@xml:lang="nb"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<nu xml:lang="no" xml:id="id1">
<iota content="this-is-att-value">
<zeta title="123456789">
<sigma delete="this-is-att-value" xml:id="id2"/>
<any/>
<any>
<iota xml:id="id3"/>
<omega delete="attribute value"/>
<iota desciption="this-is-att-value" xml:lang="en">
<upsilon/>
<chi xml:id="id4"/>
<alpha att="this-is-att-value" xml:lang="nb">
<green>This text must be green</green>
</alpha>
</iota>
</any>
</zeta>
</iota>
</nu>
</tree>
</test>
<test>
<xpath>//delta[contains(@title,"his")][@xml:lang="en-US"]/tau[@xml:lang="en"][not(following-sibling::*)]//rho[@xml:lang="no-nb"][@xml:id="id1"][not(preceding-sibling::*)][following-sibling::*[position()=3]][following-sibling::iota[@xml:lang="en"][@xml:id="id2"][following-sibling::theta[@att="123456789"][@xml:id="id3"][following-sibling::gamma[@or="solid 1px green"]/delta[starts-with(concat(@desciption,"-"),"100%-")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::delta[@xml:id="id4"][following-sibling::*[contains(@attribute,"t")][@xml:lang="en-US"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//delta[@string="attribute-value"][@xml:lang="no-nb"][following-sibling::pi[following-sibling::tau[@att][@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/mu[starts-with(@abort,"co")][@xml:lang="no"][not(preceding-sibling::*)][position() = 1]]][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<delta title="this.nodeValue" xml:lang="en-US">
<tau xml:lang="en">
<rho xml:lang="no-nb" xml:id="id1"/>
<iota xml:lang="en" xml:id="id2"/>
<theta att="123456789" xml:id="id3"/>
<gamma or="solid 1px green">
<delta desciption="100%" xml:lang="en-GB"/>
<delta xml:id="id4"/>
<any attribute="content" xml:lang="en-US">
<delta string="attribute-value" xml:lang="no-nb"/>
<pi/>
<tau att="_blank" xml:lang="no-nb" xml:id="id5">
<mu abort="content" xml:lang="no">
<green>This text must be green</green>
</mu>
</tau>
</any>
</gamma>
</tau>
</delta>
</tree>
</test>
<test>
<xpath>//upsilon[@xml:lang="en-GB"][@xml:id="id1"]//rho[contains(@src,"ute va")][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::*[position()=4]][not(child::node())][following-sibling::chi[starts-with(concat(@string,"-"),"attribute-")][@xml:lang="en-GB"][following-sibling::*[position()=3]][not(child::node())][following-sibling::chi[@xml:id="id2"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][not(child::node())][following-sibling::mu[@xml:lang="en-US"][not(child::node())][following-sibling::sigma[@data][preceding-sibling::*[position() = 4]][not(following-sibling::*)][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<upsilon xml:lang="en-GB" xml:id="id1">
<rho src="attribute value" xml:lang="en-GB"/>
<chi string="attribute" xml:lang="en-GB"/>
<chi xml:id="id2"/>
<mu xml:lang="en-US"/>
<sigma data="another attribute value">
<green>This text must be green</green>
</sigma>
</upsilon>
</tree>
</test>
<test>
<xpath>//mu[@attribute="true"][@xml:lang="no-nb"]/zeta[@and="attribute-value"][not(preceding-sibling::*)]//lambda[starts-with(@class,"attribute")][@xml:lang="en"][not(preceding-sibling::*)][following-sibling::sigma[@xml:id="id1"][not(child::node())][following-sibling::*[starts-with(@attribute,"content")][@xml:id="id2"][following-sibling::beta[@token][@xml:lang="en-US"][preceding-sibling::*[position() = 3]][following-sibling::kappa[@token][preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::mu[contains(concat(@title,"$"),"te$")]//phi[@title="false"][@xml:id="id3"][following-sibling::*[position()=1]][following-sibling::*[@xml:lang="en-GB"][@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/lambda[not(following-sibling::*)]//phi[starts-with(@number,"123")][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/chi[@xml:lang="en-GB"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::*[position()=4]][not(child::node())][following-sibling::*[@xml:lang="en-US"][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::sigma[starts-with(@content,"this.n")][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::kappa[not(child::node())][following-sibling::omega[@xml:lang="en-US"][@xml:id="id8"][preceding-sibling::*[position() = 4]][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]]]]</xpath>
<tree>
<mu attribute="true" xml:lang="no-nb">
<zeta and="attribute-value">
<lambda class="attribute-value" xml:lang="en"/>
<sigma xml:id="id1"/>
<any attribute="content" xml:id="id2"/>
<beta token="123456789" xml:lang="en-US"/>
<kappa token="this.nodeValue"/>
<mu title="attribute">
<phi title="false" xml:id="id3"/>
<any xml:lang="en-GB" xml:id="id4">
<lambda>
<phi number="123456789" xml:id="id5">
<chi xml:lang="en-GB" xml:id="id6"/>
<any xml:lang="en-US" xml:id="id7"/>
<sigma content="this.nodeValue"/>
<kappa/>
<omega xml:lang="en-US" xml:id="id8">
<green>This text must be green</green>
</omega>
</phi>
</lambda>
</any>
</mu>
</zeta>
</mu>
</tree>
</test>
<test>
<xpath>//chi[@attribute]//kappa[starts-with(concat(@number,"-"),"attribute value-")][@xml:id="id1"][not(following-sibling::*)]//lambda[@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[starts-with(@attribute,"100")][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::omicron[starts-with(concat(@token,"-"),"attribute-")][@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 2]]/*[@xml:lang="no"][@xml:id="id4"][not(preceding-sibling::*)]//beta[@xml:id="id5"][not(following-sibling::*)]/psi[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::psi[@number][not(child::node())][following-sibling::beta[starts-with(@object,"sol")]//upsilon[starts-with(@or,"false")][not(preceding-sibling::*)][not(following-sibling::*)]//psi[contains(concat(@abort,"$"),"reen$")][@xml:lang="no-nb"][@xml:id="id6"][not(child::node())][following-sibling::omicron[@or][not(following-sibling::*)]//xi[@insert][@xml:lang="en"][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::phi[@xml:lang="nb"][@xml:id="id8"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//*[@xml:id="id9"][not(child::node())][following-sibling::eta[@or][@xml:id="id10"][not(child::node())][following-sibling::omicron//iota[@xml:lang="nb"][following-sibling::iota[@xml:lang="en"][@xml:id="id11"]//psi[contains(@attribute,"0")][not(preceding-sibling::*)]//iota[@xml:lang="no-nb"][@xml:id="id12"][not(child::node())][following-sibling::zeta[preceding-sibling::*[position() = 1]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]]]]]</xpath>
<tree>
<chi attribute="attribute value">
<kappa number="attribute value" xml:id="id1">
<lambda xml:id="id2"/>
<xi attribute="100%"/>
<omicron token="attribute" xml:lang="no" xml:id="id3">
<any xml:lang="no" xml:id="id4">
<beta xml:id="id5">
<psi xml:lang="en-US"/>
<psi number="false"/>
<beta object="solid 1px green">
<upsilon or="false">
<psi abort="solid 1px green" xml:lang="no-nb" xml:id="id6"/>
<omicron or="false">
<xi insert="attribute value" xml:lang="en" xml:id="id7"/>
<phi xml:lang="nb" xml:id="id8">
<any xml:id="id9"/>
<eta or="this-is-att-value" xml:id="id10"/>
<omicron>
<iota xml:lang="nb"/>
<iota xml:lang="en" xml:id="id11">
<psi attribute="100%">
<iota xml:lang="no-nb" xml:id="id12"/>
<zeta>
<green>This text must be green</green>
</zeta>
</psi>
</iota>
</omicron>
</phi>
</omicron>
</upsilon>
</beta>
</beta>
</any>
</omicron>
</kappa>
</chi>
</tree>
</test>
<test>
<xpath>//chi[starts-with(@attr,"another attribu")][@xml:id="id1"]/omicron[@attr="123456789"][not(preceding-sibling::*)]/delta[not(preceding-sibling::*)][not(child::node())][following-sibling::chi[starts-with(@insert,"a")][@xml:lang="nb"][@xml:id="id2"][not(child::node())][following-sibling::lambda[contains(@object,"se")][@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//omicron[@xml:lang="no-nb"][not(following-sibling::*)]//*[@xml:lang="en-US"][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::*[contains(@name,"_blan")][@xml:lang="en"][@xml:id="id5"][following-sibling::*[position()=2]][following-sibling::upsilon[@xml:id="id6"][following-sibling::epsilon[@xml:lang="no"][@xml:id="id7"]/*[starts-with(concat(@attr,"-"),"attribute-")][@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::mu[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::epsilon[@delete][@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 2]][following-sibling::eta[@xml:id="id9"][preceding-sibling::*[position() = 3]][following-sibling::omega[@desciption="_blank"][@xml:id="id10"][preceding-sibling::*[position() = 4]][not(following-sibling::*)]//rho[@att="another attribute value"][@xml:id="id11"][not(preceding-sibling::*)][not(following-sibling::*)]/mu[@xml:id="id12"][not(preceding-sibling::*)]//theta[@xml:id="id13"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<chi attr="another attribute value" xml:id="id1">
<omicron attr="123456789">
<delta/>
<chi insert="attribute" xml:lang="nb" xml:id="id2"/>
<lambda object="false" xml:lang="no" xml:id="id3">
<omicron xml:lang="no-nb">
<any xml:lang="en-US" xml:id="id4"/>
<any name="_blank" xml:lang="en" xml:id="id5"/>
<upsilon xml:id="id6"/>
<epsilon xml:lang="no" xml:id="id7">
<any attr="attribute" xml:lang="no-nb"/>
<mu/>
<epsilon delete="solid 1px green" xml:lang="en-GB" xml:id="id8"/>
<eta xml:id="id9"/>
<omega desciption="_blank" xml:id="id10">
<rho att="another attribute value" xml:id="id11">
<mu xml:id="id12">
<theta xml:id="id13">
<green>This text must be green</green>
</theta>
</mu>
</rho>
</omega>
</epsilon>
</omicron>
</lambda>
</omicron>
</chi>
</tree>
</test>
<test>
<xpath>//gamma[@xml:id="id1"]//theta[@xml:lang="en"]/nu[@xml:lang="en-GB"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::zeta[@src="this.nodeValue"][not(child::node())][following-sibling::gamma[@xml:lang="en-US"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/omicron[@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]]</xpath>
<tree>
<gamma xml:id="id1">
<theta xml:lang="en">
<nu xml:lang="en-GB" xml:id="id2"/>
<zeta src="this.nodeValue"/>
<gamma xml:lang="en-US">
<omicron xml:lang="en">
<green>This text must be green</green>
</omicron>
</gamma>
</theta>
</gamma>
</tree>
</test>
<test>
<xpath>//iota[contains(concat(@content,"$"),"px green$")][@xml:id="id1"]//lambda[contains(concat(@false,"$"),"0%$")][@xml:lang="en-GB"]//nu[starts-with(concat(@name,"-"),"attribute value-")][@xml:id="id2"][not(preceding-sibling::*)]//nu/beta[contains(concat(@number,"$"),"rue$")][not(preceding-sibling::*)]/chi[@xml:id="id3"]</xpath>
<tree>
<iota content="solid 1px green" xml:id="id1">
<lambda false="100%" xml:lang="en-GB">
<nu name="attribute value" xml:id="id2">
<nu>
<beta number="true">
<chi xml:id="id3">
<green>This text must be green</green>
</chi>
</beta>
</nu>
</nu>
</lambda>
</iota>
</tree>
</test>
<test>
<xpath>//alpha[contains(@content,"ibute v")][@xml:id="id1"]/kappa[@number][@xml:lang="en-US"][not(preceding-sibling::*)]//*[@xml:lang="nb"][not(following-sibling::*)]/gamma[@xml:id="id2"][following-sibling::*[position()=2]][not(child::node())][following-sibling::kappa[@xml:lang="no"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::kappa[not(following-sibling::*)]/phi[@string="attribute-value"][@xml:lang="no"][not(child::node())][following-sibling::epsilon[contains(concat(@string,"$"),"56789$")][not(following-sibling::*)]/sigma[@att][@xml:id="id4"]//nu[@xml:lang="en-GB"][following-sibling::pi[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/omicron[contains(@insert,"ue")][@xml:lang="no-nb"][@xml:id="id5"][following-sibling::delta[@content][@xml:lang="nb"][@xml:id="id6"][following-sibling::sigma[contains(@string,"ls")][@xml:id="id7"][not(following-sibling::*)]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<alpha content="attribute value" xml:id="id1">
<kappa number="attribute-value" xml:lang="en-US">
<any xml:lang="nb">
<gamma xml:id="id2"/>
<kappa xml:lang="no" xml:id="id3"/>
<kappa>
<phi string="attribute-value" xml:lang="no"/>
<epsilon string="123456789">
<sigma att="attribute value" xml:id="id4">
<nu xml:lang="en-GB"/>
<pi>
<omicron insert="true" xml:lang="no-nb" xml:id="id5"/>
<delta content="123456789" xml:lang="nb" xml:id="id6"/>
<sigma string="false" xml:id="id7">
<green>This text must be green</green>
</sigma>
</pi>
</sigma>
</epsilon>
</kappa>
</any>
</kappa>
</alpha>
</tree>
</test>
<test>
<xpath>//omicron[@xml:lang="en"]/omega[starts-with(concat(@name,"-"),"solid 1px green-")][not(preceding-sibling::*)]/mu[@xml:lang="en-US"][not(preceding-sibling::*)][not(following-sibling::*)]/eta[@attr][not(following-sibling::*)]/eta[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]/xi[contains(@false,"e")][@xml:lang="no-nb"][not(preceding-sibling::*)]//omicron[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/xi[@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[contains(concat(@att,"$"),"lue$")][not(child::node())][following-sibling::eta[starts-with(concat(@false,"-"),"100%-")][@xml:id="id2"][not(child::node())][following-sibling::mu[@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//omicron[@xml:lang="nb"][@xml:id="id4"][following-sibling::*[position()=1]][following-sibling::zeta[@xml:id="id5"][not(following-sibling::*)]//upsilon[@token][@xml:lang="en-US"]//rho[@xml:lang="nb"]//pi[@xml:lang="en"][@xml:id="id6"]/*[@attr]//omega[@token="attribute value"]/gamma[@src="attribute-value"][@xml:id="id7"]/mu[@xml:id="id8"][not(preceding-sibling::*)]][position() = 1]][position() = 1]]]</xpath>
<tree>
<omicron xml:lang="en">
<omega name="solid 1px green">
<mu xml:lang="en-US">
<eta attr="100%">
<eta xml:lang="no">
<xi false="false" xml:lang="no-nb">
<omicron xml:lang="no-nb">
<xi xml:id="id1"/>
<rho att="this.nodeValue"/>
<eta false="100%" xml:id="id2"/>
<mu xml:lang="en-US" xml:id="id3">
<omicron xml:lang="nb" xml:id="id4"/>
<zeta xml:id="id5">
<upsilon token="another attribute value" xml:lang="en-US">
<rho xml:lang="nb">
<pi xml:lang="en" xml:id="id6">
<any attr="this-is-att-value">
<omega token="attribute value">
<gamma src="attribute-value" xml:id="id7">
<mu xml:id="id8">
<green>This text must be green</green>
</mu>
</gamma>
</omega>
</any>
</pi>
</rho>
</upsilon>
</zeta>
</mu>
</omicron>
</xi>
</eta>
</eta>
</mu>
</omega>
</omicron>
</tree>
</test>
<test>
<xpath>//eta[starts-with(@att,"tru")][@xml:lang="no-nb"][@xml:id="id1"]//*[@name="false"][@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::theta[@xml:lang="en-GB"][@xml:id="id3"][not(child::node())][following-sibling::psi[@xml:lang="nb"][@xml:id="id4"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::zeta[not(child::node())][following-sibling::iota[@insert][preceding-sibling::*[position() = 4]][following-sibling::*[position()=1]][following-sibling::xi[@xml:id="id5"][not(following-sibling::*)]/theta[starts-with(concat(@attrib,"-"),"attribute-")][not(preceding-sibling::*)][not(following-sibling::*)]//lambda[@xml:id="id6"][not(preceding-sibling::*)]/kappa[starts-with(concat(@true,"-"),"solid 1px green-")][@xml:id="id7"][not(child::node())][following-sibling::iota[starts-with(concat(@name,"-"),"attribute value-")][not(child::node())][following-sibling::sigma[@xml:lang="en-GB"][@xml:id="id8"][preceding-sibling::*[position() = 2]][following-sibling::omicron[following-sibling::iota[starts-with(@title,"this-is-att-val")][@xml:lang="en-GB"][@xml:id="id9"]/xi[contains(@title,"attribut")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::phi[contains(concat(@att,"$"),"true$")]/*[@src][@xml:lang="en"][following-sibling::*[position()=4]][not(child::node())][following-sibling::kappa[@xml:lang="en-US"][@xml:id="id10"][not(child::node())][following-sibling::nu[@string][following-sibling::delta[starts-with(concat(@insert,"-"),"_blank-")][@xml:lang="en-US"][preceding-sibling::*[position() = 3]][following-sibling::*[position()=1]][not(child::node())][following-sibling::lambda[@xml:id="id11"][preceding-sibling::*[position() = 4]]//zeta[@att="100%"][@xml:lang="en-GB"][not(following-sibling::*)]//pi[@xml:id="id12"][following-sibling::lambda[@xml:id="id13"][preceding-sibling::*[position() = 1]][position() = 1]]][position() = 1]]][position() = 1]]][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]]</xpath>
<tree>
<eta att="true" xml:lang="no-nb" xml:id="id1">
<any name="false" xml:lang="en" xml:id="id2"/>
<theta xml:lang="en-GB" xml:id="id3"/>
<psi xml:lang="nb" xml:id="id4"/>
<zeta/>
<iota insert="false"/>
<xi xml:id="id5">
<theta attrib="attribute">
<lambda xml:id="id6">
<kappa true="solid 1px green" xml:id="id7"/>
<iota name="attribute value"/>
<sigma xml:lang="en-GB" xml:id="id8"/>
<omicron/>
<iota title="this-is-att-value" xml:lang="en-GB" xml:id="id9">
<xi title="attribute" xml:lang="no-nb"/>
<phi att="true">
<any src="_blank" xml:lang="en"/>
<kappa xml:lang="en-US" xml:id="id10"/>
<nu string="true"/>
<delta insert="_blank" xml:lang="en-US"/>
<lambda xml:id="id11">
<zeta att="100%" xml:lang="en-GB">
<pi xml:id="id12"/>
<lambda xml:id="id13">
<green>This text must be green</green>
</lambda>
</zeta>
</lambda>
</phi>
</iota>
</lambda>
</theta>
</xi>
</eta>
</tree>
</test>
<test>
<xpath>//omicron[@xml:lang="en-GB"]//pi[@xml:id="id1"]/sigma[@xml:lang="no-nb"][@xml:id="id2"][not(child::node())][following-sibling::alpha[@xml:id="id3"][preceding-sibling::*[position() = 1]][following-sibling::alpha[@xml:lang="en-GB"][@xml:id="id4"]//chi[@xml:lang="en-US"][not(preceding-sibling::chi)]//alpha[starts-with(@insert,"c")][following-sibling::*[position()=1]][not(child::node())][following-sibling::mu[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]]]</xpath>
<tree>
<omicron xml:lang="en-GB">
<pi xml:id="id1">
<sigma xml:lang="no-nb" xml:id="id2"/>
<alpha xml:id="id3"/>
<alpha xml:lang="en-GB" xml:id="id4">
<chi xml:lang="en-US">
<alpha insert="content"/>
<mu xml:lang="en-GB">
<green>This text must be green</green>
</mu>
</chi>
</alpha>
</pi>
</omicron>
</tree>
</test>
<test>
<xpath>//zeta[contains(@delete,"alse")][@xml:lang="en"][@xml:id="id1"]//beta[@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::iota/zeta[@or="true"][@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@xml:id="id3"]/tau[contains(@attribute,"ibu")][@xml:lang="en-US"]//pi[@attr][not(following-sibling::*)][position() = 1]][position() = 1]]</xpath>
<tree>
<zeta delete="false" xml:lang="en" xml:id="id1">
<beta xml:lang="no-nb" xml:id="id2"/>
<iota>
<zeta or="true" xml:lang="no"/>
<tau xml:id="id3">
<tau attribute="attribute" xml:lang="en-US">
<pi attr="solid 1px green">
<green>This text must be green</green>
</pi>
</tau>
</tau>
</iota>
</zeta>
</tree>
</test>
<test>
<xpath>//omega[@xml:lang="nb"][@xml:id="id1"]//alpha[starts-with(@object,"con")][not(preceding-sibling::*)]//rho[starts-with(concat(@true,"-"),"another attribute value-")][@xml:lang="en"][@xml:id="id2"]/eta[@xml:lang="en-GB"][@xml:id="id3"][following-sibling::upsilon[@abort][@xml:lang="nb"][preceding-sibling::*[position() = 1]]/nu[@xml:lang="en"][following-sibling::gamma[@xml:id="id4"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//psi[starts-with(@content,"_")][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::sigma[@xml:id="id5"][not(child::node())][following-sibling::epsilon[@object="123456789"]//upsilon[@true][not(following-sibling::*)]//*[contains(@att,"123456789")][@xml:lang="nb"][@xml:id="id6"][following-sibling::sigma[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/nu[starts-with(concat(@name,"-"),"this.nodeValue-")][@xml:lang="en-US"][not(following-sibling::*)][position() = 1]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<omega xml:lang="nb" xml:id="id1">
<alpha object="content">
<rho true="another attribute value" xml:lang="en" xml:id="id2">
<eta xml:lang="en-GB" xml:id="id3"/>
<upsilon abort="this-is-att-value" xml:lang="nb">
<nu xml:lang="en"/>
<gamma xml:id="id4">
<psi content="_blank" xml:lang="no"/>
<sigma xml:id="id5"/>
<epsilon object="123456789">
<upsilon true="this-is-att-value">
<any att="123456789" xml:lang="nb" xml:id="id6"/>
<sigma xml:lang="en-US">
<nu name="this.nodeValue" xml:lang="en-US">
<green>This text must be green</green>
</nu>
</sigma>
</upsilon>
</epsilon>
</gamma>
</upsilon>
</rho>
</alpha>
</omega>
</tree>
</test>
<test>
<xpath>//xi[@xml:lang="en-GB"][@xml:id="id1"]/kappa[@and][@xml:lang="no-nb"][following-sibling::*[position()=1]][not(child::node())][following-sibling::pi[@xml:id="id2"]/tau[not(preceding-sibling::*)][following-sibling::zeta[@string="true"][@xml:lang="nb"][following-sibling::theta[@delete="solid 1px green"][@xml:lang="nb"][@xml:id="id3"][not(following-sibling::*)]//omicron[@xml:lang="no"][following-sibling::*[position()=1]][following-sibling::psi[@xml:lang="en"][preceding-sibling::*[position() = 1]]//zeta[@and][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::rho[starts-with(@number,"attribute value")][@xml:id="id5"][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<xi xml:lang="en-GB" xml:id="id1">
<kappa and="attribute" xml:lang="no-nb"/>
<pi xml:id="id2">
<tau/>
<zeta string="true" xml:lang="nb"/>
<theta delete="solid 1px green" xml:lang="nb" xml:id="id3">
<omicron xml:lang="no"/>
<psi xml:lang="en">
<zeta and="true" xml:id="id4"/>
<rho number="attribute value" xml:id="id5">
<green>This text must be green</green>
</rho>
</psi>
</theta>
</pi>
</xi>
</tree>
</test>
<test>
<xpath>//omicron[starts-with(@attr,"attribute val")][@xml:id="id1"]/pi[@xml:lang="en-US"][not(preceding-sibling::*)]//upsilon[starts-with(concat(@true,"-"),"attribute-")][following-sibling::nu[@or][@xml:id="id2"][not(following-sibling::*)]//delta[@xml:id="id3"][not(preceding-sibling::*)][following-sibling::xi/omicron[starts-with(concat(@string,"-"),"another attribute value-")]/rho[@false][@xml:lang="en-US"][@xml:id="id4"][not(following-sibling::*)]/*[@xml:lang="no-nb"]/mu[@xml:lang="nb"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::epsilon[@xml:id="id6"][preceding-sibling::*[position() = 1]]//lambda[contains(@data,"ttribute-va")][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]//sigma[not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<omicron attr="attribute value" xml:id="id1">
<pi xml:lang="en-US">
<upsilon true="attribute-value"/>
<nu or="_blank" xml:id="id2">
<delta xml:id="id3"/>
<xi>
<omicron string="another attribute value">
<rho false="attribute value" xml:lang="en-US" xml:id="id4">
<any xml:lang="no-nb">
<mu xml:lang="nb" xml:id="id5"/>
<epsilon xml:id="id6">
<lambda data="attribute-value" xml:id="id7">
<sigma>
<green>This text must be green</green>
</sigma>
</lambda>
</epsilon>
</any>
</rho>
</omicron>
</xi>
</nu>
</pi>
</omicron>
</tree>
</test>
<test>
<xpath>//zeta[@class][@xml:lang="en"][@xml:id="id1"]/*[contains(concat(@insert,"$"),"attribute-value$")][@xml:lang="no"][@xml:id="id2"][not(preceding-sibling::*)]//chi[contains(@title,"tt-value")][@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[not(child::node())][following-sibling::rho[starts-with(@true,"at")][@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=2]][not(child::node())][following-sibling::epsilon[contains(concat(@and,"$"),"blank$")][@xml:id="id3"][following-sibling::*[position()=1]][not(child::node())][following-sibling::xi[@xml:lang="no"][@xml:id="id4"][not(following-sibling::*)]/eta[@xml:lang="no"][following-sibling::xi[@xml:lang="en-GB"]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<zeta class="_blank" xml:lang="en" xml:id="id1">
<any insert="attribute-value" xml:lang="no" xml:id="id2">
<chi title="this-is-att-value" xml:lang="no"/>
<xi/>
<rho true="attribute value" xml:lang="en-GB"/>
<epsilon and="_blank" xml:id="id3"/>
<xi xml:lang="no" xml:id="id4">
<eta xml:lang="no"/>
<xi xml:lang="en-GB">
<green>This text must be green</green>
</xi>
</xi>
</any>
</zeta>
</tree>
</test>
<test>
<xpath>//beta//*[@xml:lang="no"][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[@xml:lang="en-GB"][not(following-sibling::*)]/psi[@xml:lang="en"][@xml:id="id2"]//kappa[starts-with(concat(@abort,"-"),"another attribute value-")][@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[@or][preceding-sibling::*[position() = 1]][not(following-sibling::*)][not(preceding-sibling::nu or following-sibling::nu)]//gamma[@xml:id="id3"][not(following-sibling::*)]/beta[starts-with(@true,"this.node")][@xml:lang="no"][@xml:id="id4"]//omega[@number][@xml:lang="en"][@xml:id="id5"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[@xml:lang="en-US"][not(preceding-sibling::*)][not(child::node())][following-sibling::tau[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//beta[@xml:lang="en-GB"][@xml:id="id6"]/xi[@xml:id="id7"]]]]</xpath>
<tree>
<beta>
<any xml:lang="no" xml:id="id1"/>
<lambda xml:lang="en-GB">
<psi xml:lang="en" xml:id="id2">
<kappa abort="another attribute value" xml:lang="en-US"/>
<nu or="_blank">
<gamma xml:id="id3">
<beta true="this.nodeValue" xml:lang="no" xml:id="id4">
<omega number="100%" xml:lang="en" xml:id="id5">
<phi xml:lang="en-US"/>
<tau xml:lang="no">
<beta xml:lang="en-GB" xml:id="id6">
<xi xml:id="id7">
<green>This text must be green</green>
</xi>
</beta>
</tau>
</omega>
</beta>
</gamma>
</nu>
</psi>
</lambda>
</beta>
</tree>
</test>
<test>
<xpath>//*[@name="123456789"][@xml:id="id1"]//iota[@attribute][following-sibling::omicron[@string][not(following-sibling::*)]//mu[not(preceding-sibling::*)][following-sibling::gamma[@and][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][not(following-sibling::gamma)]//upsilon[not(preceding-sibling::*)][following-sibling::phi[contains(@string,"attribute-value")][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[starts-with(@delete,"solid")][preceding-sibling::*[position() = 2]]//xi[not(following-sibling::*)]/zeta[@xml:lang="en-GB"][@xml:id="id2"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<any name="123456789" xml:id="id1">
<iota attribute="this-is-att-value"/>
<omicron string="123456789">
<mu/>
<gamma and="attribute-value" xml:lang="no-nb">
<upsilon/>
<phi string="attribute-value"/>
<nu delete="solid 1px green">
<xi>
<zeta xml:lang="en-GB" xml:id="id2">
<green>This text must be green</green>
</zeta>
</xi>
</nu>
</gamma>
</omicron>
</any>
</tree>
</test>
<test>
<xpath>//psi[starts-with(@or,"this.nodeVa")][@xml:lang="no"]/phi[@xml:lang="nb"][not(child::node())][following-sibling::nu[@data="this.nodeValue"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::beta[@xml:id="id1"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/iota[starts-with(@src,"conten")][@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::iota)][following-sibling::chi[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::sigma[@xml:lang="no-nb"][@xml:id="id3"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]][position() = 1]]][position() = 1]]</xpath>
<tree>
<psi or="this.nodeValue" xml:lang="no">
<phi xml:lang="nb"/>
<nu data="this.nodeValue"/>
<beta xml:id="id1">
<iota src="content" xml:lang="nb"/>
<chi xml:id="id2"/>
<sigma xml:lang="no-nb" xml:id="id3">
<green>This text must be green</green>
</sigma>
</beta>
</psi>
</tree>
</test>
<test>
<xpath>//mu[starts-with(concat(@and,"-"),"attribute-")]//mu[@xml:id="id1"]//sigma[not(child::node())][following-sibling::sigma[preceding-sibling::*[position() = 1]]/chi[starts-with(concat(@attr,"-"),"attribute value-")][@xml:lang="no-nb"][@xml:id="id2"][not(child::node())][following-sibling::eta[@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//zeta[contains(concat(@or,"$"),"ontent$")][@xml:lang="no-nb"][@xml:id="id4"][following-sibling::*[position()=2]][not(child::node())][following-sibling::alpha[preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//upsilon/upsilon[starts-with(concat(@attrib,"-"),"false-")][@xml:lang="no-nb"][@xml:id="id6"][following-sibling::*[position()=4]][following-sibling::epsilon[contains(concat(@name,"$"),"tribute value$")][@xml:lang="en"][@xml:id="id7"][following-sibling::*[position()=3]][not(child::node())][following-sibling::rho[contains(concat(@desciption,"$"),"ute$")][preceding-sibling::*[position() = 2]][following-sibling::beta[@xml:id="id8"][preceding-sibling::*[position() = 3]][following-sibling::phi[@xml:lang="en-US"][@xml:id="id9"][not(following-sibling::*)]//kappa[contains(concat(@attrib,"$"),"ribute value$")][@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]//epsilon[@src][@xml:lang="en"][following-sibling::xi[@insert][@xml:id="id10"][following-sibling::zeta[@xml:id="id11"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::kappa[starts-with(concat(@name,"-"),"content-")][@xml:lang="en-GB"][not(child::node())][following-sibling::pi[@xml:lang="no-nb"][preceding-sibling::*[position() = 4]]//sigma[@data][@xml:lang="no-nb"][following-sibling::*[position()=1]][following-sibling::*[@xml:id="id12"][preceding-sibling::*[position() = 1]]//kappa[@src][@xml:lang="en-GB"][@xml:id="id13"][not(following-sibling::*)]]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<mu and="attribute">
<mu xml:id="id1">
<sigma/>
<sigma>
<chi attr="attribute value" xml:lang="no-nb" xml:id="id2"/>
<eta xml:id="id3">
<zeta or="content" xml:lang="no-nb" xml:id="id4"/>
<alpha/>
<psi xml:lang="en-GB" xml:id="id5">
<upsilon>
<upsilon attrib="false" xml:lang="no-nb" xml:id="id6"/>
<epsilon name="another attribute value" xml:lang="en" xml:id="id7"/>
<rho desciption="attribute"/>
<beta xml:id="id8"/>
<phi xml:lang="en-US" xml:id="id9">
<kappa attrib="another attribute value" xml:lang="en">
<epsilon src="true" xml:lang="en"/>
<xi insert="this.nodeValue" xml:id="id10"/>
<zeta xml:id="id11"/>
<kappa name="content" xml:lang="en-GB"/>
<pi xml:lang="no-nb">
<sigma data="true" xml:lang="no-nb"/>
<any xml:id="id12">
<kappa src="_blank" xml:lang="en-GB" xml:id="id13">
<green>This text must be green</green>
</kappa>
</any>
</pi>
</kappa>
</phi>
</upsilon>
</psi>
</eta>
</sigma>
</mu>
</mu>
</tree>
</test>
<test>
<xpath>//alpha[starts-with(@attr,"this.no")][@xml:id="id1"]//xi[@xml:lang="no-nb"][@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[starts-with(@insert,"attribu")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/rho[@string="solid 1px green"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::mu[contains(concat(@string,"$"),"e$")][@xml:lang="en-GB"][@xml:id="id4"][following-sibling::lambda[@token="100%"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::beta[@xml:lang="no-nb"][preceding-sibling::*[position() = 3]][following-sibling::upsilon[preceding-sibling::*[position() = 4]][following-sibling::alpha[starts-with(concat(@object,"-"),"100%-")][@xml:id="id5"][preceding-sibling::*[position() = 5]][following-sibling::sigma[@class][@xml:lang="no-nb"][preceding-sibling::*[position() = 6]][not(following-sibling::*)][position() = 1]]][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<alpha attr="this.nodeValue" xml:id="id1">
<xi xml:lang="no-nb" xml:id="id2"/>
<lambda insert="attribute-value">
<rho string="solid 1px green" xml:id="id3"/>
<mu string="true" xml:lang="en-GB" xml:id="id4"/>
<lambda token="100%"/>
<beta xml:lang="no-nb"/>
<upsilon/>
<alpha object="100%" xml:id="id5"/>
<sigma class="this-is-att-value" xml:lang="no-nb">
<green>This text must be green</green>
</sigma>
</lambda>
</alpha>
</tree>
</test>
<test>
<xpath>//pi[@xml:lang="no-nb"]//epsilon[not(preceding-sibling::*)][not(following-sibling::*)]//delta[@xml:lang="no-nb"][@xml:id="id1"][following-sibling::*[position()=3]][not(child::node())][following-sibling::tau[starts-with(concat(@false,"-"),"123456789-")][@xml:lang="nb"][following-sibling::*[position()=2]][following-sibling::kappa[@attr="123456789"][@xml:lang="en"][@xml:id="id2"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[contains(@title,"e")][@xml:lang="en-US"][@xml:id="id3"][not(following-sibling::*)]/psi[starts-with(@content,"attrib")][@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::pi[contains(concat(@and,"$"),"0%$")][@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::delta[@xml:lang="nb"][preceding-sibling::*[position() = 2]]/zeta[@xml:id="id5"][not(child::node())][following-sibling::lambda[starts-with(@true,"this.nodeVa")][@xml:id="id6"][preceding-sibling::*[position() = 1]]/theta[starts-with(@title,"f")][@xml:lang="no"][@xml:id="id7"][not(preceding-sibling::*)]/delta[contains(concat(@name,"$"),"alue$")][@xml:lang="no-nb"][following-sibling::*[position()=2]][not(child::node())][following-sibling::tau[contains(@attribute,"ttribu")][@xml:id="id8"][preceding-sibling::*[position() = 1]][following-sibling::theta[@or][@xml:id="id9"]//rho[@abort="another attribute value"][not(following-sibling::*)]/phi[not(child::node())][following-sibling::iota[@xml:lang="en"][@xml:id="id10"][not(child::node())][following-sibling::phi[preceding-sibling::*[position() = 2]][following-sibling::delta[preceding-sibling::*[position() = 3]][not(following-sibling::*)]/omega[@xml:lang="nb"][not(preceding-sibling::*)]/lambda[starts-with(concat(@content,"-"),"_blank-")][@xml:id="id11"][not(preceding-sibling::*)][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<pi xml:lang="no-nb">
<epsilon>
<delta xml:lang="no-nb" xml:id="id1"/>
<tau false="123456789" xml:lang="nb"/>
<kappa attr="123456789" xml:lang="en" xml:id="id2"/>
<phi title="content" xml:lang="en-US" xml:id="id3">
<psi content="attribute-value" xml:lang="en" xml:id="id4"/>
<pi and="100%" xml:lang="no"/>
<delta xml:lang="nb">
<zeta xml:id="id5"/>
<lambda true="this.nodeValue" xml:id="id6">
<theta title="false" xml:lang="no" xml:id="id7">
<delta name="attribute value" xml:lang="no-nb"/>
<tau attribute="attribute" xml:id="id8"/>
<theta or="solid 1px green" xml:id="id9">
<rho abort="another attribute value">
<phi/>
<iota xml:lang="en" xml:id="id10"/>
<phi/>
<delta>
<omega xml:lang="nb">
<lambda content="_blank" xml:id="id11">
<green>This text must be green</green>
</lambda>
</omega>
</delta>
</rho>
</theta>
</theta>
</lambda>
</delta>
</phi>
</epsilon>
</pi>
</tree>
</test>
<test>
<xpath>//rho/iota[contains(concat(@object,"$"),"89$")][@xml:id="id1"][following-sibling::*[position()=1]][following-sibling::gamma[@xml:lang="en-US"][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//eta[@xml:lang="nb"][not(following-sibling::*)]//nu[@xml:lang="en-GB"][@xml:id="id3"]//kappa[@number][@xml:lang="en-US"][@xml:id="id4"][following-sibling::*[position()=2]][following-sibling::*[@att][not(child::node())][following-sibling::iota[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//gamma[@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::omicron[@attr][@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(following-sibling::omicron)][following-sibling::beta[starts-with(@attrib,"a")]//mu[contains(@content,"se")][not(preceding-sibling::*)][not(child::node())][following-sibling::psi[starts-with(concat(@number,"-"),"another attribute value-")][@xml:id="id5"][not(child::node())][following-sibling::omega[preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::kappa[starts-with(concat(@token,"-"),"attribute-")][@xml:lang="en-US"][@xml:id="id6"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//alpha[starts-with(@insert,"attr")][@xml:id="id7"][not(preceding-sibling::*)][following-sibling::omicron[@xml:id="id8"][preceding-sibling::*[position() = 1]]//iota[@xml:lang="en-GB"][@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)]][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<rho>
<iota object="123456789" xml:id="id1"/>
<gamma xml:lang="en-US" xml:id="id2">
<eta xml:lang="nb">
<nu xml:lang="en-GB" xml:id="id3">
<kappa number="attribute-value" xml:lang="en-US" xml:id="id4"/>
<any att="false"/>
<iota xml:lang="en-GB">
<gamma xml:lang="nb"/>
<omicron attr="_blank" xml:lang="no"/>
<beta attrib="attribute value">
<mu content="false"/>
<psi number="another attribute value" xml:id="id5"/>
<omega/>
<kappa token="attribute-value" xml:lang="en-US" xml:id="id6">
<alpha insert="attribute-value" xml:id="id7"/>
<omicron xml:id="id8">
<iota xml:lang="en-GB" xml:id="id9">
<green>This text must be green</green>
</iota>
</omicron>
</kappa>
</beta>
</iota>
</nu>
</eta>
</gamma>
</rho>
</tree>
</test>
<test>
<xpath>//chi[contains(concat(@insert,"$"),"ontent$")]//delta[contains(@and,"l")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]/eta[contains(concat(@class,"$"),"lse$")][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]/theta[@xml:lang="nb"][following-sibling::delta[starts-with(concat(@token,"-"),"attribute value-")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//delta[starts-with(concat(@or,"-"),"this-")][following-sibling::*[position()=7]][following-sibling::kappa[@xml:lang="en-US"][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::gamma[@false][@xml:id="id3"][following-sibling::kappa[following-sibling::alpha[contains(@and,"lue")][@xml:lang="en-GB"][@xml:id="id4"][not(child::node())][following-sibling::delta[not(child::node())][following-sibling::pi[@insert][@xml:lang="no"][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 7]][not(following-sibling::*)]]][position() = 1]][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<chi insert="content">
<delta and="solid 1px green" xml:lang="en-GB">
<eta class="false" xml:id="id1">
<theta xml:lang="nb"/>
<delta token="attribute value">
<delta or="this-is-att-value"/>
<kappa xml:lang="en-US" xml:id="id2"/>
<gamma false="another attribute value" xml:id="id3"/>
<kappa/>
<alpha and="attribute value" xml:lang="en-GB" xml:id="id4"/>
<delta/>
<pi insert="another attribute value" xml:lang="no"/>
<delta xml:lang="no-nb" xml:id="id5">
<green>This text must be green</green>
</delta>
</delta>
</eta>
</delta>
</chi>
</tree>
</test>
<test>
<xpath>//xi[starts-with(@attr,"thi")]/rho[contains(concat(@title,"$"),"ttribute$")][@xml:lang="no-nb"][following-sibling::epsilon[@xml:lang="en-GB"][@xml:id="id1"][following-sibling::omicron[@xml:lang="en"][not(following-sibling::*)]//beta[starts-with(concat(@att,"-"),"attribute-")][@xml:lang="no"][not(preceding-sibling::*)]/iota[@xml:lang="nb"]/lambda[@xml:id="id2"][not(preceding-sibling::*)]/omega[not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[starts-with(concat(@false,"-"),"attribute-")][@xml:id="id3"]]][position() = 1]]</xpath>
<tree>
<xi attr="this-is-att-value">
<rho title="attribute" xml:lang="no-nb"/>
<epsilon xml:lang="en-GB" xml:id="id1"/>
<omicron xml:lang="en">
<beta att="attribute-value" xml:lang="no">
<iota xml:lang="nb">
<lambda xml:id="id2">
<omega/>
<kappa false="attribute-value" xml:id="id3">
<green>This text must be green</green>
</kappa>
</lambda>
</iota>
</beta>
</omicron>
</xi>
</tree>
</test>
<test>
<xpath>//theta[@false]/mu[@attrib][@xml:id="id1"][not(following-sibling::*)]//lambda[@and][@xml:lang="en-GB"][@xml:id="id2"][following-sibling::*[position()=1]][following-sibling::psi[@xml:lang="en-GB"][@xml:id="id3"]/epsilon[following-sibling::delta[@xml:id="id4"][preceding-sibling::*[position() = 1]]/mu[@xml:id="id5"][not(preceding-sibling::*)][following-sibling::lambda[@xml:lang="nb"][@xml:id="id6"][preceding-sibling::*[position() = 1]]//theta[@xml:lang="en-GB"][@xml:id="id7"][following-sibling::pi[contains(@name,"en")][@xml:lang="en-GB"][@xml:id="id8"]//zeta[@title][@xml:lang="nb"][@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)]/rho[not(following-sibling::*)]]][position() = 1]][position() = 1]]</xpath>
<tree>
<theta false="this-is-att-value">
<mu attrib="false" xml:id="id1">
<lambda and="this.nodeValue" xml:lang="en-GB" xml:id="id2"/>
<psi xml:lang="en-GB" xml:id="id3">
<epsilon/>
<delta xml:id="id4">
<mu xml:id="id5"/>
<lambda xml:lang="nb" xml:id="id6">
<theta xml:lang="en-GB" xml:id="id7"/>
<pi name="solid 1px green" xml:lang="en-GB" xml:id="id8">
<zeta title="this-is-att-value" xml:lang="nb" xml:id="id9">
<rho>
<green>This text must be green</green>
</rho>
</zeta>
</pi>
</lambda>
</delta>
</psi>
</mu>
</theta>
</tree>
</test>
<test>
<xpath>//psi[starts-with(concat(@name,"-"),"solid 1px green-")][@xml:lang="nb"]//pi[not(preceding-sibling::*)]/xi[starts-with(concat(@src,"-"),"100%-")][@xml:lang="en"][not(child::node())][following-sibling::omicron[contains(@delete,"l")][@xml:lang="en"][preceding-sibling::*[position() = 1]][following-sibling::xi[@xml:lang="en-US"][@xml:id="id1"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::upsilon[@src="this-is-att-value"][@xml:lang="en-US"][preceding-sibling::*[position() = 3]][following-sibling::beta[@xml:id="id2"][preceding-sibling::*[position() = 4]]//nu[@xml:lang="nb"][@xml:id="id3"][not(following-sibling::*)]/delta[@xml:lang="en-GB"][not(following-sibling::*)]//omega[@xml:lang="en"][@xml:id="id4"][not(following-sibling::*)]/gamma[@xml:id="id5"][not(child::node())][following-sibling::lambda[starts-with(concat(@insert,"-"),"true-")][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][following-sibling::tau[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[@abort="_blank"]//mu[@xml:lang="no-nb"][not(child::node())][following-sibling::pi[not(following-sibling::*)]//chi[@xml:lang="en-US"]/gamma[@false][@xml:lang="en-US"][not(preceding-sibling::*)][not(preceding-sibling::gamma)][following-sibling::rho[contains(concat(@content,"$"),"e$")][@xml:lang="no"][@xml:id="id6"][not(preceding-sibling::rho)]//epsilon[@xml:id="id7"][not(following-sibling::*)]/beta[@class][@xml:lang="no"][@xml:id="id8"]//alpha[starts-with(concat(@src,"-"),"solid 1px green-")][@xml:lang="en-US"][not(following-sibling::*)]]]][position() = 1]][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<psi name="solid 1px green" xml:lang="nb">
<pi>
<xi src="100%" xml:lang="en"/>
<omicron delete="_blank" xml:lang="en"/>
<xi xml:lang="en-US" xml:id="id1"/>
<upsilon src="this-is-att-value" xml:lang="en-US"/>
<beta xml:id="id2">
<nu xml:lang="nb" xml:id="id3">
<delta xml:lang="en-GB">
<omega xml:lang="en" xml:id="id4">
<gamma xml:id="id5"/>
<lambda insert="true"/>
<tau xml:lang="en-GB"/>
<delta abort="_blank">
<mu xml:lang="no-nb"/>
<pi>
<chi xml:lang="en-US">
<gamma false="true" xml:lang="en-US"/>
<rho content="false" xml:lang="no" xml:id="id6">
<epsilon xml:id="id7">
<beta class="100%" xml:lang="no" xml:id="id8">
<alpha src="solid 1px green" xml:lang="en-US">
<green>This text must be green</green>
</alpha>
</beta>
</epsilon>
</rho>
</chi>
</pi>
</delta>
</omega>
</delta>
</nu>
</beta>
</pi>
</psi>
</tree>
</test>
<test>
<xpath>//phi[@xml:id="id1"]/delta[not(preceding-sibling::*)][not(following-sibling::*)]//chi[@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::*[@number][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//psi[@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::*[@xml:lang="no"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::omicron[@xml:lang="no"][@xml:id="id4"]/gamma[@xml:lang="no"][not(preceding-sibling::*)]/rho[not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::kappa//eta[@xml:lang="en-US"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::chi[starts-with(concat(@name,"-"),"this.nodeValue-")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/chi[contains(concat(@insert,"$"),"false$")][following-sibling::*[position()=1]][following-sibling::alpha[starts-with(@title,"t")][preceding-sibling::*[position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<phi xml:id="id1">
<delta>
<chi xml:id="id2"/>
<any number="this.nodeValue" xml:id="id3">
<psi xml:lang="no-nb"/>
<any xml:lang="no"/>
<omicron xml:lang="no" xml:id="id4">
<gamma xml:lang="no">
<rho/>
<kappa>
<eta xml:lang="en-US" xml:id="id5"/>
<chi name="this.nodeValue">
<chi insert="false"/>
<alpha title="this.nodeValue">
<green>This text must be green</green>
</alpha>
</chi>
</kappa>
</gamma>
</omicron>
</any>
</delta>
</phi>
</tree>
</test>
<test>
<xpath>//psi[@xml:lang="en"][@xml:id="id1"]//*[not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::kappa[@xml:id="id2"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::upsilon[@xml:lang="no-nb"][@xml:id="id3"][preceding-sibling::*[position() = 2]][following-sibling::*[position()=1]][following-sibling::chi[@desciption][@xml:lang="no-nb"]/*[following-sibling::*[position()=2]][following-sibling::mu[not(child::node())][following-sibling::omicron[@and][@xml:lang="no-nb"][@xml:id="id4"][preceding-sibling::*[position() = 2]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<psi xml:lang="en" xml:id="id1">
<any/>
<kappa xml:id="id2"/>
<upsilon xml:lang="no-nb" xml:id="id3"/>
<chi desciption="100%" xml:lang="no-nb">
<any/>
<mu/>
<omicron and="false" xml:lang="no-nb" xml:id="id4">
<green>This text must be green</green>
</omicron>
</chi>
</psi>
</tree>
</test>
<test>
<xpath>//omicron[contains(@title,"lank")][@xml:id="id1"]/theta[starts-with(@data,"10")][@xml:lang="en"][not(child::node())][following-sibling::beta[starts-with(concat(@number,"-"),"another attribute value-")][@xml:id="id2"][following-sibling::*[position()=4]][following-sibling::gamma[starts-with(@token,"solid 1p")][preceding-sibling::*[position() = 2]][following-sibling::alpha[@attribute][@xml:id="id3"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::mu[@xml:lang="nb"][@xml:id="id4"][not(child::node())][following-sibling::*[not(following-sibling::*)]//sigma[@xml:lang="no-nb"]/iota[following-sibling::pi[starts-with(concat(@object,"-"),"attribute-")][@xml:lang="en"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<omicron title="_blank" xml:id="id1">
<theta data="100%" xml:lang="en"/>
<beta number="another attribute value" xml:id="id2"/>
<gamma token="solid 1px green"/>
<alpha attribute="123456789" xml:id="id3"/>
<mu xml:lang="nb" xml:id="id4"/>
<any>
<sigma xml:lang="no-nb">
<iota/>
<pi object="attribute" xml:lang="en">
<green>This text must be green</green>
</pi>
</sigma>
</any>
</omicron>
</tree>
</test>
<test>
<xpath>//upsilon[starts-with(concat(@content,"-"),"solid 1px green-")][@xml:id="id1"]/kappa[contains(@number,"olid ")][@xml:lang="nb"][not(preceding-sibling::*)]/mu[contains(@true,"ute v")][@xml:id="id2"][following-sibling::phi[@class][preceding-sibling::*[position() = 1]]/sigma[starts-with(@attr,"attribut")][@xml:lang="en-GB"][@xml:id="id3"][not(following-sibling::*)]/omicron[@xml:lang="en-US"][following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[@xml:id="id4"][not(following-sibling::*)]//pi[contains(concat(@object,"$"),"another attribute value$")][not(preceding-sibling::*)][following-sibling::phi[@attr][@xml:id="id5"][following-sibling::omicron[starts-with(@att,"1234")][@xml:lang="en"][@xml:id="id6"][not(following-sibling::*)]][position() = 1]]][position() = 1]]</xpath>
<tree>
<upsilon content="solid 1px green" xml:id="id1">
<kappa number="solid 1px green" xml:lang="nb">
<mu true="attribute value" xml:id="id2"/>
<phi class="_blank">
<sigma attr="attribute value" xml:lang="en-GB" xml:id="id3">
<omicron xml:lang="en-US"/>
<psi xml:id="id4">
<pi object="another attribute value"/>
<phi attr="false" xml:id="id5"/>
<omicron att="123456789" xml:lang="en" xml:id="id6">
<green>This text must be green</green>
</omicron>
</psi>
</sigma>
</phi>
</kappa>
</upsilon>
</tree>
</test>
<test>
<xpath>//mu[@xml:lang="no"]//kappa[starts-with(@or,"_b")][@xml:lang="en-US"][@xml:id="id1"][not(following-sibling::*)]//xi[@xml:id="id2"][not(preceding-sibling::*)]//alpha[starts-with(concat(@object,"-"),"123456789-")][@xml:id="id3"][following-sibling::omicron[contains(concat(@attrib,"$"),"nt$")][@xml:lang="no"][not(child::node())][following-sibling::lambda[@insert][@xml:lang="en-US"][@xml:id="id4"][following-sibling::phi[contains(@name,"ut")][@xml:lang="nb"][@xml:id="id5"][not(following-sibling::*)]//beta[@xml:lang="en"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::delta[contains(@insert,"his.node")][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//iota[not(preceding-sibling::*)][following-sibling::*[position()=2]][not(child::node())][following-sibling::epsilon[@xml:lang="en"][@xml:id="id8"][preceding-sibling::*[position() = 1]][following-sibling::nu[not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<mu xml:lang="no">
<kappa or="_blank" xml:lang="en-US" xml:id="id1">
<xi xml:id="id2">
<alpha object="123456789" xml:id="id3"/>
<omicron attrib="content" xml:lang="no"/>
<lambda insert="100%" xml:lang="en-US" xml:id="id4"/>
<phi name="attribute" xml:lang="nb" xml:id="id5">
<beta xml:lang="en" xml:id="id6"/>
<delta insert="this.nodeValue" xml:id="id7">
<iota/>
<epsilon xml:lang="en" xml:id="id8"/>
<nu>
<green>This text must be green</green>
</nu>
</delta>
</phi>
</xi>
</kappa>
</mu>
</tree>
</test>
<test>
<xpath>//lambda//iota[@xml:lang="no-nb"][@xml:id="id1"][following-sibling::epsilon[starts-with(concat(@attribute,"-"),"attribute-")][@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::zeta[@insert][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::*[@attr]/tau[@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<lambda>
<iota xml:lang="no-nb" xml:id="id1"/>
<epsilon attribute="attribute-value" xml:lang="nb"/>
<zeta insert="content"/>
<any attr="attribute">
<tau xml:lang="en-US" xml:id="id2">
<green>This text must be green</green>
</tau>
</any>
</lambda>
</tree>
</test>
<test>
<xpath>//epsilon[@attrib="attribute value"][@xml:lang="en-US"]//zeta[starts-with(@true,"cont")][@xml:id="id1"][not(following-sibling::*)]//xi[@xml:lang="no"][following-sibling::sigma[preceding-sibling::*[position() = 1]]//xi[starts-with(@desciption,"fa")][not(child::node())][following-sibling::beta[starts-with(@token,"_blank")][@xml:id="id2"][preceding-sibling::*[position() = 1]][following-sibling::psi[starts-with(@data,"fal")][@xml:id="id3"][following-sibling::zeta[@xml:id="id4"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::chi[preceding-sibling::*[position() = 4]][not(child::node())][following-sibling::sigma[@string][preceding-sibling::*[position() = 5]][following-sibling::*[position()=2]][not(child::node())][following-sibling::mu[starts-with(concat(@true,"-"),"true-")][@xml:id="id5"][preceding-sibling::*[position() = 6]][following-sibling::pi[@xml:lang="en"][@xml:id="id6"]/sigma[contains(concat(@class,"$"),"-att-value$")][@xml:lang="en-GB"]/alpha[not(following-sibling::*)]/mu[@xml:lang="en-GB"][@xml:id="id7"][not(following-sibling::*)]/lambda[@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]/*[@att][not(preceding-sibling::*)]//mu[@xml:lang="no-nb"][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::lambda[@xml:lang="en"][@xml:id="id9"][preceding-sibling::*[position() = 1]]//delta[@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::omicron[@xml:lang="en-US"][@xml:id="id10"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<epsilon attrib="attribute value" xml:lang="en-US">
<zeta true="content" xml:id="id1">
<xi xml:lang="no"/>
<sigma>
<xi desciption="false"/>
<beta token="_blank" xml:id="id2"/>
<psi data="false" xml:id="id3"/>
<zeta xml:id="id4"/>
<chi/>
<sigma string="another attribute value"/>
<mu true="true" xml:id="id5"/>
<pi xml:lang="en" xml:id="id6">
<sigma class="this-is-att-value" xml:lang="en-GB">
<alpha>
<mu xml:lang="en-GB" xml:id="id7">
<lambda xml:lang="en">
<any att="content">
<mu xml:lang="no-nb" xml:id="id8"/>
<lambda xml:lang="en" xml:id="id9">
<delta xml:lang="no-nb"/>
<omicron xml:lang="en-US" xml:id="id10">
<green>This text must be green</green>
</omicron>
</lambda>
</any>
</lambda>
</mu>
</alpha>
</sigma>
</pi>
</sigma>
</zeta>
</epsilon>
</tree>
</test>
<test>
<xpath>//theta[contains(@title,"r")][@xml:id="id1"]//beta[@xml:lang="en-GB"][not(preceding-sibling::*)]/kappa[@xml:lang="en"][@xml:id="id2"][not(child::node())][following-sibling::iota[preceding-sibling::*[position() = 1]][following-sibling::lambda[@xml:lang="nb"][following-sibling::rho[contains(concat(@object,"$"),"nodeValue$")][@xml:lang="en"][not(child::node())][following-sibling::lambda[@data="100%"][@xml:lang="no-nb"][@xml:id="id3"][preceding-sibling::*[position() = 4]][following-sibling::kappa[contains(concat(@attr,"$"),"-is-att-value$")][@xml:lang="no"][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@xml:lang="en-US"][@xml:id="id4"]//phi[@xml:lang="en"][@xml:id="id5"][not(preceding-sibling::*)][not(preceding-sibling::phi)][following-sibling::kappa[contains(@token,"t-va")][@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::nu[@xml:lang="en-US"][@xml:id="id6"][not(child::node())][following-sibling::rho[@xml:lang="no"][@xml:id="id7"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//psi[@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/mu[contains(@false,"ue")][@xml:lang="no-nb"][@xml:id="id8"][not(following-sibling::*)]//omicron[@insert][@xml:lang="en-GB"][@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]]]]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<theta title="true" xml:id="id1">
<beta xml:lang="en-GB">
<kappa xml:lang="en" xml:id="id2"/>
<iota/>
<lambda xml:lang="nb"/>
<rho object="this.nodeValue" xml:lang="en"/>
<lambda data="100%" xml:lang="no-nb" xml:id="id3"/>
<kappa attr="this-is-att-value" xml:lang="no"/>
<phi xml:lang="en-US" xml:id="id4">
<phi xml:lang="en" xml:id="id5"/>
<kappa token="this-is-att-value" xml:lang="no"/>
<nu xml:lang="en-US" xml:id="id6"/>
<rho xml:lang="no" xml:id="id7">
<psi xml:lang="no-nb">
<mu false="another attribute value" xml:lang="no-nb" xml:id="id8">
<omicron insert="this-is-att-value" xml:lang="en-GB" xml:id="id9">
<green>This text must be green</green>
</omicron>
</mu>
</psi>
</rho>
</phi>
</beta>
</theta>
</tree>
</test>
<test>
<xpath>//xi[@insert="100%"]/phi[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[not(preceding-sibling::*)][following-sibling::delta[contains(@title,"ribute")][@xml:lang="en-US"]/eta[starts-with(concat(@desciption,"-"),"true-")][following-sibling::beta[preceding-sibling::*[position() = 1]]/zeta[@class="attribute value"][@xml:lang="no"][@xml:id="id1"][not(preceding-sibling::*)]//psi[@title="solid 1px green"][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//upsilon[starts-with(@att,"_blank")][@xml:id="id2"]//zeta[@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]//beta[@class][@xml:lang="en-GB"][@xml:id="id3"]//rho[not(preceding-sibling::*)][not(following-sibling::rho)][following-sibling::chi[@xml:lang="en-GB"][@xml:id="id4"][not(following-sibling::*)]//gamma[@xml:lang="no"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::chi[starts-with(@desciption,"con")][@xml:lang="no-nb"][@xml:id="id6"][following-sibling::*[position()=2]][following-sibling::eta[@xml:lang="no-nb"][@xml:id="id7"][preceding-sibling::*[position() = 2]][following-sibling::tau[@xml:id="id8"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/*[@xml:lang="en"][@xml:id="id9"][position() = 1]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]]</xpath>
<tree>
<xi insert="100%">
<phi xml:lang="no">
<phi/>
<delta title="attribute" xml:lang="en-US">
<eta desciption="true"/>
<beta>
<zeta class="attribute value" xml:lang="no" xml:id="id1">
<psi title="solid 1px green" xml:lang="no-nb">
<upsilon att="_blank" xml:id="id2">
<zeta xml:lang="en">
<beta class="123456789" xml:lang="en-GB" xml:id="id3">
<rho/>
<chi xml:lang="en-GB" xml:id="id4">
<gamma xml:lang="no" xml:id="id5"/>
<chi desciption="content" xml:lang="no-nb" xml:id="id6"/>
<eta xml:lang="no-nb" xml:id="id7"/>
<tau xml:id="id8">
<any xml:lang="en" xml:id="id9">
<green>This text must be green</green>
</any>
</tau>
</chi>
</beta>
</zeta>
</upsilon>
</psi>
</zeta>
</beta>
</delta>
</phi>
</xi>
</tree>
</test>
<test>
<xpath>//omega[@xml:lang="en"]/upsilon[contains(concat(@attribute,"$"),"ttribute$")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(child::node())][following-sibling::omega[contains(concat(@and,"$"),"00%$")][@xml:lang="nb"][following-sibling::lambda[@xml:lang="no"][@xml:id="id1"][preceding-sibling::*[position() = 2]][following-sibling::phi[contains(@and,"se")][@xml:lang="nb"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::alpha[following-sibling::*[position()=1]][not(child::node())][following-sibling::alpha[contains(@number,"lse")][@xml:lang="no-nb"][@xml:id="id2"]/tau[contains(concat(@name,"$"),"e$")][@xml:lang="no"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::epsilon[not(following-sibling::*)]/nu[@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/phi[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::eta[starts-with(concat(@abort,"-"),"false-")][@xml:lang="no"][@xml:id="id5"][not(following-sibling::*)]//omicron[contains(@abort,"value")][@xml:lang="en-GB"][@xml:id="id6"][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<omega xml:lang="en">
<upsilon attribute="attribute" xml:lang="no-nb"/>
<omega and="100%" xml:lang="nb"/>
<lambda xml:lang="no" xml:id="id1"/>
<phi and="false" xml:lang="nb"/>
<alpha/>
<alpha number="false" xml:lang="no-nb" xml:id="id2">
<tau name="true" xml:lang="no" xml:id="id3"/>
<epsilon>
<nu xml:id="id4">
<phi xml:lang="en-US"/>
<eta abort="false" xml:lang="no" xml:id="id5">
<omicron abort="attribute-value" xml:lang="en-GB" xml:id="id6">
<green>This text must be green</green>
</omicron>
</eta>
</nu>
</epsilon>
</alpha>
</omega>
</tree>
</test>
<test>
<xpath>//chi[@string][@xml:lang="no-nb"][@xml:id="id1"]//kappa[contains(concat(@att,"$"),"odeValue$")][following-sibling::*[position()=2]][following-sibling::tau[contains(concat(@and,"$"),"ribute$")][@xml:lang="en"][not(child::node())][following-sibling::psi[starts-with(concat(@attrib,"-"),"solid 1px green-")][@xml:lang="en-US"][@xml:id="id2"][preceding-sibling::*[position() = 2]]//delta[@xml:lang="en-GB"][@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::beta[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::omega[@xml:lang="no-nb"][not(following-sibling::*)]/tau[@true][@xml:id="id4"]][position() = 1]]][position() = 1]]</xpath>
<tree>
<chi string="content" xml:lang="no-nb" xml:id="id1">
<kappa att="this.nodeValue"/>
<tau and="attribute" xml:lang="en"/>
<psi attrib="solid 1px green" xml:lang="en-US" xml:id="id2">
<delta xml:lang="en-GB" xml:id="id3"/>
<beta/>
<omega xml:lang="no-nb">
<tau true="another attribute value" xml:id="id4">
<green>This text must be green</green>
</tau>
</omega>
</psi>
</chi>
</tree>
</test>
<test>
<xpath>//beta[contains(concat(@abort,"$"),"%$")][@xml:lang="en"][@xml:id="id1"]//epsilon[@xml:lang="no"][@xml:id="id2"][not(following-sibling::*)]/pi[@xml:lang="en-GB"][@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[starts-with(@data,"tru")][not(child::node())][following-sibling::phi[contains(@string,"e")][@xml:id="id4"][following-sibling::theta[@xml:lang="no-nb"][@xml:id="id5"][preceding-sibling::*[position() = 3]][following-sibling::xi[@xml:lang="no-nb"][@xml:id="id6"]/mu[@xml:lang="en-GB"][@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::upsilon[@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::beta[@xml:lang="no-nb"]//phi[starts-with(concat(@string,"-"),"attribute-")][not(child::node())][following-sibling::nu[@xml:lang="no-nb"][following-sibling::upsilon[@xml:id="id8"]//nu[@or][@xml:lang="no"][not(preceding-sibling::*)]//theta[contains(concat(@false,"$"),"bute value$")][@xml:lang="en-GB"][@xml:id="id9"][not(preceding-sibling::*)][following-sibling::omega[preceding-sibling::*[position() = 1]][following-sibling::tau[not(following-sibling::*)]/omicron[@xml:lang="en-US"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::iota[@attribute="true"][@xml:id="id10"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::tau[@xml:lang="en-US"][@xml:id="id11"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/nu[contains(concat(@desciption,"$"),"d 1px green$")][@xml:id="id12"][not(preceding-sibling::*)]/alpha[contains(concat(@attribute,"$"),"ontent$")][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<beta abort="100%" xml:lang="en" xml:id="id1">
<epsilon xml:lang="no" xml:id="id2">
<pi xml:lang="en-GB" xml:id="id3"/>
<kappa data="true"/>
<phi string="attribute value" xml:id="id4"/>
<theta xml:lang="no-nb" xml:id="id5"/>
<xi xml:lang="no-nb" xml:id="id6">
<mu xml:lang="en-GB" xml:id="id7"/>
<upsilon xml:lang="nb"/>
<beta xml:lang="no-nb">
<phi string="attribute-value"/>
<nu xml:lang="no-nb"/>
<upsilon xml:id="id8">
<nu or="this.nodeValue" xml:lang="no">
<theta false="attribute value" xml:lang="en-GB" xml:id="id9"/>
<omega/>
<tau>
<omicron xml:lang="en-US"/>
<iota attribute="true" xml:id="id10"/>
<tau xml:lang="en-US" xml:id="id11">
<nu desciption="solid 1px green" xml:id="id12">
<alpha attribute="content">
<green>This text must be green</green>
</alpha>
</nu>
</tau>
</tau>
</nu>
</upsilon>
</beta>
</xi>
</epsilon>
</beta>
</tree>
</test>
<test>
<xpath>//nu[@attr][@xml:id="id1"]/psi[contains(@insert,"tribute-value")][following-sibling::pi[preceding-sibling::*[position() = 1]]/omicron[@class="true"][not(preceding-sibling::*)][not(child::node())][following-sibling::iota[@attr="this-is-att-value"][@xml:id="id2"][preceding-sibling::*[position() = 1]]/zeta[@and][@xml:lang="en"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::mu[starts-with(concat(@insert,"-"),"content-")][@xml:lang="no"][preceding-sibling::*[position() = 1]][following-sibling::omicron[@true="123456789"][@xml:lang="en"][@xml:id="id4"]][position() = 1]][position() = 1]]]</xpath>
<tree>
<nu attr="123456789" xml:id="id1">
<psi insert="attribute-value"/>
<pi>
<omicron class="true"/>
<iota attr="this-is-att-value" xml:id="id2">
<zeta and="100%" xml:lang="en" xml:id="id3"/>
<mu insert="content" xml:lang="no"/>
<omicron true="123456789" xml:lang="en" xml:id="id4">
<green>This text must be green</green>
</omicron>
</iota>
</pi>
</nu>
</tree>
</test>
<test>
<xpath>//upsilon[starts-with(@insert,"10")][@xml:lang="no"][@xml:id="id1"]/mu[not(preceding-sibling::*)][not(following-sibling::*)]/pi[@class="_blank"][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//eta[@xml:lang="no-nb"][@xml:id="id2"]//zeta[starts-with(@desciption,"at")][not(following-sibling::*)]/theta/lambda[@content="_blank"][@xml:lang="nb"][@xml:id="id3"][not(child::node())][following-sibling::chi[@xml:lang="no-nb"][not(following-sibling::*)]/delta[@number][@xml:lang="en-US"][not(following-sibling::*)]//iota[contains(@and,"s-att-va")][@xml:id="id4"][not(preceding-sibling::*)]//upsilon[@xml:lang="no-nb"][@xml:id="id5"][following-sibling::chi[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/beta[@xml:lang="nb"]//kappa[contains(concat(@title,"$"),"123456789$")][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[contains(@class,"co")][@xml:lang="no"][following-sibling::alpha[@xml:lang="no"][@xml:id="id7"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//zeta[@name][@xml:id="id8"][not(following-sibling::*)]/lambda[@xml:lang="nb"][following-sibling::*[position()=1]][following-sibling::psi[@xml:lang="nb"][@xml:id="id9"][preceding-sibling::*[position() = 1]][position() = 1]][position() = 1]]][position() = 1]]]</xpath>
<tree>
<upsilon insert="100%" xml:lang="no" xml:id="id1">
<mu>
<pi class="_blank" xml:lang="no-nb">
<eta xml:lang="no-nb" xml:id="id2">
<zeta desciption="attribute">
<theta>
<lambda content="_blank" xml:lang="nb" xml:id="id3"/>
<chi xml:lang="no-nb">
<delta number="content" xml:lang="en-US">
<iota and="this-is-att-value" xml:id="id4">
<upsilon xml:lang="no-nb" xml:id="id5"/>
<chi>
<beta xml:lang="nb">
<kappa title="123456789" xml:id="id6"/>
<sigma class="content" xml:lang="no"/>
<alpha xml:lang="no" xml:id="id7">
<zeta name="attribute" xml:id="id8">
<lambda xml:lang="nb"/>
<psi xml:lang="nb" xml:id="id9">
<green>This text must be green</green>
</psi>
</zeta>
</alpha>
</beta>
</chi>
</iota>
</delta>
</chi>
</theta>
</zeta>
</eta>
</pi>
</mu>
</upsilon>
</tree>
</test>
<test>
<xpath>//psi[@xml:lang="en-US"][@xml:id="id1"]//nu[starts-with(concat(@desciption,"-"),"this.nodeValue-")][@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)][not(following-sibling::*)]/gamma[contains(@false,"lue")][@xml:lang="nb"][@xml:id="id3"]/gamma[@src][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::eta[starts-with(@and,"another attribute val")]//psi[not(preceding-sibling::*)]/zeta[starts-with(@false,"attribute val")][not(child::node())][following-sibling::tau[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/pi[@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)][not(following-sibling::pi)]//gamma[starts-with(@title,"another attribute valu")][@xml:id="id5"][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[@xml:lang="no"][@xml:id="id6"][preceding-sibling::*[position() = 1]][not(following-sibling::rho)]/lambda[@xml:lang="no"][@xml:id="id7"][following-sibling::omicron[not(following-sibling::*)]]][position() = 1]][position() = 1]]</xpath>
<tree>
<psi xml:lang="en-US" xml:id="id1">
<nu desciption="this.nodeValue" xml:lang="en" xml:id="id2">
<gamma false="attribute value" xml:lang="nb" xml:id="id3">
<gamma src="solid 1px green" xml:lang="en-GB"/>
<eta and="another attribute value">
<psi>
<zeta false="attribute value"/>
<tau>
<pi xml:lang="en" xml:id="id4">
<gamma title="another attribute value" xml:id="id5"/>
<rho xml:lang="no" xml:id="id6">
<lambda xml:lang="no" xml:id="id7"/>
<omicron>
<green>This text must be green</green>
</omicron>
</rho>
</pi>
</tau>
</psi>
</eta>
</gamma>
</nu>
</psi>
</tree>
</test>
<test>
<xpath>//nu[starts-with(concat(@src,"-"),"attribute-")][@xml:id="id1"]//chi[contains(@attribute,"_")][@xml:lang="no"][not(child::node())][following-sibling::kappa[@xml:lang="no-nb"][@xml:id="id2"]//beta[@xml:id="id3"][not(child::node())][following-sibling::upsilon[@token][@xml:lang="no"][not(following-sibling::*)]//theta[@xml:lang="no"]/lambda[contains(concat(@false,"$"),"bute$")][@xml:lang="no"][not(following-sibling::*)]/delta[not(following-sibling::*)]/gamma[@attribute][@xml:lang="no-nb"][not(preceding-sibling::*)]/sigma[@att="this.nodeValue"][@xml:lang="nb"][@xml:id="id4"][following-sibling::nu[@xml:id="id5"][preceding-sibling::*[position() = 1]]/omega[@xml:lang="en-US"][following-sibling::*[position()=2]][not(child::node())][following-sibling::pi[@xml:lang="en"][@xml:id="id6"][preceding-sibling::*[position() = 1]][following-sibling::lambda[@xml:lang="no-nb"][preceding-sibling::*[position() = 2]]/eta[starts-with(concat(@object,"-"),"123456789-")][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::iota[preceding-sibling::*[position() = 1]]/zeta[contains(concat(@attrib,"$"),"e$")][@xml:id="id7"][not(preceding-sibling::*)][not(following-sibling::*)]/zeta[@xml:id="id8"][not(child::node())][following-sibling::epsilon/tau[not(preceding-sibling::*)]//kappa[@xml:lang="nb"][following-sibling::rho[@class][@xml:lang="en-GB"][@xml:id="id9"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//iota[starts-with(concat(@string,"-"),"this-")][not(preceding-sibling::*)][not(following-sibling::*)]/xi[@xml:lang="no-nb"][not(following-sibling::*)]]][position() = 1]][position() = 1]]]][position() = 1]]]</xpath>
<tree>
<nu src="attribute-value" xml:id="id1">
<chi attribute="_blank" xml:lang="no"/>
<kappa xml:lang="no-nb" xml:id="id2">
<beta xml:id="id3"/>
<upsilon token="attribute" xml:lang="no">
<theta xml:lang="no">
<lambda false="attribute" xml:lang="no">
<delta>
<gamma attribute="attribute-value" xml:lang="no-nb">
<sigma att="this.nodeValue" xml:lang="nb" xml:id="id4"/>
<nu xml:id="id5">
<omega xml:lang="en-US"/>
<pi xml:lang="en" xml:id="id6"/>
<lambda xml:lang="no-nb">
<eta object="123456789" xml:lang="en-GB"/>
<iota>
<zeta attrib="attribute" xml:id="id7">
<zeta xml:id="id8"/>
<epsilon>
<tau>
<kappa xml:lang="nb"/>
<rho class="true" xml:lang="en-GB" xml:id="id9">
<iota string="this-is-att-value">
<xi xml:lang="no-nb">
<green>This text must be green</green>
</xi>
</iota>
</rho>
</tau>
</epsilon>
</zeta>
</iota>
</lambda>
</nu>
</gamma>
</delta>
</lambda>
</theta>
</upsilon>
</kappa>
</nu>
</tree>
</test>
<test>
<xpath>//tau[starts-with(concat(@delete,"-"),"_blank-")]/zeta[starts-with(@attr,"fal")][@xml:lang="no"][following-sibling::*[position()=1]][not(child::node())][following-sibling::iota[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]]//eta[starts-with(@src,"another attribute")][following-sibling::pi[@xml:lang="en-US"][@xml:id="id1"][preceding-sibling::*[position() = 1]]//gamma[@insert][not(preceding-sibling::*)][not(child::node())][following-sibling::chi[@content][not(following-sibling::*)]/chi[@object="this-is-att-value"][@xml:lang="no-nb"][not(following-sibling::*)]/gamma[@or][@xml:lang="en-US"][not(following-sibling::*)]//beta[@xml:id="id2"][not(preceding-sibling::*)][following-sibling::lambda[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//omicron[not(preceding-sibling::*)]/iota[starts-with(concat(@class,"-"),"attribute-")][@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::chi[starts-with(concat(@src,"-"),"attribute-")][@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<tau delete="_blank">
<zeta attr="false" xml:lang="no"/>
<iota xml:lang="en-GB">
<eta src="another attribute value"/>
<pi xml:lang="en-US" xml:id="id1">
<gamma insert="solid 1px green"/>
<chi content="attribute">
<chi object="this-is-att-value" xml:lang="no-nb">
<gamma or="attribute" xml:lang="en-US">
<beta xml:id="id2"/>
<lambda xml:lang="en-US">
<omicron>
<iota class="attribute" xml:lang="no-nb"/>
<chi src="attribute" xml:lang="no-nb">
<green>This text must be green</green>
</chi>
</omicron>
</lambda>
</gamma>
</chi>
</chi>
</pi>
</iota>
</tau>
</tree>
</test>
<test>
<xpath>//psi[contains(@att,"bute val")][@xml:lang="no-nb"]/psi[@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//nu[not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::pi[starts-with(concat(@or,"-"),"content-")][preceding-sibling::*[position() = 1]]/xi[@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[@xml:lang="en-GB"][@xml:id="id3"][not(child::node())][following-sibling::rho[@false="_blank"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::phi[@xml:lang="en-GB"][not(child::node())][following-sibling::alpha[preceding-sibling::*[position() = 4]][following-sibling::eta[@attrib][@xml:lang="en-US"][@xml:id="id4"][following-sibling::nu[@xml:lang="en-GB"][preceding-sibling::*[position() = 6]]/upsilon[@xml:lang="en"][@xml:id="id5"][following-sibling::*[position()=1]][following-sibling::kappa[@title][preceding-sibling::*[position() = 1]]]]]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<psi att="attribute value" xml:lang="no-nb">
<psi xml:id="id1">
<nu/>
<pi or="content">
<xi xml:id="id2"/>
<pi xml:lang="en-GB" xml:id="id3"/>
<rho false="_blank"/>
<phi xml:lang="en-GB"/>
<alpha/>
<eta attrib="true" xml:lang="en-US" xml:id="id4"/>
<nu xml:lang="en-GB">
<upsilon xml:lang="en" xml:id="id5"/>
<kappa title="attribute value">
<green>This text must be green</green>
</kappa>
</nu>
</pi>
</psi>
</psi>
</tree>
</test>
<test>
<xpath>//phi[contains(concat(@abort,"$"),"te value$")][@xml:lang="en"][@xml:id="id1"]/lambda[following-sibling::*[position()=1]][following-sibling::delta[not(following-sibling::*)]/iota[contains(@attr,"tent")][@xml:lang="en"][not(preceding-sibling::*)]//lambda[@desciption="_blank"][@xml:lang="no"][@xml:id="id2"][not(child::node())][following-sibling::xi[@attribute][@xml:id="id3"][preceding-sibling::*[position() = 1]]//nu[@xml:id="id4"][not(child::node())][following-sibling::*[@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 1]][position() = 1]]]]</xpath>
<tree>
<phi abort="attribute value" xml:lang="en" xml:id="id1">
<lambda/>
<delta>
<iota attr="content" xml:lang="en">
<lambda desciption="_blank" xml:lang="no" xml:id="id2"/>
<xi attribute="attribute" xml:id="id3">
<nu xml:id="id4"/>
<any xml:lang="en-GB" xml:id="id5">
<green>This text must be green</green>
</any>
</xi>
</iota>
</delta>
</phi>
</tree>
</test>
<test>
<xpath>//iota[@xml:id="id1"]/gamma[@content][@xml:lang="en-GB"][@xml:id="id2"][not(following-sibling::*)]//iota[@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]/upsilon[starts-with(concat(@attribute,"-"),"solid 1px green-")][@xml:id="id3"][not(following-sibling::*)]/gamma[not(preceding-sibling::*)][following-sibling::psi[@xml:id="id4"][following-sibling::*[position()=2]][following-sibling::chi[@title][@xml:lang="no-nb"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::sigma[starts-with(@attribute,"at")][@xml:lang="no"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/phi[@xml:lang="no"][following-sibling::*[position()=2]][not(child::node())][following-sibling::gamma[@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::lambda[@number][@xml:lang="nb"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//tau[@name][@xml:lang="en-GB"][@xml:id="id6"]/nu[contains(@class,"tru")][@xml:lang="en-US"][following-sibling::zeta[contains(@abort,"tent")][@xml:id="id7"][preceding-sibling::*[position() = 1]][following-sibling::iota[@xml:lang="en"][@xml:id="id8"][not(following-sibling::*)]/tau[@att][@xml:lang="en-GB"][not(following-sibling::*)]//alpha[starts-with(concat(@data,"-"),"another attribute value-")][@xml:lang="en-GB"][@xml:id="id9"]/kappa[@string][not(preceding-sibling::*)]]]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<iota xml:id="id1">
<gamma content="attribute" xml:lang="en-GB" xml:id="id2">
<iota xml:lang="nb">
<upsilon attribute="solid 1px green" xml:id="id3">
<gamma/>
<psi xml:id="id4"/>
<chi title="123456789" xml:lang="no-nb"/>
<sigma attribute="attribute value" xml:lang="no">
<phi xml:lang="no"/>
<gamma xml:id="id5"/>
<lambda number="content" xml:lang="nb">
<tau name="content" xml:lang="en-GB" xml:id="id6">
<nu class="true" xml:lang="en-US"/>
<zeta abort="content" xml:id="id7"/>
<iota xml:lang="en" xml:id="id8">
<tau att="this-is-att-value" xml:lang="en-GB">
<alpha data="another attribute value" xml:lang="en-GB" xml:id="id9">
<kappa string="attribute-value">
<green>This text must be green</green>
</kappa>
</alpha>
</tau>
</iota>
</tau>
</lambda>
</sigma>
</upsilon>
</iota>
</gamma>
</iota>
</tree>
</test>
<test>
<xpath>//mu[contains(concat(@token,"$"),"%$")]//alpha[starts-with(concat(@src,"-"),"this-")][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[contains(concat(@desciption,"$"),"00%$")][@xml:id="id1"][not(following-sibling::*)]/zeta[@xml:lang="nb"][@xml:id="id2"][following-sibling::*[position()=1]][not(child::node())][following-sibling::delta[not(following-sibling::*)]/pi[starts-with(@abort,"another attribute v")][@xml:lang="en-GB"][@xml:id="id3"][following-sibling::beta[preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::iota[@number]//iota[@xml:lang="no-nb"][@xml:id="id4"][following-sibling::pi[not(child::node())][following-sibling::sigma[@xml:id="id5"][preceding-sibling::*[position() = 2]]/mu[contains(concat(@class,"$"),"t-value$")][@xml:lang="en-GB"][not(following-sibling::*)]//alpha[starts-with(@title,"this-i")][@xml:id="id6"][not(child::node())][following-sibling::iota[@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/alpha[@xml:lang="no-nb"][not(child::node())][following-sibling::eta[@xml:id="id7"][preceding-sibling::*[position() = 1]]//omicron[@and="this.nodeValue"][@xml:id="id8"][not(preceding-sibling::*)]/lambda[@abort][@xml:lang="en"]][position() = 1]][position() = 1]]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<mu token="100%">
<alpha src="this-is-att-value"/>
<eta desciption="100%" xml:id="id1">
<zeta xml:lang="nb" xml:id="id2"/>
<delta>
<pi abort="another attribute value" xml:lang="en-GB" xml:id="id3"/>
<beta/>
<iota number="solid 1px green">
<iota xml:lang="no-nb" xml:id="id4"/>
<pi/>
<sigma xml:id="id5">
<mu class="this-is-att-value" xml:lang="en-GB">
<alpha title="this-is-att-value" xml:id="id6"/>
<iota xml:lang="en-US">
<alpha xml:lang="no-nb"/>
<eta xml:id="id7">
<omicron and="this.nodeValue" xml:id="id8">
<lambda abort="attribute" xml:lang="en">
<green>This text must be green</green>
</lambda>
</omicron>
</eta>
</iota>
</mu>
</sigma>
</iota>
</delta>
</eta>
</mu>
</tree>
</test>
<test>
<xpath>//omega[starts-with(concat(@token,"-"),"true-")]/gamma[@attribute]//pi[starts-with(concat(@desciption,"-"),"_blank-")][@xml:id="id1"][not(child::node())][following-sibling::*[contains(@token,"attrib")][@xml:id="id2"][preceding-sibling::*[position() = 1]]//chi[not(preceding-sibling::*)][following-sibling::nu[@attribute][@xml:lang="en-US"]/epsilon[@false="attribute"][@xml:lang="nb"][not(child::node())][following-sibling::delta[@xml:id="id3"][not(following-sibling::*)]//upsilon[not(child::node())][following-sibling::rho[@xml:lang="en-GB"][following-sibling::xi[contains(concat(@string,"$"),"alue$")][following-sibling::mu[@xml:lang="no-nb"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//kappa[contains(concat(@and,"$"),"nodeValue$")][not(following-sibling::*)][position() = 1]]]][position() = 1]][position() = 1]][position() = 1]]</xpath>
<tree>
<omega token="true">
<gamma attribute="false">
<pi desciption="_blank" xml:id="id1"/>
<any token="attribute" xml:id="id2">
<chi/>
<nu attribute="this-is-att-value" xml:lang="en-US">
<epsilon false="attribute" xml:lang="nb"/>
<delta xml:id="id3">
<upsilon/>
<rho xml:lang="en-GB"/>
<xi string="attribute-value"/>
<mu xml:lang="no-nb">
<kappa and="this.nodeValue">
<green>This text must be green</green>
</kappa>
</mu>
</delta>
</nu>
</any>
</gamma>
</omega>
</tree>
</test>
<test>
<xpath>//nu[starts-with(@attr,"_")][@xml:lang="nb"]//alpha[not(following-sibling::*)]/phi[not(following-sibling::*)]/theta[contains(concat(@abort,"$"),"k$")][@xml:lang="nb"][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::alpha[contains(concat(@number,"$"),"-att-value$")][@xml:id="id1"][not(child::node())][following-sibling::upsilon[@xml:lang="en-US"][@xml:id="id2"][preceding-sibling::*[position() = 2]]/*[contains(@abort," 1px green")][@xml:lang="nb"][@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::rho[@xml:lang="no"][preceding-sibling::*[position() = 1]]//xi[@xml:lang="en"][not(preceding-sibling::*)]//xi[@xml:lang="no-nb"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//eta[contains(concat(@attrib,"$"),"-value$")][@xml:lang="no"][@xml:id="id5"][not(preceding-sibling::*)][following-sibling::alpha[contains(concat(@object,"$"),"alse$")][@xml:lang="no-nb"][@xml:id="id6"][preceding-sibling::*[position() = 1]]/iota[@xml:lang="en-US"][@xml:id="id7"][not(preceding-sibling::*)][not(child::node())][following-sibling::eta[@att][not(child::node())][following-sibling::eta[preceding-sibling::*[position() = 2]]/lambda[@xml:lang="en-US"][following-sibling::*[position()=1]][not(child::node())][following-sibling::pi[@xml:id="id8"][preceding-sibling::*[position() = 1]]//chi[@number][@xml:lang="en-GB"][following-sibling::mu[@abort][@xml:id="id9"][not(following-sibling::*)]]]][position() = 1]]][position() = 1]]]]</xpath>
<tree>
<nu attr="_blank" xml:lang="nb">
<alpha>
<phi>
<theta abort="_blank" xml:lang="nb">
<zeta xml:lang="no-nb"/>
<alpha number="this-is-att-value" xml:id="id1"/>
<upsilon xml:lang="en-US" xml:id="id2">
<any abort="solid 1px green" xml:lang="nb" xml:id="id3"/>
<rho xml:lang="no">
<xi xml:lang="en">
<xi xml:lang="no-nb" xml:id="id4">
<eta attrib="this-is-att-value" xml:lang="no" xml:id="id5"/>
<alpha object="false" xml:lang="no-nb" xml:id="id6">
<iota xml:lang="en-US" xml:id="id7"/>
<eta att="content"/>
<eta>
<lambda xml:lang="en-US"/>
<pi xml:id="id8">
<chi number="_blank" xml:lang="en-GB"/>
<mu abort="false" xml:id="id9">
<green>This text must be green</green>
</mu>
</pi>
</eta>
</alpha>
</xi>
</xi>
</rho>
</upsilon>
</theta>
</phi>
</alpha>
</nu>
</tree>
</test>
<test>
<xpath>//sigma//gamma[not(following-sibling::*)]/kappa[@attr="_blank"][@xml:lang="en-GB"][not(following-sibling::*)]/nu[@xml:lang="en"][@xml:id="id1"][following-sibling::kappa[preceding-sibling::*[position() = 1]][not(following-sibling::*)]/omega[not(child::node())][following-sibling::psi[@or][@xml:id="id2"][preceding-sibling::*[position() = 1]][not(preceding-sibling::psi)]//gamma[@true][@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::iota[@xml:id="id4"][following-sibling::*[position()=2]][following-sibling::pi[@data][@xml:id="id5"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::omicron[@token][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//psi[contains(@false,"se")][@xml:lang="no"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::zeta[@class="attribute"][@xml:lang="no-nb"][@xml:id="id7"][following-sibling::lambda[@title="another attribute value"]/chi[@xml:lang="en"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[starts-with(concat(@attribute,"-"),"attribute value-")][@xml:id="id8"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][following-sibling::epsilon[@xml:id="id9"][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::zeta[@xml:id="id10"][preceding-sibling::*[position() = 3]]/beta[@xml:lang="en-US"][@xml:id="id11"][not(following-sibling::*)]//rho[@xml:id="id12"][not(following-sibling::*)]/iota[@xml:id="id13"][not(preceding-sibling::*)][not(following-sibling::*)]]]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<sigma>
<gamma>
<kappa attr="_blank" xml:lang="en-GB">
<nu xml:lang="en" xml:id="id1"/>
<kappa>
<omega/>
<psi or="true" xml:id="id2">
<gamma true="this-is-att-value" xml:id="id3"/>
<iota xml:id="id4"/>
<pi data="100%" xml:id="id5"/>
<omicron token="another attribute value">
<psi false="false" xml:lang="no" xml:id="id6"/>
<zeta class="attribute" xml:lang="no-nb" xml:id="id7"/>
<lambda title="another attribute value">
<chi xml:lang="en"/>
<sigma attribute="attribute value" xml:id="id8"/>
<epsilon xml:id="id9"/>
<zeta xml:id="id10">
<beta xml:lang="en-US" xml:id="id11">
<rho xml:id="id12">
<iota xml:id="id13">
<green>This text must be green</green>
</iota>
</rho>
</beta>
</zeta>
</lambda>
</omicron>
</psi>
</kappa>
</kappa>
</gamma>
</sigma>
</tree>
</test>
<test>
<xpath>//rho[@xml:id="id1"]//theta[starts-with(concat(@true,"-"),"123456789-")][@xml:lang="en-US"][@xml:id="id2"][not(preceding-sibling::*)][following-sibling::pi[contains(concat(@attr,"$"),"value$")][@xml:lang="en-US"][not(child::node())][following-sibling::phi[following-sibling::*[position()=1]][following-sibling::beta[contains(concat(@true,"$"),"e$")][@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//zeta[following-sibling::eta[starts-with(concat(@number,"-"),"attribute-")][preceding-sibling::*[position() = 1]][not(preceding-sibling::eta or following-sibling::eta)]//omicron[not(preceding-sibling::*)][not(child::node())][following-sibling::nu[@xml:id="id4"]/kappa[@xml:lang="no"][not(preceding-sibling::*)][not(following-sibling::*)]//epsilon[not(preceding-sibling::*)][not(following-sibling::*)]//pi[following-sibling::epsilon[contains(concat(@att,"$"),"e$")][not(following-sibling::*)]/lambda[contains(@true,"00%")][@xml:lang="en-US"][not(following-sibling::*)]/omega[@xml:lang="no"][not(preceding-sibling::*)]]]]]]]</xpath>
<tree>
<rho xml:id="id1">
<theta true="123456789" xml:lang="en-US" xml:id="id2"/>
<pi attr="attribute-value" xml:lang="en-US"/>
<phi/>
<beta true="attribute value" xml:lang="en-US" xml:id="id3">
<zeta/>
<eta number="attribute-value">
<omicron/>
<nu xml:id="id4">
<kappa xml:lang="no">
<epsilon>
<pi/>
<epsilon att="attribute value">
<lambda true="100%" xml:lang="en-US">
<omega xml:lang="no">
<green>This text must be green</green>
</omega>
</lambda>
</epsilon>
</epsilon>
</kappa>
</nu>
</eta>
</beta>
</rho>
</tree>
</test>
<test>
<xpath>//psi[starts-with(concat(@attribute,"-"),"true-")][@xml:lang="en-US"][@xml:id="id1"]//chi[@xml:id="id2"][not(preceding-sibling::*)][not(child::node())][following-sibling::zeta[@or][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][following-sibling::iota[starts-with(concat(@insert,"-"),"123456789-")][@xml:lang="en-GB"][@xml:id="id3"]/epsilon[starts-with(@false,"this-")][not(preceding-sibling::*)]/rho[not(following-sibling::*)]/gamma[@xml:lang="no-nb"]/alpha[@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]/psi[starts-with(concat(@data,"-"),"attribute-")][@xml:lang="en"][following-sibling::*[position()=1]][following-sibling::tau[contains(@desciption," value")][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/tau[starts-with(concat(@and,"-"),"attribute-")][@xml:lang="no"][not(child::node())][following-sibling::chi[starts-with(@string,"another at")][@xml:id="id5"][following-sibling::xi[preceding-sibling::*[position() = 2]]/alpha[contains(@class,"s-att-value")][not(following-sibling::*)]//eta[@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::sigma[@content][preceding-sibling::*[position() = 1]]//psi[not(preceding-sibling::*)][not(child::node())][following-sibling::pi[starts-with(concat(@true,"-"),"another attribute value-")][@xml:lang="en-US"][@xml:id="id7"][not(following-sibling::*)]/theta[@xml:lang="nb"][position() = 1]]]]]]][position() = 1]]</xpath>
<tree>
<psi attribute="true" xml:lang="en-US" xml:id="id1">
<chi xml:id="id2"/>
<zeta or="100%" xml:lang="en-US"/>
<iota insert="123456789" xml:lang="en-GB" xml:id="id3">
<epsilon false="this-is-att-value">
<rho>
<gamma xml:lang="no-nb">
<alpha xml:id="id4">
<psi data="attribute" xml:lang="en"/>
<tau desciption="attribute value">
<tau and="attribute" xml:lang="no"/>
<chi string="another attribute value" xml:id="id5"/>
<xi>
<alpha class="this-is-att-value">
<eta xml:id="id6"/>
<sigma content="this.nodeValue">
<psi/>
<pi true="another attribute value" xml:lang="en-US" xml:id="id7">
<theta xml:lang="nb">
<green>This text must be green</green>
</theta>
</pi>
</sigma>
</alpha>
</xi>
</tau>
</alpha>
</gamma>
</rho>
</epsilon>
</iota>
</psi>
</tree>
</test>
<test>
<xpath>//xi/eta[contains(@content,"bla")][@xml:lang="no-nb"][@xml:id="id1"][not(preceding-sibling::*)][not(child::node())][following-sibling::omega[contains(concat(@number,"$"),"bute value$")][preceding-sibling::*[position() = 1]][following-sibling::omicron[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]]/epsilon[contains(@delete,"alue")][@xml:lang="en-GB"][not(preceding-sibling::*)][not(following-sibling::*)]//lambda[contains(concat(@att,"$"),"00%$")][@xml:id="id2"][not(child::node())][following-sibling::iota[following-sibling::*[position()=5]][not(child::node())][following-sibling::kappa[@xml:lang="no-nb"][not(child::node())][following-sibling::epsilon[@false="this-is-att-value"][@xml:lang="en"][not(child::node())][following-sibling::omega[following-sibling::chi[starts-with(concat(@desciption,"-"),"content-")][@xml:lang="en"][preceding-sibling::*[position() = 5]][following-sibling::*[position()=1]][not(child::node())][following-sibling::tau[@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 6]][not(following-sibling::*)]/rho[not(preceding-sibling::*)][following-sibling::lambda[preceding-sibling::*[position() = 1]][following-sibling::theta[@attribute="_blank"]//epsilon[@xml:lang="nb"][@xml:id="id4"][not(preceding-sibling::*)]//*[starts-with(@object,"conte")][@xml:lang="no"][@xml:id="id5"][following-sibling::*[@attribute][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//chi[@content][@xml:lang="en"][following-sibling::upsilon//gamma[starts-with(concat(@class,"-"),"attribute value-")][not(following-sibling::*)]//rho[@src][@xml:id="id6"][not(following-sibling::*)]//beta[@xml:id="id7"][not(preceding-sibling::*)][position() = 1]]]]]]][position() = 1]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<xi>
<eta content="_blank" xml:lang="no-nb" xml:id="id1"/>
<omega number="attribute value"/>
<omicron xml:lang="en-GB">
<epsilon delete="attribute-value" xml:lang="en-GB">
<lambda att="100%" xml:id="id2"/>
<iota/>
<kappa xml:lang="no-nb"/>
<epsilon false="this-is-att-value" xml:lang="en"/>
<omega/>
<chi desciption="content" xml:lang="en"/>
<tau xml:lang="en-US" xml:id="id3">
<rho/>
<lambda/>
<theta attribute="_blank">
<epsilon xml:lang="nb" xml:id="id4">
<any object="content" xml:lang="no" xml:id="id5"/>
<any attribute="123456789">
<chi content="true" xml:lang="en"/>
<upsilon>
<gamma class="attribute value">
<rho src="100%" xml:id="id6">
<beta xml:id="id7">
<green>This text must be green</green>
</beta>
</rho>
</gamma>
</upsilon>
</any>
</epsilon>
</theta>
</tau>
</epsilon>
</omicron>
</xi>
</tree>
</test>
<test>
<xpath>//omicron[@xml:lang="nb"]//upsilon[contains(concat(@number,"$"),"e value$")][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::nu[starts-with(concat(@abort,"-"),"attribute value-")][@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/omicron[starts-with(@insert,"_")][@xml:lang="no-nb"][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]/beta[@xml:id="id2"][not(child::node())][following-sibling::alpha[@xml:id="id3"][preceding-sibling::*[position() = 1]][following-sibling::delta[starts-with(concat(@attribute,"-"),"solid 1px green-")][@xml:lang="en"][preceding-sibling::*[position() = 2]]/omega[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::beta[@xml:lang="nb"][preceding-sibling::*[position() = 1]][following-sibling::psi[@name][preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::omicron[@title="attribute value"][@xml:id="id4"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//kappa[starts-with(concat(@title,"-"),"attribute-")][not(preceding-sibling::*)][not(following-sibling::*)]//zeta[@xml:id="id5"][not(following-sibling::*)]//alpha[following-sibling::rho[preceding-sibling::*[position() = 1]][following-sibling::theta[@xml:lang="nb"]/nu[@number][not(child::node())][following-sibling::pi[starts-with(@object,"false")][@xml:id="id6"]//psi[@false][@xml:id="id7"][not(preceding-sibling::*)]/epsilon[contains(concat(@false,"$"),"nk$")][not(preceding-sibling::*)][not(child::node())][following-sibling::rho[following-sibling::*[position()=2]][not(child::node())][following-sibling::lambda[contains(@object,"bute value")][@xml:id="id8"][not(child::node())][following-sibling::pi[contains(concat(@desciption,"$"),"s.nodeValue$")][not(following-sibling::*)][position() = 1]]][position() = 1]]][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]][position() = 1]]</xpath>
<tree>
<omicron xml:lang="nb">
<upsilon number="attribute value"/>
<nu abort="attribute value" xml:lang="nb">
<omicron insert="_blank" xml:lang="no-nb" xml:id="id1">
<beta xml:id="id2"/>
<alpha xml:id="id3"/>
<delta attribute="solid 1px green" xml:lang="en">
<omega xml:lang="en"/>
<beta xml:lang="nb"/>
<psi name="attribute value"/>
<omicron title="attribute value" xml:id="id4">
<kappa title="attribute">
<zeta xml:id="id5">
<alpha/>
<rho/>
<theta xml:lang="nb">
<nu number="content"/>
<pi object="false" xml:id="id6">
<psi false="another attribute value" xml:id="id7">
<epsilon false="_blank"/>
<rho/>
<lambda object="attribute value" xml:id="id8"/>
<pi desciption="this.nodeValue">
<green>This text must be green</green>
</pi>
</psi>
</pi>
</theta>
</zeta>
</kappa>
</omicron>
</delta>
</omicron>
</nu>
</omicron>
</tree>
</test>
<test>
<xpath>//*[@xml:lang="en-US"]/psi[contains(@data,"e")][not(preceding-sibling::*)]//tau[@xml:lang="no-nb"][@xml:id="id1"][not(child::node())][following-sibling::zeta[not(child::node())][following-sibling::iota[@xml:lang="en-GB"][not(child::node())][following-sibling::mu[@attr="attribute-value"][@xml:lang="no"][not(following-sibling::*)]/delta[@xml:id="id2"]//kappa[@xml:id="id3"][not(preceding-sibling::*)][following-sibling::*[position()=4]][following-sibling::*[starts-with(concat(@abort,"-"),"this-")][@xml:id="id4"][following-sibling::rho[@xml:id="id5"][following-sibling::alpha[@object="this-is-att-value"][preceding-sibling::*[position() = 3]][not(child::node())][following-sibling::rho[@xml:lang="no-nb"][@xml:id="id6"][preceding-sibling::*[position() = 4]]/delta[contains(concat(@content,"$"),"blank$")][not(following-sibling::*)]]]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<any xml:lang="en-US">
<psi data="true">
<tau xml:lang="no-nb" xml:id="id1"/>
<zeta/>
<iota xml:lang="en-GB"/>
<mu attr="attribute-value" xml:lang="no">
<delta xml:id="id2">
<kappa xml:id="id3"/>
<any abort="this-is-att-value" xml:id="id4"/>
<rho xml:id="id5"/>
<alpha object="this-is-att-value"/>
<rho xml:lang="no-nb" xml:id="id6">
<delta content="_blank">
<green>This text must be green</green>
</delta>
</rho>
</delta>
</mu>
</psi>
</any>
</tree>
</test>
<test>
<xpath>//alpha[@xml:id="id1"]/theta[@true][@xml:lang="no"][@xml:id="id2"][not(child::node())][following-sibling::delta[following-sibling::omicron[contains(concat(@desciption,"$"),"ribute$")][@xml:lang="en-GB"][preceding-sibling::*[position() = 2]][following-sibling::kappa[@xml:lang="en-US"][@xml:id="id3"][not(following-sibling::*)]//beta[@attrib][@xml:lang="en"][@xml:id="id4"][not(child::node())][following-sibling::upsilon[starts-with(concat(@token,"-"),"attribute-")][@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<alpha xml:id="id1">
<theta true="attribute-value" xml:lang="no" xml:id="id2"/>
<delta/>
<omicron desciption="attribute" xml:lang="en-GB"/>
<kappa xml:lang="en-US" xml:id="id3">
<beta attrib="another attribute value" xml:lang="en" xml:id="id4"/>
<upsilon token="attribute-value" xml:lang="nb">
<green>This text must be green</green>
</upsilon>
</kappa>
</alpha>
</tree>
</test>
<test>
<xpath>//chi[starts-with(concat(@object,"-"),"this.nodeValue-")][@xml:lang="no"]/iota[@attr][following-sibling::eta[preceding-sibling::*[position() = 1]]/psi[following-sibling::*[position()=1]][following-sibling::lambda[@abort][@xml:lang="no"][@xml:id="id1"]/*[@xml:lang="no"][@xml:id="id2"]//phi[starts-with(concat(@abort,"-"),"true-")][@xml:lang="no-nb"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]//xi[@xml:id="id4"][not(child::node())][following-sibling::iota[@xml:id="id5"]//phi[contains(@src,"10")][@xml:id="id6"][not(preceding-sibling::*)][not(preceding-sibling::phi or following-sibling::phi)][following-sibling::tau[not(child::node())][following-sibling::omicron[@xml:lang="en-GB"][preceding-sibling::*[position() = 2]]//delta[@data][@xml:lang="nb"][not(child::node())][following-sibling::omega[@xml:id="id7"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/phi[@xml:lang="en-GB"][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[contains(@false,"r")]/xi[@xml:lang="en"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::theta[position() = 1]][position() = 1]]][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<chi object="this.nodeValue" xml:lang="no">
<iota attr="solid 1px green"/>
<eta>
<psi/>
<lambda abort="false" xml:lang="no" xml:id="id1">
<any xml:lang="no" xml:id="id2">
<phi abort="true" xml:lang="no-nb" xml:id="id3">
<xi xml:id="id4"/>
<iota xml:id="id5">
<phi src="100%" xml:id="id6"/>
<tau/>
<omicron xml:lang="en-GB">
<delta data="false" xml:lang="nb"/>
<omega xml:id="id7">
<phi xml:lang="en-GB"/>
<kappa false="true">
<xi xml:lang="en"/>
<theta>
<green>This text must be green</green>
</theta>
</kappa>
</omega>
</omicron>
</iota>
</phi>
</any>
</lambda>
</eta>
</chi>
</tree>
</test>
<test>
<xpath>//xi[@xml:lang="en-GB"]//omicron[@xml:id="id1"][not(preceding-sibling::*)]//*[@true="this-is-att-value"][@xml:id="id2"][following-sibling::chi[@xml:id="id3"][not(following-sibling::*)]//alpha//epsilon[@object][@xml:lang="en"][@xml:id="id4"][not(preceding-sibling::*)][not(following-sibling::*)]//*[@src][not(preceding-sibling::*)]/kappa[starts-with(concat(@false,"-"),"another attribute value-")]/xi[starts-with(concat(@number,"-"),"123456789-")][@xml:lang="nb"][@xml:id="id5"][not(child::node())][following-sibling::mu[contains(@delete,"r")][not(following-sibling::*)]//xi[starts-with(@name,"_blan")][following-sibling::*[@xml:id="id6"][not(following-sibling::*)]/*[@object][@xml:lang="no-nb"][not(following-sibling::*)]/eta[@xml:lang="no-nb"][not(following-sibling::*)]/epsilon[@or="attribute value"][@xml:lang="en-GB"][not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::psi[@delete][@xml:id="id7"][following-sibling::*[position()=1]][following-sibling::kappa[@xml:id="id8"]//omega[@data][@xml:lang="en-US"][not(preceding-sibling::*)]/mu[starts-with(concat(@attribute,"-"),"true-")][@xml:id="id9"][not(following-sibling::*)]//eta[contains(concat(@number,"$"),"ue$")][@xml:lang="en-US"][@xml:id="id10"][not(preceding-sibling::*)][not(following-sibling::*)]//alpha[starts-with(concat(@attrib,"-"),"attribute-")][@xml:lang="en"][not(preceding-sibling::*)]/eta[@true][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::alpha[@data="100%"][@xml:id="id11"]//omicron[@src="this-is-att-value"][@xml:id="id12"][not(preceding-sibling::*)][position() = 1]][position() = 1]]]]][position() = 1]]</xpath>
<tree>
<xi xml:lang="en-GB">
<omicron xml:id="id1">
<any true="this-is-att-value" xml:id="id2"/>
<chi xml:id="id3">
<alpha>
<epsilon object="this.nodeValue" xml:lang="en" xml:id="id4">
<any src="this.nodeValue">
<kappa false="another attribute value">
<xi number="123456789" xml:lang="nb" xml:id="id5"/>
<mu delete="true">
<xi name="_blank"/>
<any xml:id="id6">
<any object="this.nodeValue" xml:lang="no-nb">
<eta xml:lang="no-nb">
<epsilon or="attribute value" xml:lang="en-GB"/>
<psi delete="solid 1px green" xml:id="id7"/>
<kappa xml:id="id8">
<omega data="attribute" xml:lang="en-US">
<mu attribute="true" xml:id="id9">
<eta number="true" xml:lang="en-US" xml:id="id10">
<alpha attrib="attribute" xml:lang="en">
<eta true="content" xml:lang="no"/>
<alpha data="100%" xml:id="id11">
<omicron src="this-is-att-value" xml:id="id12">
<green>This text must be green</green>
</omicron>
</alpha>
</alpha>
</eta>
</mu>
</omega>
</kappa>
</eta>
</any>
</any>
</mu>
</kappa>
</any>
</epsilon>
</alpha>
</chi>
</omicron>
</xi>
</tree>
</test>
<test>
<xpath>//eta[@xml:lang="en-US"]//zeta[@attribute][@xml:id="id1"][not(preceding-sibling::*)]//lambda[@attr="100%"][@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)]//rho[contains(concat(@src,"$"),"Value$")][@xml:lang="en-US"][not(preceding-sibling::*)]/rho[contains(@name,"e")][not(preceding-sibling::*)]/psi[@xml:lang="no-nb"][not(preceding-sibling::*)][following-sibling::*[position()=1]][not(child::node())][following-sibling::epsilon[@or][@xml:id="id3"][not(following-sibling::*)]//psi//chi[not(preceding-sibling::*)][following-sibling::*[position()=3]][not(child::node())][following-sibling::iota[@xml:lang="en"][following-sibling::*[position()=2]][following-sibling::tau[@string="false"][preceding-sibling::*[position() = 2]][following-sibling::delta[@xml:id="id4"]/kappa[@xml:lang="en-US"][@xml:id="id5"][not(child::node())][following-sibling::omicron[starts-with(@string,"tr")][@xml:lang="no"][@xml:id="id6"][not(following-sibling::*)]//kappa[starts-with(@abort,"attr")]//omega[@desciption][@xml:lang="no"][not(preceding-sibling::*)][following-sibling::sigma[@xml:lang="nb"][preceding-sibling::*[position() = 1]]//delta[starts-with(@attribute,"_b")][@xml:id="id7"][following-sibling::mu[@number][@xml:lang="no"][@xml:id="id8"]/chi[@xml:lang="no-nb"][@xml:id="id9"]/eta[@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::lambda[@xml:id="id10"][not(following-sibling::*)][position() = 1]]][position() = 1]][position() = 1]]]][position() = 1]][position() = 1]]</xpath>
<tree>
<eta xml:lang="en-US">
<zeta attribute="false" xml:id="id1">
<lambda attr="100%" xml:lang="en" xml:id="id2">
<rho src="this.nodeValue" xml:lang="en-US">
<rho name="true">
<psi xml:lang="no-nb"/>
<epsilon or="another attribute value" xml:id="id3">
<psi>
<chi/>
<iota xml:lang="en"/>
<tau string="false"/>
<delta xml:id="id4">
<kappa xml:lang="en-US" xml:id="id5"/>
<omicron string="true" xml:lang="no" xml:id="id6">
<kappa abort="attribute">
<omega desciption="another attribute value" xml:lang="no"/>
<sigma xml:lang="nb">
<delta attribute="_blank" xml:id="id7"/>
<mu number="false" xml:lang="no" xml:id="id8">
<chi xml:lang="no-nb" xml:id="id9">
<eta xml:lang="no"/>
<lambda xml:id="id10">
<green>This text must be green</green>
</lambda>
</chi>
</mu>
</sigma>
</kappa>
</omicron>
</delta>
</psi>
</epsilon>
</rho>
</rho>
</lambda>
</zeta>
</eta>
</tree>
</test>
<test>
<xpath>//omega[@name][@xml:lang="en-GB"]/lambda[@content][@xml:id="id1"][following-sibling::*[position()=1]][not(child::node())][following-sibling::eta[@xml:lang="no"][@xml:id="id2"]/beta[starts-with(@abort,"1")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]//rho[@xml:id="id3"][not(child::node())][following-sibling::*[@xml:lang="en-GB"][not(child::node())][following-sibling::rho[starts-with(@true,"th")][@xml:lang="no"][preceding-sibling::*[position() = 2]]//phi[starts-with(concat(@object,"-"),"attribute value-")][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::sigma[starts-with(@insert,"tru")][@xml:lang="no"][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::upsilon[@xml:lang="en"][not(child::node())][following-sibling::delta[@xml:lang="en"][@xml:id="id5"][not(following-sibling::*)]//theta[contains(@or,"tribute")][@xml:lang="no"][@xml:id="id6"][not(preceding-sibling::*)][following-sibling::iota[preceding-sibling::*[position() = 1]][following-sibling::*[position()=2]][not(child::node())][following-sibling::rho[starts-with(@and,"_b")][@xml:lang="nb"][following-sibling::psi[contains(@attribute,"att-value")][preceding-sibling::*[position() = 3]][not(following-sibling::*)]/phi[@xml:lang="en-US"][position() = 1]][position() = 1]]]]]]][position() = 1]]]</xpath>
<tree>
<omega name="attribute" xml:lang="en-GB">
<lambda content="false" xml:id="id1"/>
<eta xml:lang="no" xml:id="id2">
<beta abort="100%" xml:lang="no-nb">
<rho xml:id="id3"/>
<any xml:lang="en-GB"/>
<rho true="this-is-att-value" xml:lang="no">
<phi object="attribute value" xml:lang="nb"/>
<sigma insert="true" xml:lang="no" xml:id="id4"/>
<upsilon xml:lang="en"/>
<delta xml:lang="en" xml:id="id5">
<theta or="attribute" xml:lang="no" xml:id="id6"/>
<iota/>
<rho and="_blank" xml:lang="nb"/>
<psi attribute="this-is-att-value">
<phi xml:lang="en-US">
<green>This text must be green</green>
</phi>
</psi>
</delta>
</rho>
</beta>
</eta>
</omega>
</tree>
</test>
<test>
<xpath>//eta[@xml:id="id1"]/eta[following-sibling::*[position()=1]][not(child::node())][following-sibling::psi[contains(concat(@class,"$"),"er attribute value$")][@xml:lang="en-US"][not(following-sibling::*)]/alpha[@class][@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::chi[@xml:id="id2"][not(child::node())][following-sibling::kappa[@xml:lang="en-US"][@xml:id="id3"][preceding-sibling::*[position() = 2]]//rho[starts-with(concat(@insert,"-"),"attribute-")][@xml:lang="nb"][not(preceding-sibling::*)][following-sibling::nu[@number][@xml:lang="no-nb"]/upsilon[@xml:id="id4"][not(following-sibling::*)]/eta[@insert][@xml:id="id5"][not(following-sibling::*)]//alpha[contains(@title,"ttribu")][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::kappa[@object="true"][@xml:id="id7"][following-sibling::nu[@attr][preceding-sibling::*[position() = 2]][not(following-sibling::*)]//kappa[@token][@xml:id="id8"][not(preceding-sibling::*)][following-sibling::kappa[@true="100%"][@xml:id="id9"][not(following-sibling::*)][position() = 1]]][position() = 1]]][position() = 1]]][position() = 1]]</xpath>
<tree>
<eta xml:id="id1">
<eta/>
<psi class="another attribute value" xml:lang="en-US">
<alpha class="123456789" xml:lang="no"/>
<chi xml:id="id2"/>
<kappa xml:lang="en-US" xml:id="id3">
<rho insert="attribute-value" xml:lang="nb"/>
<nu number="123456789" xml:lang="no-nb">
<upsilon xml:id="id4">
<eta insert="attribute-value" xml:id="id5">
<alpha title="attribute value" xml:id="id6"/>
<kappa object="true" xml:id="id7"/>
<nu attr="solid 1px green">
<kappa token="true" xml:id="id8"/>
<kappa true="100%" xml:id="id9">
<green>This text must be green</green>
</kappa>
</nu>
</eta>
</upsilon>
</nu>
</kappa>
</psi>
</eta>
</tree>
</test>
<test>
<xpath>//sigma[@xml:lang="en"][@xml:id="id1"]//omega[starts-with(concat(@name,"-"),"content-")][not(preceding-sibling::*)]//epsilon[@xml:id="id2"][not(preceding-sibling::*)]/upsilon[@false="content"][@xml:lang="en"][following-sibling::beta[@xml:id="id3"][preceding-sibling::*[position() = 1]][following-sibling::xi[@xml:id="id4"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/sigma[contains(@abort,"t")][@xml:lang="no-nb"][not(preceding-sibling::*)][not(following-sibling::*)]/pi[@xml:lang="nb"][@xml:id="id5"][not(child::node())][following-sibling::alpha[not(child::node())][following-sibling::kappa[preceding-sibling::*[position() = 2]][not(child::node())][following-sibling::mu[not(following-sibling::*)]/delta[@xml:lang="no"][not(preceding-sibling::*)][not(child::node())][following-sibling::pi[preceding-sibling::*[position() = 1]][not(following-sibling::*)]]]]][position() = 1]]]</xpath>
<tree>
<sigma xml:lang="en" xml:id="id1">
<omega name="content">
<epsilon xml:id="id2">
<upsilon false="content" xml:lang="en"/>
<beta xml:id="id3"/>
<xi xml:id="id4">
<sigma abort="content" xml:lang="no-nb">
<pi xml:lang="nb" xml:id="id5"/>
<alpha/>
<kappa/>
<mu>
<delta xml:lang="no"/>
<pi>
<green>This text must be green</green>
</pi>
</mu>
</sigma>
</xi>
</epsilon>
</omega>
</sigma>
</tree>
</test>
<test>
<xpath>//theta[@xml:lang="no-nb"][@xml:id="id1"]//omega[starts-with(@number,"soli")][not(preceding-sibling::*)]//mu[@xml:lang="en-GB"][not(child::node())][following-sibling::eta[starts-with(concat(@false,"-"),"_blank-")][@xml:id="id2"][following-sibling::*[position()=1]][not(child::node())][following-sibling::phi[@xml:id="id3"][preceding-sibling::*[position() = 2]][not(following-sibling::*)]/nu[contains(@false,"%")][not(preceding-sibling::*)]/psi[@and][@xml:lang="en-GB"][following-sibling::eta[@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::alpha[following-sibling::omicron[@xml:lang="en-GB"][@xml:id="id5"][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//nu[@xml:lang="en-GB"][not(preceding-sibling::*)]//pi[contains(concat(@title,"$"),"e$")][following-sibling::theta[starts-with(concat(@attr,"-"),"false-")][preceding-sibling::*[position() = 1]][position() = 1]][position() = 1]]][position() = 1]]]]</xpath>
<tree>
<theta xml:lang="no-nb" xml:id="id1">
<omega number="solid 1px green">
<mu xml:lang="en-GB"/>
<eta false="_blank" xml:id="id2"/>
<phi xml:id="id3">
<nu false="100%">
<psi and="this.nodeValue" xml:lang="en-GB"/>
<eta xml:id="id4"/>
<alpha/>
<omicron xml:lang="en-GB" xml:id="id5">
<nu xml:lang="en-GB">
<pi title="true"/>
<theta attr="false">
<green>This text must be green</green>
</theta>
</nu>
</omicron>
</nu>
</phi>
</omega>
</theta>
</tree>
</test>
<test>
<xpath>//alpha[@true][@xml:lang="en-US"]//nu[@xml:lang="nb"]//xi[@xml:lang="no-nb"][@xml:id="id1"][following-sibling::*[position()=1]][following-sibling::delta[@object][@xml:lang="en"][@xml:id="id2"][preceding-sibling::*[position() = 1]]//psi[@xml:id="id3"][not(preceding-sibling::*)][not(child::node())][following-sibling::epsilon//omega[contains(concat(@title,"$"),"id 1px green$")][@xml:lang="en-US"][not(preceding-sibling::*)][not(following-sibling::*)]/psi[@xml:id="id4"][not(preceding-sibling::*)]/omicron[@attribute][not(preceding-sibling::*)][not(child::node())][following-sibling::xi[@xml:id="id5"]/upsilon[@attribute][@xml:lang="no"][@xml:id="id6"][not(preceding-sibling::*)][not(child::node())][following-sibling::phi[@attribute="attribute-value"][@xml:id="id7"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::alpha[contains(concat(@delete,"$"),"ibute-value$")][@xml:lang="en-US"][following-sibling::phi[@src="this-is-att-value"][@xml:id="id8"][following-sibling::rho[@xml:lang="en"][@xml:id="id9"][position() = 1]][position() = 1]]][position() = 1]][position() = 1]][position() = 1]]]</xpath>
<tree>
<alpha true="this.nodeValue" xml:lang="en-US">
<nu xml:lang="nb">
<xi xml:lang="no-nb" xml:id="id1"/>
<delta object="solid 1px green" xml:lang="en" xml:id="id2">
<psi xml:id="id3"/>
<epsilon>
<omega title="solid 1px green" xml:lang="en-US">
<psi xml:id="id4">
<omicron attribute="_blank"/>
<xi xml:id="id5">
<upsilon attribute="content" xml:lang="no" xml:id="id6"/>
<phi attribute="attribute-value" xml:id="id7"/>
<alpha delete="attribute-value" xml:lang="en-US"/>
<phi src="this-is-att-value" xml:id="id8"/>
<rho xml:lang="en" xml:id="id9">
<green>This text must be green</green>
</rho>
</xi>
</psi>
</omega>
</epsilon>
</delta>
</nu>
</alpha>
</tree>
</test>
<test>
<xpath>//pi/tau[@xml:lang="en-US"][not(child::node())][following-sibling::*[@xml:lang="no-nb"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::sigma[contains(concat(@number,"$"),"789$")][not(following-sibling::*)]//tau[@xml:lang="nb"]/theta[@xml:lang="en"][not(child::node())][following-sibling::zeta[@xml:lang="nb"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//kappa[@xml:lang="nb"][@xml:id="id1"][following-sibling::lambda[@xml:id="id2"][not(child::node())][following-sibling::nu[contains(concat(@attribute,"$"),"content$")][@xml:lang="en-GB"][not(following-sibling::*)]//omicron[@xml:id="id3"][not(preceding-sibling::*)]/pi[@xml:id="id4"][not(child::node())][following-sibling::nu[@xml:lang="en-GB"][preceding-sibling::*[position() = 1]][not(preceding-sibling::nu)][not(child::node())][following-sibling::theta[@xml:lang="no-nb"][@xml:id="id5"][not(following-sibling::*)]//kappa[@xml:lang="en"][@xml:id="id6"][not(following-sibling::*)]//kappa[@xml:lang="en"][not(preceding-sibling::*)][not(following-sibling::*)]//eta[@token="attribute value"][@xml:id="id7"][not(preceding-sibling::*)]//chi[@xml:lang="nb"][@xml:id="id8"][not(preceding-sibling::*)]/*[@xml:id="id9"][not(preceding-sibling::*)][not(following-sibling::*)][position() = 1]][position() = 1]][position() = 1]][position() = 1]]]]]</xpath>
<tree>
<pi>
<tau xml:lang="en-US"/>
<any xml:lang="no-nb"/>
<sigma number="123456789">
<tau xml:lang="nb">
<theta xml:lang="en"/>
<zeta xml:lang="nb">
<kappa xml:lang="nb" xml:id="id1"/>
<lambda xml:id="id2"/>
<nu attribute="content" xml:lang="en-GB">
<omicron xml:id="id3">
<pi xml:id="id4"/>
<nu xml:lang="en-GB"/>
<theta xml:lang="no-nb" xml:id="id5">
<kappa xml:lang="en" xml:id="id6">
<kappa xml:lang="en">
<eta token="attribute value" xml:id="id7">
<chi xml:lang="nb" xml:id="id8">
<any xml:id="id9">
<green>This text must be green</green>
</any>
</chi>
</eta>
</kappa>
</kappa>
</theta>
</omicron>
</nu>
</zeta>
</tau>
</sigma>
</pi>
</tree>
</test>
<test>
<xpath>//chi[@xml:id="id1"]/sigma[contains(concat(@abort,"$"),"his.nodeValue$")]//beta[@xml:lang="en"][@xml:id="id2"][not(preceding-sibling::*)]/beta[@xml:lang="no"][@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::beta)][not(child::node())][following-sibling::phi[contains(concat(@delete,"$"),"ute$")][@xml:id="id4"][following-sibling::omega[@class][@xml:lang="en"][following-sibling::iota[starts-with(concat(@data,"-"),"this.nodeValue-")][preceding-sibling::*[position() = 3]][not(following-sibling::*)]//upsilon[@false="_blank"][@xml:id="id5"][position() = 1]]]]</xpath>
<tree>
<chi xml:id="id1">
<sigma abort="this.nodeValue">
<beta xml:lang="en" xml:id="id2">
<beta xml:lang="no" xml:id="id3"/>
<phi delete="attribute" xml:id="id4"/>
<omega class="this-is-att-value" xml:lang="en"/>
<iota data="this.nodeValue">
<upsilon false="_blank" xml:id="id5">
<green>This text must be green</green>
</upsilon>
</iota>
</beta>
</sigma>
</chi>
</tree>
</test>
<test>
<xpath>//xi[@string]//delta[@xml:lang="en"][@xml:id="id1"][not(preceding-sibling::*)][not(following-sibling::*)]//psi[starts-with(concat(@delete,"-"),"123456789-")][not(preceding-sibling::*)]/omicron[not(child::node())][following-sibling::zeta[@attrib][@xml:lang="en-US"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]//kappa[starts-with(concat(@class,"-"),"true-")][@xml:lang="en"][@xml:id="id2"][not(child::node())][following-sibling::alpha[@desciption][@xml:id="id3"]//lambda[@xml:lang="en-US"][not(following-sibling::*)]/mu[@xml:lang="nb"][@xml:id="id4"][not(preceding-sibling::*)][following-sibling::theta[not(following-sibling::*)]]][position() = 1]]</xpath>
<tree>
<xi string="false">
<delta xml:lang="en" xml:id="id1">
<psi delete="123456789">
<omicron/>
<zeta attrib="attribute" xml:lang="en-US">
<kappa class="true" xml:lang="en" xml:id="id2"/>
<alpha desciption="100%" xml:id="id3">
<lambda xml:lang="en-US">
<mu xml:lang="nb" xml:id="id4"/>
<theta>
<green>This text must be green</green>
</theta>
</lambda>
</alpha>
</zeta>
</psi>
</delta>
</xi>
</tree>
</test>
<test>
<xpath>//sigma[@xml:lang="en-US"][@xml:id="id1"]/kappa[@xml:id="id2"][not(preceding-sibling::*)]//sigma[@xml:id="id3"][not(preceding-sibling::*)][not(following-sibling::*)]/kappa[contains(@and,"blan")][not(following-sibling::*)]//upsilon[not(child::node())][following-sibling::chi[starts-with(concat(@abort,"-"),"true-")][@xml:id="id4"][preceding-sibling::*[position() = 1]][following-sibling::epsilon[starts-with(@src,"co")]/pi[not(preceding-sibling::*)][following-sibling::*[position()=2]][following-sibling::phi[@xml:lang="en"][@xml:id="id5"][preceding-sibling::*[position() = 1]][not(child::node())][following-sibling::rho[preceding-sibling::*[position() = 2]]/epsilon[@data="this.nodeValue"][@xml:lang="nb"][not(preceding-sibling::*)]//nu[@xml:lang="no"]//omega[@string="attribute value"][not(following-sibling::*)]/pi[not(preceding-sibling::*)][not(following-sibling::*)]//omicron[@xml:id="id6"][not(preceding-sibling::*)][not(following-sibling::*)]/delta[not(preceding-sibling::*)][not(child::node())][following-sibling::phi[preceding-sibling::*[position() = 1]][position() = 1]]][position() = 1]][position() = 1]]]</xpath>
<tree>
<sigma xml:lang="en-US" xml:id="id1">
<kappa xml:id="id2">
<sigma xml:id="id3">
<kappa and="_blank">
<upsilon/>
<chi abort="true" xml:id="id4"/>
<epsilon src="content">
<pi/>
<phi xml:lang="en" xml:id="id5"/>
<rho>
<epsilon data="this.nodeValue" xml:lang="nb">
<nu xml:lang="no">
<omega string="attribute value">
<pi>
<omicron xml:id="id6">
<delta/>
<phi>
<green>This text must be green</green>
</phi>
</omicron>
</pi>
</omega>
</nu>
</epsilon>
</rho>
</epsilon>
</kappa>
</sigma>
</kappa>
</sigma>
</tree>
</test>
<test>
<xpath>//epsilon[@xml:id="id1"]//upsilon[@xml:id="id2"][not(preceding-sibling::*)][following-sibling::*[position()=1]][following-sibling::tau[contains(concat(@src,"$"),"ibute value$")][@xml:lang="en"][@xml:id="id3"][preceding-sibling::*[position() = 1]][not(following-sibling::*)]/chi[not(following-sibling::*)]/gamma[not(preceding-sibling::*)]//phi[not(preceding-sibling::*)][not(child::node())][following-sibling::omega[preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::pi[preceding-sibling::*[position() = 2]][not(following-sibling::*)]//sigma[@att="attribute"][@xml:id="id4"][not(preceding-sibling::*)][not(child::node())][following-sibling::omega[@xml:id="id5"][preceding-sibling::*[position() = 1]][following-sibling::*[position()=1]][not(child::node())][following-sibling::lambda[contains(@true,"ttribute v")][@xml:id="id6"][not(following-sibling::*)]/rho//zeta[position() = 1]][position() = 1]][position() = 1]]]]</xpath>
<tree>
<epsilon xml:id="id1">
<upsi