Введение. Для обработки XML-документов был разработан язык XSL (eXtensible Stylesheet Language – расширяемый язык таблиц стилей)
Для обработки XML-документов был разработан язык XSL (eXtensible Stylesheet Language – расширяемый язык таблиц стилей), являющийся подмножеством XML (то есть XSL-документ является корректным XML-документом) и специально предназначеный для форматирования XML-элементов. Процессор таблиц стилей XSL принимает документ или данные на языке XML и таблицу XSL и производит преобразования содержимого этого XML-источника так, как это задумано разработчиком данной таблицы стилей. Существуют два аспекта этого процесса представления: 1. конструирование результирующего дерева из дерева XML-источника; 2. интерпретация результирующего дерева для производства форматированного вывода, пригодного для показа на экране дисплея, на бумаге, его произнесения, или на другом носителе. Первый аспект называется трансформация дерева, а второй называется форматирование. Процесс форматирования выполняется форматировщиком. Этот форматировщик может быть просто браузером. Трансформация дерева позволяет структуре результирующего дерева существенно отличаться от структуры дерева-источника. Например, можно добавить оглавление как результат фильтрации документа-источника или можно переупорядочить данные-источник в отсортированное табличное представление. При конструировании результирующего дерева процесс трансформации дерева добавляет также информацию, необходимую для форматирования этого результирующего дерева. Более простой взгляд на XSL – это язык, который может преобразовывать XML в HTML, фильтровать и сортировать XML-данные, адресно обращаться к различным частям XML-документа, форматировать XML-данные в зависимости от их значения (например, показывать отрицательные числа красным цветом). XSL – больше, чем просто таблица стилей, XSL состоит из трех частей или включает в себя три языка: · метод преобразования XML-документов – XSLT (Extensible Stylesheet Language Transformations) – язык преобразований XML в другие типы документов или в другие XML-документы; · метод задания частей и путей к элементам XML – XPath – язык определения частей и путей к элементам XML, создан для использования языком XSLT; · метода форматирования XML-документов – XSL Formatting Objects – язык определения показа XML, процесс превращения результата XSL-преобразования в форму, удобную для пользователя. XSLT и XPath были предложены в виде двух отдельных официальных рекомендаций W3C 16 ноября 1999 года. Для языка XSL Formatting Objects нет отдельной рекомендации, но его описание можно найти в рекомендациях по языку XSL 1.0. В общем случае, XSLT позволяет автору задавать параметры отображения элемента XML, используя любые языки, предназначенные для форматирования – HTML, RTF, XML и т.д. В этом разделе мы будем использовать в качестве такого языка HTML, т.к. документы, созданные при помощи этого языка разметки, могут просматриваться браузером или любой другой программой просмотра Web-страниц. Кроме того, XSLT может добавлять совершенно новые элементы в выходной файл или удалять элементы. Этот язык может изменить порядок элементов, произвести проверку и на ее основе решить какие элементы показывать и еще многое другое. Наиболее общее описание процесса преобразования звучит так: XSL использует XSLT для преобразования XML-дерева-оригинала в XML-дерево-результат (или XML-документ-оригинал в XML-документ-результат). В процессе преобразования XSLT использует XPath для определения тех частей в документе-оригинале, которые соответствуют одному или более заранее заданным шаблонам. Когда такое соответствие обнаруживается, XSLT преобразует соответствующую часть в документе-оригинале в документ-результат. Те части документа-оригинала, которые не соответствуют шаблону, будут (как гласит общее правило) попадать в документ-результат немодифицированными.
|