- •Лабораторная работа 4-03
- •3.1.2. Пространство имен xslt
- •3.1.3. Корневые элементы и элементы верхнего уровня документаXslt
- •3.1.4. Условное включение элемента
- •3.1.5. Модульная структура преобразованийXslt
- •3.1.4. Совместное использование преобразований и документов xml
- •3.2. Управление выводом в xslt
- •3.2.1. Элементxsl:output
- •3.2.2. Метод вывода "xml"
- •3.2.3. Метод вывода "xhtml"
- •3.2.4. Метод вывода "html"
- •3.2.5. Метод вывода "text"
- •3.3.Язык xslt
- •3.3.1. Образцы и шаблоны
- •3.3.2. Объявлениешаблона
- •3.3.3. Вызов неименованных правил шаблона
- •3.3.4. Создание узлов элементов и атрибутов вXslt
- •3.3.4.1. Элемент xsl:element
- •3.3.4.2. Элементxsl:attribute
- •3.3.4.3. Элементxsl:attribute-set
- •3.3.5. Создание текстовых узлов вXslt
- •3.3.5.1. Элементxsl:text
- •3.3.5.2. Элементxsl:value-of
- •3.3.5.3. Встроенные правила шаблона
- •3.3.5.4. Обработка пробельных символов
- •3.3.6. Создание узлов документа, комментариев, инструкций по обработке и пространства имен в xslt
- •3.3.6.1. Элемент xsl:document
- •3.3.6.2. Элементxsl:result-document
- •3.3.6.3. Элементxsl:comment
- •3.3.6.4. Элемент xsl:processing-instruction
- •3.3.6.5. Элементxsl:namespace
- •3.3.7. Копирование узлов вXslt
- •3.3.7.1. Элементxsl:copy
- •3.3.7.2. Элементxsl:copy-of
- •3.3.7.3. Элементxsl:sequence
- •3.3.8. Условная и циклическая обработка вXslt
- •3.3.8.1. Элементxsl:if
- •3.3.8.2. Элементы xsl:choose, xsl:when и xsl:otherwise
- •3.3.8.3. Элементxsl:for-each
- •3.3.9. Сортировка в xslt
- •3.3.10. Нумерация в xslt
- •3.3.11. Переменные и параметры в xslt
- •3.3.11.1. Переменные в xslt
- •3.3.11.2. Вызов именованных правил шаблона
- •3.3.11.3. Параметры в xslt
- •3.4. Выполнение преобразований документов в xmlSpy
- •3.4.1. Создание документа xslt
- •3.4.2. Выполнение преобразования xslt
- •4. Порядок выполнения работы
- •Вариант 5-01
- •Вариант 5-02
- •Вариант 5-03
- •Вариант 5-04
- •Вариант 5-05
- •Вариант 5-06
- •Вариант 5-07
- •Вариант 5-08
- •Вариант 5-09
- •Вариант 5-10
- •Вариант 5-11
- •Вариант 5-12
- •Вариант 5-13
- •Вариант 5-14
- •Вариант 5-15
- •Вариант 5-16
- •Вариант 5-17
- •Вариант 5-18
- •Вариант 5-19
- •Вариант 5-20
- •Вариант 5-21
- •Вариант 5-22
- •Вариант 5-23
- •Вариант 5-24
- •Вариант 5-25
- •Вариант 5-26
- •Вариант 5-27
- •Вариант 5-28
- •Вариант 5-29
- •Вариант 5-30
- •5. Содержание отчета
- •6. Вопросы для самоконтроля
3.2.3. Метод вывода "xhtml"
Метод вывода "xhtml" используется для того, чтобы выводить документы в Web-браузере в соответствии со спецификациейXHTML.
Атрибуты version, encoding, indent, cdata-section-elements, omit-xml-declaration, standalone, doctype-system, doctype-public, undeclare-prefixes, normalization-form, media-type, byte-order-mark и use-character-maps действуют также, как и для метода "xml".
Атрибут escape-uri-attributes
Этот атрибут определяет, выводить ли атрибуты с URI в выходном документе ("no") или нет ("yes") (по умолчанию значение этого атрибута равно "yes");
Атрибут include-content-type
Этот атрибут включает в документ XHTML в элемент head(если этот элемент задан) первым дочерним элементом элементmeta, который определяет кодировку, используемую в Web-странице (по умолчанию или заданную в атрибутеencoding).
3.2.4. Метод вывода "html"
Метод вывода "html"используется для того, чтобы выводить документы в Web-браузере.
Одно из основных различий HTMLи XML состоит в том, что в XML пустые элементы имеют формат<имя/>, в то время как вHTMLтот же элемент был бы выведен, как<имя>. Метод вывода"html"учитывает эти различия и выводит теги пустых элементовHTMLбез косой черты после имени. В соответствии со спецификацией языкаHTML4.01, пустыми элементами являютсяarea,base,basefont,br,col,frame,hr,img,input,isindex,link,metaиparam.
Документы, которые преобразуются в HTML, могут также иметь программы, определенные внутри элементаscriptили стили, заданные внутри элементаstyle. В случае если внутри этих элементов оказываются символы, считающиеся вXMLспециальными, например, "<" или "&", процессор не должен заменять их символьными или встроенными сущностями.
В соответствии со спецификацией, некоторые атрибуты в HTMLмогут и не иметь значений (например, атрибутselectedэлементаoption). Чтобы получить в выходящем документе<option selected>, следует в преобразовании указывать
<option selected="selected">,
то есть присваивать булевому атрибуту значение, равное собственному имени.
Атрибуты encoding, indent, normalization-form, byte-order-mark и use-character-maps действуют также, как и для метода "xml". Атрибуты escape-uri-attributes и include-content-type действуют также, как и для метода "xhtml".
Атрибут version
Атрибут versionэлементаxsl:outputв методе"html"обозначает версию языкаHTML, которая должна использоваться в выходном документе. По умолчанию значением этого атрибута является "4.0" (последней версией языка является версия 4.01).
Атрибуты doctype-system и doctype-public
Декларация типа документа с внешними системными или общедоступными идентификаторами может быть использована в HTMLточно так же, как в XML. Поскольку в объявлении типа документа после<!DOCTYPEдолжно стоять имя корневого элемента, при методе вывода"html"этим именем будет "HTML" или "html" в зависимости от регистра символов имени корневого элемента документа.
Атрибут media-type
Для HTML-документов значением media-typeпо умолчанию будет"text/html".
3.2.5. Метод вывода "text"
При значении атрибута method, равном"text", результатом преобразования будет строковое сложение всех текстовых узлов исходного документа.
Атрибуты encoding, normalization-form, byte-order-mark и use-character-maps действуют также, как и для метода "xml".
Атрибут media-type
По умолчанию в качестве значения атрибута media-type, используемого для простого текста, указывается"text/plain". Значение атрибутаmedia-typeможет быть использовано сервером, преобразующим документ в качестве MIME-типа.
