Книга: XSLT
Шаги расположения XPath, часть 2: условия узлов
Шаги расположения XPath, часть 2: условия узлов
При создании образцов в качестве условий узлов (node test) можно использовать имена узлов или символ подстановки * для выбора любого узла элемента. Например, выражение child::*/child::NAME
выбирает все элементы <NAME>
, являющиеся правнуками контекстного узла. В XPath кроме имен и символа подстановки можно также применять, как и в образцах выбора, следующие условия узлов:
• условие узла comment()
выбирает узлы комментария;
• условие узла node()
выбирает узел любого типа;
• условие узла processing-instruction()
выбирает узел инструкции обработки. В скобках можно указать название выбираемой инструкции обработки;
• условие узла text()
выбирает текстовый узел
Например, в листинге 7.2 таблица стилей находит в документе все комментарии при помощи условия узла comment()
и создает для каждого комментария новый, <!--Warning:comment found!-->
(Внимание! Найден комментарий!).
Листинг 7.2. Выбор комментариев
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml"/>
<xsl:template match="/">
<xsl:for-each select="descendant::comment()">
<xsl:comment>Warning: comment found!</xsl:comment>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
При применении этой таблицы стилей к planets.xml
получается следующий документ:
<?xml version="1.0" encoding="UTF-8"?>
<!--Warning: comment found!-->
<!--Warning: comment found!-->
<!--Warning: comment found!-->
- Изучаем XPath
- Типы данных XPath
- Создание путей расположения XPath
- Шаги расположения XPath, часть 1: оси
- Шаги расположения XPath, часть 2: условия узлов
- Шаги расположения XPath, часть 3: предикаты
- Применение осей XPath
- Применение оси ancestor
- Применение оси ancestor-or-self
- Применение оси descendant
- Применение оси descendant-or-self
- Применение оси following
- Применение оси following-sibling
- Применение оси namespace
- Применение оси parent
- Применение оси preceding
- Применение оси preceding-sibling
- Применение оси self
- Примеры путей расположения
- Сокращенный синтаксис XPath
- Проверка выражений XPath
- XPath 2.0
- Шаги расположения XPath, часть 1: оси
- Глава 7 Работа с XPath
- xpath
- Шаги расположения XPath, часть 3: предикаты
- Проверка выражений XPath
- Создание путей расположения XPath
- Применение осей XPath
- Операции с множествами узлов
- 11.2. Технология принятия решения в условиях чрезвычайной ситуации
- Датчик расположения и другие датчики
- Удаление шаблонов узлов STP