XSLT | страница 57
>
Mercury>
Venus>
Earth>
>НТМL>
АТРИБУТ DISABLE-OUTPUT-ESCAPING
Атрибут disable-output-escaping элемента
Предположим, нам нужно осуществить нечто более сложное — например, преобразовать данные из >planets.xml
в HTML-таблицу в новом файле >planets.html
(рис. 2.1), как мы видели в главе 1. Теперь это можно сделать при помощи >
.
Рис. 2.1. Planets.html в Internet Explorer
Здесь важно учесть один момент. В >planets.xml
формально не задан порядок элементов >
, >
, >
и >
, однако важно, чтобы эти элементы обрабатывались в определенном порядке в соответствии с заголовками таблицы. Поэтому я буду использовать элементы >
в том порядке, в котором они требуются в таблице HTML.
Таким образом, чтобы создать HTML-таблицу, изображенную на рис. 2.1, я сначала ищу элемент >
и затем заменяю его на HTML для создания самой HTML-таблицы. Элемент >
— дочерний элемент корневого узла, и поскольку на корневой узел можно сослаться через «/», на элемент >
можно сослаться непосредственно через ">/PLANETS
", без необходимости предварительно применять шаблон для корневого узла. Это пример выражения XPath, большое число подобных мы также увидим в главе 4.
Ниже приведен пример того, как я начал создавать HTML-таблицу путем выбора элемента >
непосредственно как ">/PLANETS
" — заметьте, что для применения шаблонов к любым дочерним узлам >
я использовал >
:
>
>
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
>
>
>
>
> The Planets Table
>
>
>
>
> The Planets Table
>
>
>
>
Name >
Mass >
Radius >
Day >
>
>
>
>
>
> .
> .
> .
Каждый дочерний узел >
имеет дочерние узлы >
, >
, >
и >
, и я хочу обрабатывать их именно в таком порядке — для того чтобы они добавлялись в HTML-таблицу в соответствии с заголовками таблицы. Для задания порядка их обработки я поместил элементы >
(листинг 2.5).
>
>
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
>