Алексей Н Валиков - Технология XSLT
Технология XSLTКраткое содержание книги "Технология XSLT"
Книга посвящена разработке приложений для преобразования XML-документов с использованием XSLT — расширяемого языка стилей для преобразований. Обсуждается применение языков XSLT и XPath в решении практических задач: выводу документов в формате HTML, использованию различных кодировок для интернационализации и, в частности, русификации приложений, вопросам эффективности существующих подходов для решения проблем преобразования. Для иллюстрации материала используется большое количество примеров.
Для начинающих и профессиональных программистов
Читаем онлайн "Технология XSLT". [Страница - 197]
надо включить в создаваемый элемент
<xsl:fallback> <!-- Содержимое: шаблон --> </xsl:fallback>
Инструкция. Выполняется при невозможности выполнить родительскую инструкцию
<xsl:for-each select="выражение"> <!-- Содержимое: несколько элементов xsl:sort, шаблон --> </xsl:for-each>
Инструкция. Выполняет содержащийся шаблон для каждого из узлов множества. • select — содержит выражение, возвращающее перебираемое множество узлов
<xsl:if test="выражение" > <!-- Содержимое: шаблон --> </xsl:if>
Инструкция. Выполняет или не выполняет дочерний шаблон в зависимости от заданного условия. • test — содержит выражение проверяемого условия
<xsl:import href="URI"/>
Элемент верхнего уровня. Импортирует указанный шаблон. • href — URI импортируемого шаблона
<xsl:include href="URI"/>
Элемент верхнего уровня. Включает указанный шаблон. • href — URI включаемого шаблона
<xsl:key name="имя" match="паттерн" use="выражение"/ >
Элемент верхнего уровня. Определяет именованный ключ. • name — имя ключа; • match — выбирает узлы, для которых будут определяться значения ключа; • use — выражение, значение которого будет значением ключа для каждого из узлов
<xsl:message terminate="yes" | "no"> <!-- Содержимое: шаблон --> </xsl:message>
Инструкция. Указывает процессору на то, что нужно вывести сообщение. • terminate — определяет, следует ли прервать обработку после вывода сообщения или нет
<xsl:namespace-alias stylesheet-prefix="префикс" | "#default" result-prefix="префикс" | "#default"/>
Элемент верхнего уровня. Определяет псевдоним для префикса. • stylesheet-prefix — префикс в преобразовании; • result-prefix — префикс в результирующем документе
<xsl:number level="single" | "multiple" | "any" count="паттерн" from="паттерн" value="выражение" format="{строка}" lang="{токен}" letter-value={ "alphabetic" | "traditional" } grouping-separator="{символ}" grouping-size="{число}"/>
Инструкция. Выводит номер в соответствии с заданными критериями. • level — на каких уровнях нумеровать узлы; • count — какие узлы учитывать при нумерации; • from — в какой части документа нумеровать узлы; • value — выражение, вычисляющее номер. • format — форматирующая строка номера; • lang — язык для алфавитных последовательностей; • letter-value — алфавитная или традиционная нумерация; • grouping-separator — разделяющий символ групп цифр номера; • grouping-size — количество цифр в группах цифр номера
<xsl:otherwise> <!-- Содержимое: шаблон --> </xsl:otherwise>
Субэлемент элемента xsl:choose. Выполняется в элементе xsl:choose, если ни одно из других условий не верно.
<xsl:output method="xml" | "html" | "text" | " префикс:имя" version="токен" encodings="строка" omit-xml-declaration="yes" | "no" standalone="yes" | "no" doctype-public="строка" doctype-system="строка" cdata-section-elements="имена" indent="yes" | "no" media-type="строка"/>
Элемент верхнего уровня. Определяет параметры вывода результирующего документа. • method — метод сериализации; • version — версия языка сериализации; • encoding — кодировка выходящего документа; • omit-xml-declaration — опустить декларацию XML; • standalone — самостоятельный или несамостоятельный документ; • doctype-public — публичный идентификатор типа документа; • doctype-system — системный идентификатор типа документа; • cdata-section-elements — элементы, содержимое которых следует выводить как секции CDATA; • indent — индентация (вывод отступов); • media-type — медиа-тип
<xsl:param name="имя" select="выражение"> <!-- Содержимое: шаблон --> </xsl:param>
Инструкция, элемент верхнего уровня. Определяет параметр преобразования или шаблонного правила. • name — имя параметра; • select — выражение, задающее значение параметра
<xsl:preserve-space elements="токены"/>
Элемент верхнего уровня. Определяет элементы входящего документа, в которых следует сохранять текстовые узлы, содержащие только пробельные символы. • elements — перечисляет элементы, в которых пробельные символы должны быть сохранены
<xsl:processing-instruction name="{имя}"> <!-- Содержимое: шаблон --> </xsl:processing-instruction>
Инструкция. Создает узел инструкции по обработке. • name — определяет имя целевого приложения создаваемой инструкции
<xsl:sort select="выражение" lang="{токен}" data-type={ "text" | "number" | "префикс:имя" } order={ "ascending" | "descending" } case-order={ "upper-first" | "lower-first"}/>
Субэлемент элементов xsl:apply-templates и xsl:for-each. • select — выражения для сортировки; • lang — язык сортировки; • data-type — тип данных сортировки; • order — порядок сортировки; • case-order — упорядоченность строчных и прописных букв
<xsl:strip-space --">