Стивен Холзнер - XSLT
- Название:XSLT
- Автор:
- Жанр:
- Издательство:Питер
- Год:2002
- Город:Санкт-Петербург
- ISBN:5-94723-271-5
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Стивен Холзнер - XSLT краткое содержание
Эта книга посвящена XSLT — мощным и удобным системам преобразования документов. В ней не только рассматривается весь синтаксис XSLT, от основ до специальных аспектов, но и подробно излагаются современные способы использования XSLT.
Вы найдете сотни практических примеров, таких как осуществление преобразований XSLT на web-cepвepax, подключение к базам данных и использование браузеров для осуществления преобразований на лету.
Книга рассчитана на всех, кто хочет изучать XSLT и использовать его на практике
XSLT - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
C:\planets>java -Dcom.jclark.xsl.sax.parser=org.apache.xerces.parsers.SAXParser com.jclark.xsl.sax.Driver planets.xml planets.xsl planets.html
Эта строка довольно длинна, и хорошо, что XT также упакован в исполняемый файл Win32 xt.exe
. Для работы с xt.exe
, однако, необходимо, чтобы на компьютере была установлена виртуальная машина Java от Microsoft, Microsoft Java Virtual Machine (VM), — она входит в поставку Internet Explorer. Вот пример в Windows, осуществляющий то же преобразование, что и предыдущая строка (предполагается, что xt.exe
расположен в текущем каталоге):
C:\planets>xt planets.xml planets.xsl planets.html
Если xt.exe
расположен не в текущем каталоге, вы можете задать его месторасположение явно, как в следующем примере (если xt.exe
находится в c:\xt
):
C:\planets>c:\xt\xt planets.xml planets.xsl planets.html
Saxon
Saxon Майкла Кэя (Michael Kay) — один из самых первых процессоров XSLT, его можно бесплатно загрузить с http://users.iclway.co.uk/mhkay/saxon/. Все, что нужно сделать, — это загрузить файл saxon.zip и распаковать архив zip; будет создан требуемый файл Java JAR, saxon.jar
.
Для осуществления XSLT-преобразования вначале нужно удостоверится, что saxon.jar
находится в переменной classpath
. Например, в Windows, считая, что saxon.jar
находится в c:\saxon
, установить переменную classpath
можно следующим образом:
C:\>set classpath=c:\saxon\saxon.jar
Теперь для выполнения преобразования можно использовать класс Saxon XSLT, com.icl.saxon.StyleSheet.class
:
C:\planets>java com.icl.saxon.StyleSheet planets.xml planets.xsl
По умолчанию Saxon выводит результаты на экран — не совсем то, что нужно, если мы хотим создать файл planets.html
. Чтобы создать файл planets.html
, можно воспользоваться символом перенаправления вывода UNIX или DOS >:
C:\planets>java com.icl.saxon.StyleSheet planets.xml planets.xsl > planets.html
При работе в Windows несложно сразу же вызвать Saxon в виде исполнимой программы Win32, saxon.exe, которая загружается с http://users.iclway.co.uk/mhkay/saxon/. В Windows его можно запустить следующим образом (часть -о planets.html
задает имя выходного файла):
C:\planets>saxon -о planets.html planets.xml planets.xsl
Oracle XSLT
Корпорация Oracle также предоставляет бесплатный процессор XSLT, который можно загрузить с http://technet.oracle.com/tech/xml/, — правда, для этого придется пройти весьма длительную процедуру регистрации. Ко времени написания книги для загрузки процессора XSLT достаточно было щелкнуть на ссылке для XDK для Java http://technet.oracle.com/tech/xml/.
После распаковки архива zip, загруженного с web-узла Oracle, требуемый JAR-файл (на момент написания книги) будет называться xmlparserv2.jar
. Его можно поместить в вашу переменную classpath
в Windows следующим образом:
C:\>set classpath=c:\oraclexml\lib\xmlparserv2.jar
Требуемый класс Java — oracle.xml.parser.v2.oraxsl
, для преобразования planets.xml
в planets.html
вы можете использовать его таким образом:
C:\planets>java oracle.xml.parser.v2.oraxsl planets.xml planets.xsl planets.html
Xalan
Скорее всего, самый широко используемый отдельный процессор XSLT — это Xalan фирмы Apache Project (Apache — широко распространенный web-сервер). Версию Xalan на Java можно загрузить с http://xml.apache.org/xalan-j/index.html — достаточно щелкнуть на требуемом вам файле архива zip (сейчас это xalan-j_2_0_0.zip
для Windows или xalan-j_2_0_0.tar.gz
для UNIX).
При распаковке загруженного файла вы получите как процессор 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.
Интервал:
Закладка: