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

на главную - закладки

Жанры

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

Шрифт:

XT Джеймса Кларка

XT Джеймса Кларка (James Clark) можно загрузить с www.jclark.com/xml/xt.html. Помимо самого процессора XT, вам понадобится разборщик XML, при помощи которого XT будет читать ваш XML-документ. В файлах загрузки XT есть еще файл

sax.jar
, содержащий разборщик XML Джеймса Кларка; можете впрочем воспользоваться в этих же целях и его разборщиком ХР, загрузив его с адреса www.jclark.com/xml/xp/index.html.

Я лично предпочитаю использовать разборщик XML Xerces от Apache Project, который расположен по адресу(Ко времени написания книги текущую версию, Xerces 1.3.0, можно было загрузить с адресав формате zip для UNIX в файле

Xerces-J-bin.l.3.0.tar.gz
и формате для Windows в файле
Xerces-J-bin.1.3.0.zip
.)

Сам процессор XT — это приложение Java, включенное в пакет загрузки XT в файле JAR,

xt.jar
. Для использования
xerces.jar
и
xt.jar
вы должны включить и тот, и другой файлы в переменную
classpath
, как показано в следующем примере для Windows (соответственно измените места нахождения этих файлов):

C:\>set classpath=C:\xerces-1_3_0\xerces.jar;C:\xt\xt.jar

Затем вы можете воспользоваться классом преобразования XT,

com.jclark.xsl.sax.Driver.class
. Нужно предоставить имя разборщика, которое вы хотите использовать (в данном случае это
org.apache.xerces.parsers.SAXParser
в архиве
xerces.jar
), установив переменную
com.jclark.xsl.sax.parser
в нужное имя в командной строке. Вот как я использую XT для преобразования в Windows (считая, что файлы
planets.xml
и
planets.xsl
содержатся в каталоге
c:\planets
, a
java.exe
расположен в вашем текущем каталоге):

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, его можно бесплатно загрузить сВсе, что нужно сделать, — это загрузить файл 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, которая загружается сВ Windows его можно запустить следующим образом (часть

– о planets.html
задает имя выходного файла):

C:\planets>saxon -о planets.html planets.xml planets.xsl

Oracle XSLT

Корпорация Oracle также предоставляет бесплатный процессор XSLT, который можно загрузить с— правда, для этого придется пройти весьма длительную процедуру регистрации. Ко времени написания книги для загрузки процессора 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 можно загрузить с— достаточно щелкнуть на требуемом вам файле архива 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:

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

Наследие Маозари 7

Панежин Евгений
7. Наследие Маозари
Фантастика:
боевая фантастика
юмористическое фэнтези
постапокалипсис
рпг
фэнтези
эпическая фантастика
5.00
рейтинг книги
Наследие Маозари 7

Базис

Владимиров Денис
7. Глэрд
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Базис

Личник

Валериев Игорь
3. Ермак
Фантастика:
альтернативная история
6.33
рейтинг книги
Личник

Наследие Маозари 9

Панежин Евгений
9. Наследие Маозари
Фантастика:
попаданцы
постапокалипсис
рпг
сказочная фантастика
6.25
рейтинг книги
Наследие Маозари 9

Вернувшийся: Корпорация. Том III

Vector
3. Вернувшийся
Фантастика:
космическая фантастика
боевая фантастика
рпг
5.00
рейтинг книги
Вернувшийся: Корпорация. Том III

Я до сих пор не царь. Книга XXVII

Дрейк Сириус
27. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я до сих пор не царь. Книга XXVII

Тринадцатый IX

NikL
9. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
сказочная фантастика
5.00
рейтинг книги
Тринадцатый IX

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Матабар. II

Клеванский Кирилл Сергеевич
2. Матабар
Фантастика:
фэнтези
5.00
рейтинг книги
Матабар. II

Первый среди равных

Бор Жорж
1. Первый среди Равных
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Первый среди равных

Атаман царского Спецназа

Корчевский Юрий Григорьевич
Боевая фантастика Ю. Корчевского
Фантастика:
боевая фантастика
попаданцы
альтернативная история
6.00
рейтинг книги
Атаман царского Спецназа

Вторая жизнь майора. Цикл

Сухинин Владимир Александрович
Вторая жизнь майора
Фантастика:
героическая фантастика
боевая фантастика
попаданцы
5.00
рейтинг книги
Вторая жизнь майора. Цикл

Мастер 3

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

Шайтан Иван 6

Тен Эдуард
6. Шайтан Иван
Фантастика:
попаданцы
альтернативная история
историческое фэнтези
7.00
рейтинг книги
Шайтан Иван 6