Чтение онлайн

на главную

Жанры

Холзнер Стивен

Шрифт:

<?xml version="1.0"?>

<?xml-stylesheet type="text/xml" href="#"?>

<PLANETS>

 <PLANET>

<NAME>Mercury</NAME>

<MASS UNITS="(Earth = 1)">.0553</MASS>

<DAY UNITS="days">58.65</DAY>

<RADIUS UNITS="miles">1516</RADIUS>

<DENSITY UNITS="(Earth = 1)">.983</DENSITY>

<DISTANCE UNITS="million miles">43.4</DISTANCE><!--В
перигелии-->

 </PLANET>

 .

 .

 .

Теперь при помощи процессора (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, — с некоторыми из них мы познакомимся в этой главе;

• на стороне клиента. Клиентская программа, например браузер, может осуществлять преобразование, считывая таблицу стилей, заданную в инструкции обработки

<?xml-stylesheet?>
. В частности, Internet Explorer может осуществлять преобразования подобного рода; 

• на стороне сервера. Серверная программа, например сервлет Java, может преобразовывать документ автоматически при помощи таблицы стилей и отправлять его клиенту.

В книге мы рассмотрим все три способа осуществления XSLT-преобразований. Уже в этой главе будет предоставлен обзор всех этих трех различных способов.

Использование отдельных процессоров XSLT

Отдельные процессоры XSLT — один из самых распространенных способов провести XSLT-преобразования. Существует весьма много таких процессоров, хотя и не все из них могут обрабатывать все возможные таблицы стилей XSLT. Для того, чтобы использовать процессор XSLT, достаточно запустить его из командной строки (в окне DOS в Windows), задать имя исходного документа XML, имя используемой таблицы стилей и имя документа, который вы хотите создать.

Ниже приведен список некоторых доступных в Интернете процессоров XSLT в алфавитном порядке — большинство (но не все) из них бесплатны:

4XSLT,XSLT-процессор для Python;

EZ/X,Пакет Java одновременно для разбора XML и обработки XSLT;

iXSLT,Процессор XSLT в командной строке;

Koala XSL Engine,XSLT-процессор для Java, использующий простой API для XML, Simple API for XML (SAX 1.0) и API объектной модели документов, Document Object Model (DOM 1.0) API;

• LotusXSL,LotusXSL фирмы IBM реализует XSLT-процессор на Java и может взаимодействовать с интерфейсами API, удовлетворяющими спецификации Document Object Model (DOM) Level 1 Specification. Известный процессор XSLT, но сейчас он вытесняется Xalan 2.0;

MDC-XSL,Процессор XSLT на С++, его можно использовать как отдельную программу;

Microsoft XML Parser,Разборщик XML фирмы Microsoft, высокопроизводительный, доступный в виде СОМ-компонента. Его можно использовать для реализации поддержки XSLT в приложениях;

• Sablotron,Sablotron — быстрый, компактный и переносимый процессор XSLT. На настоящий момент поддерживает подмножество рекомендации XSLT. Его можно использовать вместе с С или Perl;

SAXON,Такой процессор XSLT полностью реализует XSLT 1.0 и XPath 1.0, а также ряд расширений упомянутых спецификаций. Обратите внимание на то, что в этом выпуске имеется также поддержка рабочего проекта XSLT 1.1;

Transformiix,Transformiix — XSLT-компонент фирмы Mozilla, в настоящее время частично реализованный в Netscape 6.0;

• Unicorn XSLT processor (UXT),Этот процессор XSLT поддерживает XSLT-преобразования и написан на С++;

Xalan С++,Реализация рекомендаций W3C для XSLT и XML Path Language (XPath). Версия известного процессора Apache Xalan на С++;

• Xalan Java,Реализация рекомендаций W3C для XSLT и XML Path Language (XPath) на Java. Версия известного процессора Apache Xalan на Java. Включает также функции расширения для доступа к базам данных на SQL через JDBC и многое другое;

Поделиться:
Популярные книги

Архил…? Книга 3

Кожевников Павел
3. Архил...?
Фантастика:
фэнтези
попаданцы
альтернативная история
7.00
рейтинг книги
Архил…? Книга 3

Сила рода. Том 3

Вяч Павел
2. Претендент
Фантастика:
фэнтези
боевая фантастика
6.17
рейтинг книги
Сила рода. Том 3

Прометей: владыка моря

Рави Ивар
5. Прометей
Фантастика:
фэнтези
5.97
рейтинг книги
Прометей: владыка моря

Гром над Академией. Часть 1

Машуков Тимур
2. Гром над миром
Фантастика:
фэнтези
боевая фантастика
5.25
рейтинг книги
Гром над Академией. Часть 1

Хозяйка дома на холме

Скор Элен
1. Хозяйка своей судьбы
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Хозяйка дома на холме

Газлайтер. Том 10

Володин Григорий
10. История Телепата
Фантастика:
боевая фантастика
5.00
рейтинг книги
Газлайтер. Том 10

Последний Паладин

Саваровский Роман
1. Путь Паладина
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Последний Паладин

Мастер 6

Чащин Валерий
6. Мастер
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Мастер 6

Столичный доктор. Том III

Вязовский Алексей
3. Столичный доктор
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Столичный доктор. Том III

Наследник и новый Новосиб

Тарс Элиан
7. Десять Принцев Российской Империи
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Наследник и новый Новосиб

Вперед в прошлое 5

Ратманов Денис
5. Вперед в прошлое
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Вперед в прошлое 5

Последняя Арена 10

Греков Сергей
10. Последняя Арена
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Последняя Арена 10

Релокант

Ascold Flow
1. Релокант в другой мир
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Релокант

Совок-8

Агарев Вадим
8. Совок
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Совок-8