Dear list, I have this sample: \startbuffer[demo] <xml> <div class="section level3"> <h3>One</h3> <p>Standard paragraph</p> <blockquote> <p>Quoted text</p> </blockquote> </div> <div class="section level3"> <h3>Two</h3> <blockquote> <p>Direct quote</p> </blockquote> </div> </xml> \stopbuffer \startxmlsetups xml:initialize \xmlsetsetup{#1} {p|blockquote} {xml:*} \xmlsetsetup{#1} {(div|section)[contains(@class,'level3')]/h3/../!p/../h3} {xml:section} \stopxmlsetups \xmlregistersetup{xml:initialize} \startxmlsetups xml:p \startpar\xmlflush{#1}\stoppar \stopxmlsetups \startxmlsetups xml:blockquote \startblockquote\xmlflush{#1}\stopblockquote \stopxmlsetups \startxmlsetups xml:section \section{\xmlflush{#1}} \stopxmlsetups \starttext \xmlprocessbuffer{main}{demo}{} \stoptext I need an lpath to select the h3 node above, but only the one with "h3 + blockquote" as a CSS selector (which could be added the lpath "../h3" after). It would be "<h3>Two</h3>" and not "<h3>Two</h3>" in this sample. Excuse my ignorance, but which is the way to achieve this? Many thanks for your help, Pablo