Преобразование документов в другие форматы

Для преобразования исходных документов в другие форматы используются языки описания преобразований и таблицы стилей. Существуют два языка для работы с таблицами стилей (stylesheets):

DSSSL

Язык семантики и описания стиля документа (DSSSL — Document Style Semantics and Specification Language) был создан для работы с документами в формате SGML и может работать с документами в формате XML, поскольку второй является подмножеством первого. В Sisyphus таблицы стилей DSSSL для работы с Docbook находятся в пакете docbook-style-dsssl.

Утилиты, использующие эти таблицы стилей, находятся в Sisyphus в пакете docbook-utils.

Пример 1. Преобразование XML-документа в формат HTML с использованием DSSSL-стилей

db2html file.xml
              
XSL

Расширяемый язык стилей (XSL — Extensible Style Language) — язык обработки стилей, созданный специально для работы с XML. Он позволяет преобразовывать документы из XML в HTML, RTF, а также в другие документы XML. Для преобразования XML-документов можно также пользоваться языком XSLTXSL Transformations. В Sisyphus XSL-таблицы стилей для Docbook/XML находятся в пакете docbook-style-xsl.

Процессор, обрабатывающий XSL-таблицы стилей, находится в Sisyphus в пакете xsltproc.

Пример 2. Преобразование XML-документа в формат HTML с использованием XSL-стилей

xsltproc --xinclude -o html/ --param default.encoding \"KOI8-R\" /usr/share/xml/docbook/xsl-stylesheets/html/chunk.xsl file.xml
              

В этом примере используется стиль chunk, который создаёт отдельные html-файлы для каждого раздела в подкаталоге html. Параметр default.encoding указывает кодировку выходных файлов.

Подсказка

При использовании стиля docbook на выходе получится один большой html-файл со всем содержимым. Параметр default.encoding при этом не учитывается и в документе вместо букв будут их числовые обозначения. Такие документы корректно отображаются браузерами, просто занимают больше места, чем документы с кодировкой, например, koi8-r.

Опытным путем выяснено, что использование XSL-стилей даёт лучшие результаты, чем использование DSSSL-стилей.



Наш баннер
Вы можете установить наш баннер на своем сайте или блоге, скопировав этот код:
RSS новости