Расширяемый язык таблиц стилей

Материал из Энциклопедии.

Версия как 13:09, 9 августа 2007; перейти к текущей версии
← Старая версия | Новые версии →
Перейти к: навигация, поиск

Extensible Stylesheet Language (ХSL)

Расширяемый язык таблиц стилей

Этот стандарт W3C разработан консорциумом на основе спецификаций стандартов CSS1 и CSS2, XPath и DSSSL. Он позволяет определять, каким образом должен быть стилизован XML-документ, какой макет следует использовать для представления документа в некоторой среде (на экране, на принтере, в акустическом представлении) и какой должна быть его страничная организация.

В отличие от языков CSS1 и CSS2, предназначенных для форматирования HTML и XML документов, XSL разрабатывался специально для форматирования документов XML, и он использует синтаксис XML. Помимо обеспечения форматирования документов, XSL служит и второй важной цели. Он позволяет описывать трансформации документов с одной разметкой в документы с другой разметкой, например, трансформации XML-документов в документы HTML/CSS. Решение этой задачи обеспечивается второй частью стандарта XSL, называемой XSL Transformations (XSLT). Эта часть стандарта XSL фактически выступает в качестве самостоятельного стандарта и широко используется на практике.

В стандарте XSL предполагается, что исходный XML-документ вместе с таблицей стилей подается на вход процессора таблиц стилей. Процессор в соответствии с заданным описанием осуществляет две процедуры: преобразование древовидной структуры исходного документа с порождением дерева результирующего документа и форматирование документа, обладающего этой новой структурой. В конечном счете генерируется требуемое представление исходного документа для целевой среды. Указанные процедуры называются трансформацией дерева и форматированием.

Средства описания транформаций деревьев, как уже отмечалось, определяются во второй части стандарта XSL. Такое описание представляется в виде таблицы стилей XSL. Таблица стилей содержит совокупность правил конструирования результирующего дерева. Каждое правило включает образец и шаблон. Образец (pattern) сопоставляется с элементами исходного дерева, и в случае соответствия с помощью шаблона (template) конструируется необходимый компонент результирующего дерева.

Процедура форматирования осуществляется путем вставки в качестве узлов в результирующее дерево документа форматирующих объектов, принадлежащих предопределенным в языке XSL классам. Форматирующие объекты представляются как элементы XML-документа. Атрибуты этих элементов обеспечивают дополнительные возможности управления форматированием и называются форматирующими свойствами. Для именования форматирующих элементов и атрибутов служит специальное пространство имен.

Как уже отмечалось выше, в разработке XSL в значительной мере использованы идеи и конкретные спецификации других стандартов. Наиболее серьезное влияние оказали стандарты CSS и XPath. В XSL непосредственно использован или использован с расширением функциональности ряд форматирующих свойств CSS. Из языка XPath заимствованы средства идентификации фрагментов деревьев.

Начальная версия XSL 1.0 стандарта XSL была принята консорциумом 15 октября <st1:metricconverter ProductID="2001 г" w:st="on">2001 г</st1:metricconverter>. В настоящее время разрабатывается его новая версия XSL 1.1. Вторая часть стандарта - XSLT Version 1.0 – рассматривается W3C, как уже указывалось, в качестве самостоятельного стандарта. Такое решение вполне правомерно, поскольку спецификации XSLT могут иметь многие применения, не связанные с одновременным использованием первой части стандарта XSL.


Действующая версия:
Extensible Stylesheet Language (XSL) Version 1.1.
W3C Recommendation 05 December 2006
Официальная спецификация:
<a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/">http://www.w3.org/TR/2006/REC-xsl11-20061205/</a>
Официальная спецификация (доступна лишь версия GML 3.1.0):
<a href="http://portal.opengeospatial.org/files/?artifact_id=4700">http://portal.opengeospatial.org/files/?artifact_id=4700</a>

Личные инструменты