Speak.Me Учить иностранные слова

XSL: понятие, корневой элемент xsl:stylesheet и элементы верхнего уровня

XSLT (eXtensible Stylesheet Language Transformations) — язык преобразования XML-документов. XSLT-инструкции оформляются в виде отдельного xslt-файла, который затем используется XSLT-процессором для трансформации xml-документа — исходного дерева в конечное дерево. Конечным деревом может быть другой xml-документ, html-документ или просто текст. В результате XSLT-преобразования конечный документ может иметь совсем другую структуру.

Сам по себе XSL-файл является правильным xml-документом. Поэтому он должен соответствовать всем требования, предъявляемым к xml-документам. Во-первых, как и все xml-документы, он должен начинаться со строки:

где:

  • version – указание на версию xml (обычно 1.0),
  • encoding – кодировка документа, например, utf-8.

Стиль (xsl:stylesheet)

Корневым элементом для XSL-документа является элемент xsl:stylesheet или его устаревший аналог xsl:transform, внутри которого и содержится все описание стиля (правил трансформации), т.е. все остальные элементы — инструкции и шаблоны.

Синтаксис:

или

Здесь и далее обязательные атрибуты будут выделены жирным.

Атрибуты:

  • version– обязательный атрибут, указывает версию XSL, как правило это 1.0
  • xmlns:xsl – обязательный атрибут, ссылка на URI пространства имен, как правило это http://www.w3.org/1999/XSL/Transform
  • id — необязательный атрибут, может содержать уникальный идентификатор. Этот атрибут используется, когда элемент xsl:stylesheet содержится не в отдельном документе, а является частью исходного документа. В этом случае атрибут позволяет идентифицировать стиль внутри исходного документа
  • extension-element-prefixes — необязательный атрибут, содержит перечень префиксов пространств имен расширений, используемых в преобразовании. Расширения должны поддерживаться XSLT-процессором
  • exclude-result-prefixes — необязательный атрибут, содержит перечень префиксов пространств имен, которые следует исключать из конечного документа

Элементы верхнего уровня

Непосредственные потомки (children) элемента xsl:stylesheet называются элементами верхнего уровня. К ним в частности относятся:

  • xsl:import
  • xsl:include
  • xsl:strip-space
  • xsl:preserve-space
  • xsl:output
  • xsl:key
  • xsl:decimal-format
  • xsl:namespace-alias
  • xsl:attribute-set
  • xsl:variable
  • xsl:param
  • xsl:template

Порядок появления этих элементов не имеет значения (за исключением, xsl:import и обработки ошибки). Стиль (элемент xsl:stylesheet) может не содержать какой-либо из этих элементов, либо содержать сразу несколько его экземпляров, а так же содержать любой другой элемент, введенный пользователем.