файлов XSLT при помощи мастера, который изучает данные XML и задает вопросы пользователю;

xslide, www.mulberrytech.com/xsl/xslide. Поддерживает режим редактирования XSLT для Emacs;

XSpLit, www.percussion.com/xmlzone/technology.htm. Позволяет вам разделять документы HTML на определения DTD XML и таблицы стилей XSLT.

Утилиты XSLT

В Интернете существует также много утилит XSLT — в следующем списке перечислены наиболее известные:

Microsoft XSL API Extension, http://msdn.microsoft.com/downloads/webtechnology/xml/xslisapi.asp. Упрощает задачу выполнения XSLT- преобразований на стороне сервера;

• Microsoft XSL-to-XSLT Converter, http://msdn.microsoft.com/downloads/webtechnology/xml/xsltconv.asp. Преобразует XSL в XSLT;

XSL Lint, www.nwalsh.com/xsl/xslint. XSL Lint осуществляет проверку синтаксиса XSLT, позволяя обнаружить ошибки многих типов;

XSL Trace, www.alphaworks.ibm.com/tech/xsltrace. Этот продукт позволяет пользователю проходить по шагам XSLT визуально;

• XSLT Compiler, www.sun.com/xml/developers/xsltc. Преобразует файлы XSLT в классы Java для преобразования файлов XML;

• XSLT test tool, www.netcrucible.com/xslt/xslt-tool.htm. Этот инструмент дает возможность запускать XSLT в различных популярных процессорах, что позволяет проверить, корректно ли ваше преобразование работает на всех системах. Существует возможность вызывать из командной строки MSXML3 от Microsoft, как и любой другой процессор XSLT;

XSLTC, www3.cybercities.com/x/xsltc. Компилирует таблицы стилей XSLT в код на С++. Основан на Transformix, процессоре XSLT фирмы Mozilla;

• XSLTracer, www.zvon.org/xxl/XSLTracer/Output/introduction.html. XSLTracer — средство на языке Perl, демонстрирующее процесс обработки файлов XML при помощи таблиц стилей XSLT.

На этом завершается обзор XSLT в данной главе. Как видите, нас ждет огромный набор сведений. В оставшейся части главы будет представлен обзор XSL-FO.

Форматирующие объекты XSL: XSL-FO

Самая популярная часть XSL — это XSLT-преобразования, с которыми мы уже познакомились в этой главе. Другая, существенно большая часть — это форматирующие объекты XSL, XSL-FO (XSL Formatting Objects).

При помощи XSL-FO можно с точностью до миллиметра задать форматирование и способ отображения XML-документа. Для документов можно задать все, что угодно: шрифт текста, место, выравнивание, цвет, индексы, размер полей и многое другое. Работа с XSL-FO похожа на процесс создания вручную текстового процессора, и из-за сложности XSL-FO некоторые избегают их использовать. В главах 11 и 12 мы изучим то, что могут предложить нам XSL-FO, и способы работы с ними.

Ресурсы XSL-FO

Ряд ресурсов XSL-FO доступен в Интернете, но их гораздо меньше, чем ресурсов XSLT. Вот основные:

• www.w3.org/TR/xsl. Основная рекомендация-кандидат XSL, включающая также XSL-FO;

• http://lists.w3.org/Archives/Public/www-xsl-fo/. Список заметок W3C для XSL-FO.

Так же, как существуют процессоры XSLT, существуют и процессоры XSL-FO. Ни один из них, однако, не приближается к тому, чтобы реализовать стандарт полностью. Вот начальный список процессоров XSL- FO:

• FOP, http://xml.apache.org/fop. Приложение Java, которое считывает дерево форматирующих объектов XSL (создаваемое разборщиком XML) и создает документ PDF;

• PassiveTeX, http://users.ox.ac.uk/~rahtz/passivetex. Пакет ТеХ, форматирующий вывод XSL-FO в PDF. Использует разборщик XML xmltex Дэвида Карлайла (David Carlisle);

• SAXESS Wave, http://www.saxess.com/wave/index.html. Конвертер XML- Shockwave/Flash;

• TeXML, http://www.alphaworks.ibm.com/tech/texml. Преобразует документы XML в формат ТеХ;

• Unicorn Formatting Objects (UFO), http://www.unicorn-enterprises.com. Процессор форматирующих объектов XSL, написанный на С++. Может генерировать вывод в форматах PostScript, PDF и других форматах, поддерживаемых драйверами DVI ТеХ;

• XEP, http://www.renderx.com/F02PDF.html. Процессор XSL-FO на Java, преобразующий форматирующие объекты XSL в PDF или PostScript.

В этой книге я буду пользоваться FOP (formatting objects processor, процессор форматирующих объектов) — вероятно, самым распространенным процессором XSL-FO. Основанный на Java процессор XSL- FO берет XML-документ, написанный для использования форматирующих объектов XSL-FO, и преобразует его в формат PDF, который можно просмотреть в Adobe Acrobat. Хотя XSLT-преобразования часто производятся в HTML, для XSL-FO это работать не будет, потому что в этом случае указывается каждый аспект формата представления документа вплоть до мельчайших деталей, а для этих целей гораздо лучше подходит формат PDF.

Форматирование документа XML

Для форматирования planets.xml в planets.pdf мы можем воспользоваться форматирующими объектами XSL-FO, представленными в главе 12. Например, вот как мы можем отобразить название первой планеты, Меркурия, при помощи форматирующих объектов XSL-FO flow и block:

<fo:page-sequence master-name='page'>

 <fo:flow flow-name='xsl-region-body'>

  <fo:block font-family='sans-serif' line-height='48pt'

   font-size='36pt' font-weight='bold'>

   Mercury

  </fo:block>

  .

  .

Вы читаете XSLT
Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату