Задает элемент документа в XSLT-файле, который содержит все остальные XSLT-элементы. Этот элемент является синонимом элемента <xsl:transform>. <xsl:stylesheet>
Таблица стилей XSLT должна как минимум объявлять пространство имен для XSL-преобразования. Версии XSLT должны соответствовать версии файла XML, что определяется требованиями внешней системы, принимающей данные. Обычно используется версия 1.0, но возможно использование и более свежих версий 2.0 или 3.0. <xsl:stylesheet version="1.0" |
Определяет повторно используемый шаблон для формирования желаемого вывода для узлов определенного типа в определенном контексте. <xsl:template
|
Удаляет состоящие из одних только пробелов текстовые узлы, которые могут находиться в элементах, указанных с помощью атрибутов elements. <xsl:strip-space elements = tokens /> |
Задает параметры, используемые при сериализации результирующих деревьев. <xsl:output Атрибуты: •method — указывает общий метод, используемый для вывода дерева результатов. Если префикс отсутствует, атрибут задает метод, указанный в документе, который должен иметь одно из значений «xml», «html», «text» или квалифицированное имя (QName), не представляющее собой NCName. Если префикс присутствует, он расширяется и служит указанием на метод вывода. •version — задает версию 1.0 по отношению к методу вывода «xml»; это значение появляется в XML-декларации вывода как <?xml version="1.0"?>. •encoding — задает предпочитаемую кодировку символов, которую должен использовать синтаксический анализатор для кодировки последовательностей символов в виде последовательностей байтов. Значение атрибута обрабатывается без учета регистра; оно должно содержать только печатаемые символы ASCII и быть зарегистрированным набором символов или начинаться с x- •omit-xml-declaration — указывает, должен ли обработчик XSLT выводить XML-декларацию; значение должно быть yes или no. •standalone — указывает, должен ли обработчик XSLT выводить объявление автономности документа; значение должно быть yes или no. •doctype-public — задает общий идентификатор для использования в определении DTD. •doctype-system — задает системный идентификатор для использования в определении DTD. •cdata-section-elements — задает список квалифицированных имен Полные имена (XSLT) элементов, дочерние текстовые узлы которых нужно выводить с помощью разделов CDATA. •indent — задает дополнительные пробелы, которые будут добавляться при выводе дерева результатов; значение должно быть yes или no. •media-type — задает тип носителя (MIME-тип содержимого) данных, получающийся в результате вывода дерева результатов |
Cоздает копию текущего узла вне зависимости от его типа. Вместе с текущим узлом в выходящее дерево копируются только узлы пространств имен, ассоциированные с ним. Дочерние узлы и узлы атрибутов в выходящий документ не копируются. <xsl:copy Атрибуты: •use-attribute-sets — необязательный атрибут, задает именованные наборы атрибутов. |
Предписывает XSLT-процессору найти и применить соответствующий шаблон в зависимости от типа и контекста каждого выбранного узла. <xsl:apply-templates Атрибуты: •select — может использоваться для обработки узлов, выбранных с помощью выражения, вместо обработки всех узлов. Значением атрибута select является выражение Выражения (XSLT), результатом вычисления которого должен быть набор узлов. Выбранный набор узлов обрабатывается по порядку появления в документе, если не задан другой порядок сортировки. •mode — атрибут mode позволяет обрабатывать элемент согласно его имени Полные имена (XSLT) несколько раз и каждый раз получать другой результат. Если элемент <xsl:template> не имеет атрибута match, он не может иметь атрибута mode. Если элемент <xsl:apply-templates> имеет атрибут mode, он применяется только к правилам шаблона из элементов <xsl:template>, имеющих атрибут mode с тем же значением. Если у элемента <xsl:apply-templates> нет атрибута mode, он применяется только к правилам шаблона из элементов <xsl:template>, не имеющих атрибута mode. |
Создает узел атрибута и присоединяет его к элементу вывода. <xsl:attribute Атрибуты: •name (обязательный) — имя создаваемого атрибута. Если это значение является полным именем (QName), узел атрибута создается в пространстве имен, привязанном в данный момент к префиксу, если это пространство не будет переопределено атрибутом namespace. Значение атрибута name интерпретируется как шаблон значения атрибута (выражения в фигурных скобках оцениваются и преобразуются в строки, как в элементе <xsl:value-of>). Благодаря этому имя атрибута можно вычислить или получить из исходного XML-документа. •namespace — URI пространства имен для создаваемого узла. Если атрибут name содержит имя QName, то указанный там префикс будет привязан к пространству имен, заданному атрибутом namespace. В результате при сериализации могут возникнуть дополнительные объявления пространств имен. Это значение интерпретируется как шаблон значения атрибута. |
Проводит проверку по нескольким условиям совместно с элементами <xsl:otherwise> и <xsl:when>. Дочерние элементы < xsl:otherwise>, < xsl:when>. |
Возвращает первую строку аргумента, в которой символы из второй строки аргумента заменены на символы, находящиеся в той же позиции в третьей строке аргумента. string translate(string, string, string) — функция обеспечивает сопоставление символов в первом аргументе. Второй и третий аргументы описывают схему сопоставления. Пример: при вызове функции translate("bar","abc","ABC") возвращается значение "BAr". |
Создает выходной элемент с указанным именем. <xsl:element Атрибуты: •name (обязательный) — имя создаваемого элемента. Если это значение является именем Полные имена (XSLT), то узел элемента создается в пространстве имен, которое в данный момент связано с этим префиксом, если иное не определено атрибутом namespace. Значение атрибута name интерпретируется как шаблон значения атрибута, иными словами, выражения в фигурных скобках вычисляются и преобразуются в строки, как в элементе <xsl:value-of>. Это позволяет вычислить или получить из исходного кода XML имя элемента. •namespace — URI пространства имен созданного элемента. Если атрибут name содержит имя QName, то указанный там префикс будет привязан к пространству имен, заданному атрибутом namespace. В этом случае при сериализации, возможно, потребуется объявлять дополнтельные пространства имен. Значение namespace интерпретируется как шаблон значения атрибута. •use-attribute-sets — разделенный пробелами список наборов атрибутов, заданный как Полные имена (XSLT). Указание этого атрибута объявляет каждый атрибут в каждом перечисленном наборе атрибутов. |
Вставляет значение выбранного узла в виде текста. <xsl:value-of
Атрибуты: •select (обязательный) — выражение. Выражение (XSLT) вычисляется в соответствии с текущим контекстом. Результаты преобразуются в строку, как если бы вызывалась функция string(). Набор узлов преобразуется в строку вставкой строкового значения первого узла множества. •disable-output-escaping — значение по умолчанию "no". Если указано значение "yes", то текстовый узел, сформированный элементом <xsl:value-of>, будет выведен без escape-символов. Например, выражение <xsl:value-of disable-output-escaping="yes" select="string('<')"/> сформирует единственный символ "<". |