Тема: XML и XSL преобразования. Синтаксис XSL.
Задача: преобразовать с помощью XSL лотусовый XML в собственный формат XML в рамках XHTML.
XML:
<корень>
<узел1>
<узел2>Вася</узел2>
<узел3>Петя</узел3>
</узел1>
<registry country="Россия" city="Москва" />
</корень>
XSL:
<xsl:template match="/">
....
</xsl:template>
Шаблон для корневого узла.
XPATH
Вместо "/" может быть:
/корень/узел1/ - абсолютный путь к элементу узел1, содержащему узлы 2 и 3
/корень/узел1/узел2/ абсолютный путь к "Вася"
//узел1 - если не знаешь пути, то адресация по имени
registry/@country - обращение к атрибуту country, элемента registry
<xsl:value-of select="XPATH"/> - вывести содержимое узла, указанного в параметре select
select="." выборка текущего элемента.
<xsl:sort select="поле1"/> - сортировка по полю "поле1"
<xsl:for-each select="авторы"> - перебирает поля "авторы"
position() - функция возвращает порядковый номер элемента. Аналогично {@id} .
Подгрузка шаблона в другой шаблон: <xsl:import href="имя.xsl"/>
Вызов шаблона: <xsl:call-template name="имя элеменгта подгружаемого шаблона" />