Коротко об XSL
Абревиатура XSL происходит от eXtensible Stylesheet Language - язык форматирования таблиц стилей (XML данных). Как понятно из заголовка eXtensible Stylesheet Language (XSL) используется для форматирования XML данных. По определению W3C XSL состоит из двух частей:
При помощи XSLT мы можем отобрать нужные нам данные из XML файла, и оформить их в виде для предоставления пользователю. Например, в нашем случае мы преобразовали XML данные в виде SQL запроса. Классическое применение XSL - это, как правило форматирование данных в виде HTML страниц или более редкое представление в виде RTF файлов.
XSL файл описывает шаблон (template), согласно которому будет совершаться преобразование XML данных. Возращаясь к xsl-шаблонам, в XSLT можно выделить следующие элементы (директивы):
| XSL-директивы описание | |
| xsl:apply-templates | Директива, указывающая на применение соответствующих шаблонов аттрибуту select="имя шаблона" |
| xsl:attribute | создает дерево аттрибутов и добавляет его в выходной элемент, пареметр name="имя аттрибута", namespace - URI на пространство имен (преффикс пространства имен) |
| xsl:call-template | вызывает шаблон, аттрибуту name=" URI на шаблон" |
| xsl:choose xsl:when xsl:otherwise | осуществление выбора по условию xsl:when expr="вычисление выражения на script ", language="language-name" test= "вычисляемое выражение" |
| xsl:comment | генерирует комментарий в выходной документ |
| xsl:copy xsl:copy-of | копирует текущей узел в выходной источник или вставляет фрагмент документа в узел, где аттрибут select="имя узла источника" |
| xsl:element | создает выходной элемент по имени, аттрибут name="имя элемента", namespace="uri сслылка на пространство имен" |
| xsl:for-each | повторно применяет шаблон ко всем узлам списка узлов, аттрибут select задает список узлов |
| xsl:if | проверка условия, задается аттрибутом test в виде выражения |
| xsl:include | включает внешний шаблон, аттрибут href = "URI reference" |
| xsl:output | специфицирует выходной результат, аттрибут method может иметь значения "xml", "html" или "text" |
| xsl:param | специфицирует значение параметров, аттрибут name="имя параметра", select = "значание" |
| xsl:processing-instruction | создает инструкцию обработки, аттрибут name="имя процесс инструкции" |
| xsl:sort | сортирует множество узлов, аттрибуты select = "имя узла", data-type = тип данных {"text" | "number" | Qname}, order = направление сортировки {"ascending" | "descending"} |
| xsl:stylesheet | определяет документ xsl-шаблонов, является корневым элементом для XSLT |
| xsl:template | определяет xsl-шаблон, аттрибут name= " URI преффикс на имя шиблона", match= "указание на узел, к которому применяется шаблон" |
| xsl:text | генерирует текст в выходной поток, аттрибут disable-output-escaping = "yes" или "no", указывает на возможность генерации символов ESC |
| xsl:value-of | вставляет значение выбранного узла как текст, аттрибут select= "указатель на узел" из которого берут значение |
| xsl:variable | специфицирует значение границ переменных, аттрибут name = "имя переменной", select = "вычисление значения переменной" |
| xsl:with-param | применяет параметр к шаблону, аттрибут name ="имя параметра", select = выражение для вычисления текущего контекста, значениие по умолчанию "." |