Книга: XSLT
Создание образцов выбора
Создание образцов выбора
Как вы могли ожидать, исходя из того, что "child::MASS
" можно представить в виде "MASS
" и применения шаблонов, таких как "/
", "/PLANETS
" и т.д., вплотную познакомиться с созданием образцов выбора не так-то просто — этому посвящена вся глава 4.
Образцы выбора (match pattern) являются подмножеством полного языка XPath, их можно использовать в элементах <xsl:template
>, <xsl:key>
и <xsl:number>
. В частности, в образец можно установить атрибут match у <xsl:template>
и <xsl:key>
, и атрибуты count
и from
элемента <xsl:number>
. В следующем списке приведен ряд примеров образцов выбора, много других примеров будет показано в главе 4 при подробном обсуждении использования XPath для выбора узлов и атрибутов:
• "/
" выбирает корневой узел;
• "*
" выбирает элементы узлов (но не всех узлов, как зачастую ошибочно полагают);
• "PLANET
" выбирает элементы <PLANET>
;
• "PLANET/MASS
" выбирает все элементы <MASS>
, дочерние для элемента <PLANET>
;
• "//PLANET
" выбирает все элементы <PLANET>
, производные от корневого узла;
• ".
" выбирает текущий узел (технически это не образец выбора, а выражение XPath, как мы увидим в главе 7).
Образцы можно также использовать в атрибуте select
элементов <xsl:apply-templates>
, <xsl:value-of>
, <xsl:for-each>
, <xsl:copy-of>
и <xsl:sort>
; фактически атрибут select
этих элементов может содержать полные выражения XPath, а не только образцы выбора. Атрибут select
элемента <xsl:value-of>
определяет дочерний узел, значение которого нужно получить:
<xsl:template match="PLANET">
<TR>
<TD><xsl:value-of select="NAME"/></TD>
<TD><xsl:value-of select="MASS"/></TD>
<TD><xsl:value-of select="RADIUS"/></TD>
<TD><xsl:value-of select="DAY"/></TD>
</TR>
</xsl:template>
Теперь пора воспользоваться атрибутом select
элемента <xsl:apply-templates>
, поскольку это даст нам возможность указать, какой шаблон использовать и когда.
- Создание шаблона
- Обработка дочерних узлов
- Доступ к значениям узлов
- Создание образцов выбора
- Выбор применяемого шаблона
- Чтение значений атрибутов
- Элемент
- Отключение вывода эскейп-последовательностей
- Написание значений атрибутов
- Шаблоны значений атрибутов
- Обработка символов-разделителей
- Элементы и
- Автоматическое выравнивание
- Правила по умолчанию в шаблоне
- Удаление содержимого
- Разрешение конфликтов шаблонов
- Элемент
- Элемент
- Элемент
- Глава 3 Создание и применение шаблонов
- Глава 4 Создание образцов выбора
- 19.8.2. Методы выбора
- Создание файлов с блокировкой
- Создание свободно позиционируемых элементов
- 12. Лекция: Создание приложений с графическим интерфейсом пользователя.
- Создание объектов Collection
- 7.4.2.4. Создание своего первого LiveCD
- 4.2. Создание трехмерной модели и построение горизонтальной проекции детали
- 7.4.2. Создание собственного LiveCD
- Создание пользователя и группы на рабочей станции
- Создание корня документа: