следующим образом: xmlns:xsl='http://www.w3.org/1999/XSL/Transform'

Пример

Приведем пример простого преобразования, в котором объявлено пространство имен XSLT.

<xsl:stylesheet

 version='1.0'

 xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

 <xsl:template match='/'>

  <xsl:element name='root'/>

 </xsl:template>

</xsl:stylesheet>

В некоторых случаях исходный текст намного упрощается, если пространство имен XSLT объявляется по умолчанию:

<stylesheet

 version='1.0'

 xmlns='http://www.w3.org/1999/XSL/Transform'>

 <template match='/'>

  <element name='root'/>

 </template>

</stylesheet>

Кроме этого, пространство имен по умолчанию можно снова обнулить:

<stylesheet

 version='1.0'

 xmlns='http://www.w3.org/1999/XSL/Transform'>

 <template match='root'>

  <root xmlns=''/>

 </template>

</stylesheet>

В последнем случае элемент root будет принадлежать нулевому пространству имен. Результат всех трех преобразований одинаков:

<root/>

Элементы XSLT могут содержать атрибуты, принадлежащие другим, но обязательно ненулевым, пространствам имен. Такие атрибуты могут содержать дополнительную информацию, но поскольку они не относятся к XSLT, обрабатываться процессором в общем случае они не будут.

Пример

Если мы определим в преобразовании элемент вида

<xsl:template match='a' xsldoc:text='Processes all a elements'

 xmlns:xsldoc='http://www.a.com/XSL/doc'>

 ...

</xsl:template>

то в общем случае атрибут xsldoc:text будет проигнорирован. Однако процессор, которому знакомо пространство имен с URI http://www.a.com/XSL/doc сможет понять, что этот атрибут применен для документирования преобразования и будет использовать его в своих целях.

Корневые элементы преобразования

За исключением случаев упрощенных преобразований, корневым элементом XSLT-документа всегда является элемент xsl:stylesheet или его синоним xsl:transform. Эти элементы полностью идентичны и различаются только именами, поэтому мы будем описывать семантику и пользоваться только элементом xsl:stylesheet.

Элементы xsl:stylesheet и xsl:transform

<xsl:stylesheet

 id='идентификатор'

 extension-element-prefixes='префиксы'

 exclude-result-prefixes='префиксы'

 version='число'>

 <!--

  Содержимое: несколько элементов xsl:import, элементы верхнего уровня

 -->

</xsl:stylesheet>

<xsl:transform id='идентификатор'

 extension-element-prefixes='префиксы'

 exclude-result-prefixes='префиксы'

 version='число'>

 <!--

  Содержимое: несколько элементов xsl:import, элементы верхнего уровня

 -->

</xsl:transform>

Элемент xsl:stylesheet имеет обязательный атрибут version, в котором указывается версия языка, использованная при создании этого преобразования. Текущей версией языка является версия 1.0, поэтому все преобразования, которые мы будем приводить в качестве примеров, будут начинаться следующим тегом:

<xsl:stylesheet version='1.0' ... >

Необязательный атрибут id может содержать уникальный идентификатор данного преобразования. Этот атрибут используется в тех случаях, когда преобразование включено в преобразуемый документ для его идентификации внутри этого документа.

Пример

Если преобразование, включенное в преобразуемый документ, будет иметь вид

...

<xsl:stylesheet

 version='1.0'

 id='trans'

 xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

 ...

</xsl:stylesheet>

...

Вы читаете Технология XSLT
Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату