Стивен Холзнер - XSLT
- Название:XSLT
- Автор:
- Жанр:
- Издательство:Питер
- Год:2002
- Город:Санкт-Петербург
- ISBN:5-94723-271-5
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Стивен Холзнер - XSLT краткое содержание
Эта книга посвящена XSLT — мощным и удобным системам преобразования документов. В ней не только рассматривается весь синтаксис XSLT, от основ до специальных аспектов, но и подробно излагаются современные способы использования XSLT.
Вы найдете сотни практических примеров, таких как осуществление преобразований XSLT на web-cepвepax, подключение к базам данных и использование браузеров для осуществления преобразований на лету.
Книга рассчитана на всех, кто хочет изучать XSLT и использовать его на практике
XSLT - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Тут-то нам и понадобятся преобразования XSLT. В этой главе мы с ними познакомимся, а в конце главы рассмотрим другую сторону XSL — XSL-FO.
XSLT-преобразования
XSLT обладает большими возможностями для оперирования данными в документах XML. Например, при помощи таблицы стилей (stylesheet) XSLT я мог бы отформатировать данные из planets.xml
в таблицу HTML. Таблицы стилей содержат правила, установленные для преобразования XML-документа, и большая часть книги посвящена созданию таблиц стилей и объяснению того, как они работают. Вот как выглядит таблица стилей XSLT planets.xsl
(листинг 1.2), преобразующая данные из planets.xml в таблицу HTML (мы проанализируем ее в главе 2).
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
The Planets Table
The Planets Table
Name | Mass | Radius | Day |
Как видите, эта таблица стилей XSLT выглядит как XML-документ — и для этого есть основания, потому что она им и является. Все таблицы стилей XSLT являются также и документами XML, а раз так, то они должны быть хорошо форматированными документами XML С этими двумя документами — planets.xml
(листингом 1.1) и связанной с ним таблицей стилей, planets.xsl
(листинг 1.2) — мы будем работать на протяжении всей книги, рассматривая различные возможные преобразования XSLT.
Как вы свяжете эту таблицу стилей с XML-документом planets.xml
? Как мы увидим в следующей главе, одним из способов это сделать является инструкция обработки XML , использующая два атрибута. Первый атрибут — type
, который следует установить в «text/xml», чтобы указать, что используется таблица стилей XSLT. (Чтобы использовать таблицы стилей другого типа — каскадирующие таблицы стилей (CSS, cascading stylesheets), обычно использующиеся с HTML — следует задать «text/css».) Второй атрибут — href
, которому следует присвоить значение URI (вспомните, что XML использует не адреса URL, а идентификаторы URI, Uniform Resource Identifier) таблицы стилей:
Mercury
.0553
58.65
1516
.983
43.4
.
.
.
Теперь при помощи процессора (processor) XSLT можно применить таблицу planets.xsl
к planets.xml
и создать новый документ, planets.html
. Процессор XSLT создает новый файл planets.html
, который вы можете увидеть на рис. 1.2.

Рис. 1.2.HTML-документ, созданный процессором XSLT
Как можно видеть на рис. 1.2, процессор XSLT считывает данные из planets.xml
, применяет к ним правила из planets.xsl
и создает HTML-таблицу в planets.html. Это наш первый пример XSLT-преобразования.
Что здесь на самом деле происходит? У нас были XML-документ, planets.xml
, и таблица стилей XSLT, planets.xsl
. Но каким образом они объединились для создания planets.html
?
Что нужно для XSLT-преобразования
Для осуществления XSLT-преобразования, такого как преобразование planets.xml
в planets.html
, необходим XSLT-процессор. Для преобразований документов XML можно использовать XSLT тремя способами:
• используя отдельные программы, называемые процессорами XSLT. Существует несколько программ, осуществляющих XSLT-преобразования, обычно основанных на Java, — с некоторыми из них мы познакомимся в этой главе;
• на стороне клиента. Клиентская программа, например браузер, может осуществлять преобразование, считывая таблицу стилей, заданную в инструкции обработки . В частности, Internet Explorer может осуществлять преобразования подобного рода;
• на стороне сервера. Серверная программа, например сервлет Java, может преобразовывать документ автоматически при помощи таблицы стилей и отправлять его клиенту.
В книге мы рассмотрим все три способа осуществления XSLT-преобразований. Уже в этой главе будет предоставлен обзор всех этих трех различных способов.
Использование отдельных процессоров XSLT
Отдельные процессоры XSLT — один из самых распространенных способов провести XSLT-преобразования. Существует весьма много таких процессоров, хотя и не все из них могут обрабатывать все возможные таблицы стилей XSLT. Для того, чтобы использовать процессор XSLT, достаточно запустить его из командной строки (в окне DOS в Windows), задать имя исходного документа XML, имя используемой таблицы стилей и имя документа, который вы хотите создать.
Ниже приведен список некоторых доступных в Интернете процессоров XSLT в алфавитном порядке — большинство (но не все) из них бесплатны:
• 4XSLT, http://Fourthought.com/4Suite/4XSLT. XSLT-процессор для Python;
• EZ/X, http://www.activated.com/products/products.html. Пакет Java одновременно для разбора XML и обработки XSLT;
• iXSLT, http://www.infoteria.com/en/contents/download/index.html Процессор XSLT в командной строке;
• Koala XSL Engine, http://www.inria.fr/koala/XML/xslProcessor. XSLT-процессор для Java, использующий простой API для XML, Simple API for XML (SAX 1.0) и API объектной модели документов, Document Object Model (DOM 1.0) API;
• LotusXSL, http://www.alphaworks.ibm.com/tech/LotusXSL. LotusXSL фирмы IBM реализует XSLT-процессор на Java и может взаимодействовать с интерфейсами API, удовлетворяющими спецификации Document Object Model (DOM) Level 1 Specification. Известный процессор XSLT, но сейчас он вытесняется Xalan 2.0;
• MDC-XSL, http://mdc-xsl.sourceforge.net. Процессор XSLT на С++, его можно использовать как отдельную программу;
• Microsoft XML Parser, http://msdn.microsoft.com/downloads/webtechnology/xml/msxml.asp. Разборщик XML фирмы Microsoft, высокопроизводительный, доступный в виде СОМ-компонента. Его можно использовать для реализации поддержки XSLT в приложениях;
• Sablotron, http://www.gingerall.com/charlie-bin/get/webGA/act/sablotron.act. Sablotron — быстрый, компактный и переносимый процессор XSLT. На настоящий момент поддерживает подмножество рекомендации XSLT. Его можно использовать вместе с С или Perl;
• SAXON, http://users.iclway.co.uk/mhkay/saxon/index.html. Такой процессор XSLT полностью реализует XSLT 1.0 и XPath 1.0, а также ряд расширений упомянутых спецификаций. Обратите внимание на то, что в этом выпуске имеется также поддержка рабочего проекта XSLT 1.1;
• Transformiix, http://www.mozilla.org. Transformiix — XSLT-компонент фирмы Mozilla, в настоящее время частично реализованный в Netscape 6.0;
• Unicorn XSLT processor (UXT), http://www.unicorn-enterprises.com. Этот процессор XSLT поддерживает XSLT-преобразования и написан на С++;
• Xalan С++, http://xml.apache.org/xalan-c/index.html. Реализация рекомендаций W3C для XSLT и XML Path Language (XPath). Версия известного процессора Apache Xalan на С++;
• Xalan Java, http://xml.apache.org/xalan-j/index.html. Реализация рекомендаций W3C для XSLT и XML Path Language (XPath) на Java. Версия известного процессора Apache Xalan на Java. Включает также функции расширения для доступа к базам данных на SQL через JDBC и многое другое;
• xesalt, http://www.inlogix.de/products.htmL Этот процессор XSLT существует в виде web-серверного модуля (как для web-сервера Apache, так и для IIS), в виде расширения Netscape 4.x и в виде процессора командной строки;
Читать дальшеИнтервал:
Закладка: