Книга: Технология XSLT
Функция key в паттернах
Разделы на этой странице:
Функция key в паттернах
Разбирая синтаксические правила построения паттернов, мы встретились с особой формой паттерна, в котором могла использоваться функция key
. Приведем еще раз эту продукцию:
[PT3] IdKeyPattern ::= 'id' '(' Literal ')'
| 'key' '(' Literal ',' Literal ')'
Функция key(key-name, key-value)
в паттерне будет соответствовать узлам, значение ключа key-name
которых равняется или принадлежит объекту key-value
. Это позволяет использовать возможности ключей при проверке узлов на соответствие образцу.
Пример
Предположим, что нам нужно по-особому обработать объекты, принадлежащие источнику а
. Для этого мы можем создать шаблон следующего вида.
Листинг 8.30. Шаблон, использующий функцию key в паттерне
<xsl:template match="key('src', 'a')">
<!-- Содержимое шаблона -->
</xsl:template>
Этот шаблон будет применяться к любым узлам, имеющим ключ src
со значением а
.
- Функция key
- Элемент xsl:key
- 2.1.3. Функция getopt_long()
- Группировка по встроенным функциям и UDF
- 19.1.1. Функция jQuery()
- Функция strcmp( )
- Управление функциями узла
- Функция программного обеспечения
- 3.2. Ключи типа key_t и функция ftok
- 9.10. Функция sctp_recvmsg
- Функция document
- Функция generate-id