Примеры путей расположения
Следующий пример иллюстрирует применение путей расположения.
Путь |
Описание |
---|---|
child::node() |
Выберите всех потомков узла контекста независимо от их типа узла. |
attribute::name |
Выберите атрибут name узла контекста. |
attribute::* |
Выберите все атрибуты узла контекста. |
descendant::para |
Выберите потомков элемента <para> узла контекста. |
ancestor::div |
Выберите всех предков элемента <div> узла контекста. |
ancestor-or-self::div |
Выберите предков элемента <div> узла контекста и, если узлом контекста является элемент <div>, выберите также узел контекста. |
descendant-or-self::para |
Выберите потомков элемента <para> узла контекста и, если узлом контекста является элемент <para>, выберите также узел контекста. |
self::para |
Выберите узел контекста, если им является элемент <para>, в противном случае не выбирайте ничего. |
child::chapter/descendant::para |
Выберите потомков элемента <para>, являющихся дочерними элементами по отношению к элементу <chapter> узла контекста. |
child::*/child::para |
Выберите все элементы, являющиеся внуками элемента <para> узла контекста. |
/ |
Выберите корень документа (он всегда является родителем элемента документа). |
/descendant::para |
Выберите все элементы <para> в документе, в котором содержится узел контекста. |
/descendant::olist/child::item |
Выберите все элементы <item>, для которых родительским является элемент <olist> и которые расположены в том же документе, что и узел контекста. |
child::para[position()=1] |
Выберите первого потомка элемента <para> узла контекста. |
child::para[position()=last()] |
Выберите последнего потомка элемента <para> узла контекста. |
child::para[position()=last()-1] |
Выберите предпоследнего потомка элемента <para> узла контекста. |
child::para[position()>1] |
Выберите всех потомков элемента <para> узла контекста, за исключением первого элемента, являющегося дочерним по отношению к элементу <para> узла контекста. |
/descendant::figure[position()=42] |
Выберите сорок второй элемент <figure> в документе. |
/child::doc/child::chapter[position()=5]/child::section[position()=2] |
Выберите второй элемент <section>, содержащийся в пятом элементе <chapter> элемента документа <doc>. |
child::para[attribute::type="warning"] |
Выберите всех потомков элемента <para> узла контекста, содержащих атрибут type со значением "warning". |
child::para[attribute::type="warning"][position()=5] |
Выберите пятого потомка элемента <para> узла контекста, содержащего атрибут type со значением "warning". |
child::para[position()=5][attribute::type="warning"] |
Выберите пятого потомка элемента <para> узла контекста, если этот потомок содержит атрибут type со значением "warning". |
child::chapter[child::title="Introduction"] |
Выберите потомков элемента <chapter> узла контекста, которые содержат одного или более потомков элемента <title> со строковым значением равным Introduction. |
child::chapter[child::title] |
Выберите потомков элемента <chapter> узла контекста, которые содержат одного потомка или более элемента <title>. |
child::*[self::chapter or self::appendix] |
Выберите элемент <chapter> и потомков элемента <appendix> узла контекста. |
child::*[self::chapter or self::appendix][position()=last()] |
Выберите последний элемент <chapter> либо потомка элемента <appendix> узла контекста. |