Технология XSLT
Шрифт:
Таблица 6.4. Операторы сравнения
Оператор | Значение |
---|---|
= | Равно |
!= | Не равно |
< | Меньше |
> | Больше |
<= | Меньше
|
>= | Больше или равно (не меньше) |
XPath-выражения чаще всего используются в значениях атрибутов, символ "
Результатом обработки элемента
будет строка "
Сравнение всегда требует наличия двух операндов числового типа. Если операнды не являются числами, они будут соответствующим образом преобразованы.
В XPath вполне корректным будет выражение вида
Пример:
Неравенствам в XPath соответствует продукция
Операции "равно" и "не равно" записываются при помощи продукции
Операции
Три основные операции с множествами узлов, которые поддерживает язык XPath, — это фильтрация множества, выборка с использованием путей и объединение.
Фильтрация
Множества узлов, которые получаются в результате вычисления выражений, можно фильтровать — то есть выбирать из них узлы, удовлетворяющие заданным свойствам подобно тому, как это делалось предикатами в шагах выборки.
В выражениях множества узлов могут также фильтроваться одним или несколькими предикатами. Узел остается в фильтруемом множестве, только если он удовлетворяет всем предикатам поочередно.
Предположим, что нам нужно оставить в фильтруемом множестве узлов, которое присвоено переменной
Можно использовать и более сложные конструкции, например, фильтровать объединение двух множеств — присвоенного переменной
Выражение, в котором производится фильтрация узлов, отвечает EBNF-правилу
Если раскрыть рекурсию, которая имеется в этом правиле, его можно переписать в более простом виде:
Выражение
Использование в выражениях путей выборки
Помимо того, что выражение само по себе может быть путем выборки, относительные пути можно комбинировать с другими выражениями. Например, можно выбрать все дочерние элементы узлов множества, содержащегося в переменной
Для разделения шагов выборки в фильтрующих выражениях можно использовать операторы "
Здесь
Выражения, которые используют пути выборки, соответствуют продукции