При распаковке загруженного файла вы получите как процессор XSLT, xalan.jar
, так и разборщик XML, xerces.jar
. Оба эти JAR-файла в Windows можно включить в classpath
следующим образом (измените пути к файлам в соответствии с вашей системой):
C:\>set classpath=c:\xalan-j_2_0_0\bin\xalan.jar;c:\xalan-j_2_0_0\bin\xerces.jar
Чтобы затем использовать planets.xsl
для преобразования planets.xml
в planets.html
, запустите на выполнение класс Java org.apache.xalan.xslt.Process
:
C:\planets>java org.apache.xalan.xslt.Process -IN planets.xml -XSL planets.xsl -OUT planets.html
Заметьте, что для указания входного файла используется -IN
, для указания выходного — -OUT
, а для указания таблицы стилей XSLT — -XSL
. Чаще всего мы будем работать именно с процессором Xalan, поэтому ниже приведены дополнительные подробности. Следующий список содержит все лексемы, которые можно использовать с классом org.apache.xalan.xslt.Process
, как их выводит сам Xalan:
• -CR
. Использовать в выходных данных только символы возврата каретки (carriage return) — по умолчанию используется CR/LF;
• -DIAG
. Вывод диагностики времени;
• -EDUMP [optional] FileName
. Копировать стек при ошибке;
• -HTML
. Использовать формат HTML;
• - IN inputXMLURL
;
• -INDENT
. Количество пробелов для выравнивания (indent) каждого уровня в выходном дереве — по умолчанию 0;
• -LF
. Использовать в выходных данных только символы перевода строки (linefeed) — по умолчанию используется CR/LF;
• -OUT outputFileName
;
• -PARAM name value
. Устанавливает параметр таблицы стилей;
• -Q
. Режим с минимальным выводом (quiet);
• -QC
. Quiet Pattern Conflicts Warnings, предупреждения конфликтов шаблонов;
• -TEXT
. Использовать средство форматирования простого текста;
• -TG
. Отслеживать (trace) каждое событие генерации результирующего дерева;
• -TS
. Отслеживать каждое событие выделения;
• -ТТ
. Отслеживать шаблоны по мере их вызова;
• -ТТС
. Отслеживать «детей» шаблона по мере их обработки;
• -V
. Информация о версии;
• -VALIDATE
. Проверить входной XML и XSL (по умолчанию проверка отключена);
• -XML
. Использовать средства форматирования XML и добавить заголовок XML;
• -XSL XSLTransformationURL
.
В книге мы рассмотрим все эти процессоры; как уже говорилось, чаше всего я буду использовать Xalan. (Причина в том, что этот процессор стал самым популярным и широко распространенным процессором XSLT.) Разумеется, вы можете использовать любой процессор XSLT, если только он удовлетворяет спецификации XSLT консорциума W3C.
На этом мы завершаем рассмотрение отдельных процессоров XSLT. Существует другой способ преобразовывать документы XML, не прибегая к отдельной программе: для этих целей можно использовать такую клиентскую программу, как браузер.
Преобразование документов XML при помощи браузеров
Поддержка XSLT включена и в Microsoft Internet Explorer, и в Netscape Navigator. Из этих двух браузеров Internet Explorer обладает гораздо большей поддержкой XSLT, и здесь я буду использовать версию 5.5 этого браузера. О поддержке XSLT в Internet Explorer вы можете прочитать по адресу http://msdn.microsoft.com/xml/XSLGuide/.
Internet Explorer 5.5 и ранних версий по умолчанию не поддерживает в точности синтаксис XSLT, поэтому нам нужно провести ряд модификаций в файлах planets.xml
и planets.xsl
. (В следующей главе мы рассмотрим эту тему подробнее. Там приведены адреса, с которых можно загрузить пакеты обновленной поддержки XSLT.) Когда печаталась эта книга появился уже Internet Explorer 6.0. Я установил его и проверил работу; похоже, он поддерживает стандартный синтаксис XSLT (за тем исключением, что все еще требуется использовать тип « text/xsl
» для таблиц стилей — таких как вместо « text/xml
»). Если вы все еще используете IE 5.5 или более ранний, вам нужно будет провести приведенные здесь и в следующей главе изменения. Если вы хотите избежать этого, используйте IE 6.0: кажется, этот браузер поддерживает полный синтаксис XSLT.
Для работы с planets.xml
в IE (в том числе и версии 6.0) мне пришлось преобразовать атрибут type
в инструкции обработки из « text/xml
» в « text/xsl
» (предполагается, что файл planets.xsl
расположен в том же каталоге, что и planets.xml
, как указывает атрибут href
в листинге 1.3).
Листинг 1.3. Версия planets.xml для Microsoft Internet Explorer
Mercury .0553
58.65
1516
.983
43.4
Venus
.815
116.75
3716
.943
66.8
Earth
1
1
2107
Читать дальше