Книга: Технология XSLT

Использование множеств узлов в функции key

Использование множеств узлов в функции key

Функция key принимает на вход два аргумента: первым аргументом является строка, задающая имя ключа, в то время как вторым аргументом может быть объект любого типа. В том случае, если аргумент key-value в функции key(key-name, key-value) является множеством узлов, функция key возвратит все узлы, имеющие ключ key-name со значением, равным хотя бы одному из строковых значений узла множества key-value.

Пример

Предположим, что источники объектов будут сгруппированы следующим образом:

<sources>
 <source name="a"/>
 <source name="c"/>
</source>

Для того чтобы вычислить множество элементов item, принадлежащих любому из источников данной группы, достаточно будет воспользоваться выражением вида

key('src', sources/source/@name)

Множество узлов, выбираемое путем sources/source/@name, будет содержать атрибуты name элементов source. Их строковые значения будут равны а и с, значит, наше выражение возвратит множество элементов item, значение атрибута source которых равно либо а либо с.

Оглавление книги


Генерация: 1.317. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз