
DocBook. Коротко.
Коротко о системе подготовки документации DocBook.
Что такое DocBook
DocBook - система подготовки технической документации. Точнее DocBook представляет собой XML формат, предназначенный для создания структурированных документов, в том числе книг, статей, технической документации. Особенно подходит для написания текстов компьютерной тематики.
DocBook поддерживается и стандартизируется DocBook Technical Committee (OASIS).
Описание DocBook первоначально существует в формате SGML и XML DTD, есть также и в других вариантах описания XML, в частности W3C XML Shema.
Командой разработчиков DocBook Open Repository и Norman Walsh разработан набор DSSSL и XSL stylesheets для генерации различных выходных форматов по DocBook документам: HTML, PDF, RTF, man pages, HTML Help.
Мы под DocBook будем понимать не только как таковой XML формат DocBook, но инструментарий DocBook XSL.
Пример кода
<book id="simple_book">
<title>Very simple book</title>
<chapter id="simplechapter">
<title>Chapter 1</title>
<para>Hello world!</para>
</chapter>
</book>
Подробнее
Текущая версия:
Официальный сайт DocBook: DocBook.org
Официальный сайт DocBook XSL:
Основная официальная документация: книга Norman Walsh "DocBook: The Definitive Guide".
Первоначально DocBook использовался в основном Open Source сообществом: в том числе the Linux Documentation Project, the GNOME и GTK+ API справочник, документация ядра Linux. В последнее время все больше организаций используют систему DocBook для всей программной документации, в том числе и для документирования коммерческих продуктов.
Возможности DocBook
-
Формат DocBook условно делится на Book и Article по функциональному назначению. Book используется для подготовки большой технической документации, книг и т.д., тогда как вид Article удобно использовать для статей.
Заготовка для Article DocBook Автоматически сгененрированная Altova XML Spy *<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<?xmlspysps http://www.altova.com/sps/Template/Publishing/docbook.sps?>
<article>
<title>Article Title</title>
<sect1>
<title>Section1 Title</title>
<para>Text</para>
</sect1>
</article>Заготовка для Book DocBook<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<?xmlspysps http://www.altova.com/sps/Template/Publishing/docbook.sps?>
<book>
<bookinfo>
<title>Book Title</title>
<author>
<firstname>Author First Name</firstname>
<surname>Author Last Name</surname>
</author>
<publisher>
<publishername>Publisher Name</publishername>
</publisher>
<isbn>ISBN#</isbn>
<copyright>
<year>Copyright Year</year>
</copyright>
</bookinfo>
<part>
<title>Part Title</title>
<chapter>
<title>Chapter Title</title>
<sect1>
<title>Section1 Title</title>
<para>Text</para>
</sect1>
</chapter>
</part>
</book> -
Существуют специализированные XML-редакторы, и большинство из них умеет работать с DocBook. Теоретически они предоставляют больший сервис по сравнению с обычными текстовыми редакторами: например, автоматически проверяют правильность вводимых тэгов, предлагают выбор тэгов в зависимости от контекста.
-
Благодаря открытому проекту DocBook XSLs, представляющему собой набор прекрасно настраиваемых DSSSL и XSL stylesheets, и существованию ряда как бесплатных, так и коммерческих инструментов для преобразования XML, вы легко (одной кнопкой) получаете свою документацию в различных форматах, в том числе и подготовленной для печати (в формате PDF).
Norman Walsh разработал модель публикации DocBook.
-
Внешний вид выходных форматов (HTML, CHM, PDF) легко настраивается с помощью CSS, а также через специальную XSL - Driver XSL.
-
DocBook определяет большое количество тегов, что может быть не очень удобно, но так как это XML формат, можно его упростить. Существует также модификация DocBook - Simple DocBook (упрощенный вариант)
-
Возможность модульной подготовки документации. Конечный выходнной файл легко собирается из нескольких отдельных XML файлов. Также возможна вставка текстов, листингов программ и всего чего захотите из внеших файлов. DocBook удобно использовать совместно с любой системой контроля версий.
-
И наоборот, DocBook позволяет из одного исходного документа создавать выходные документы не только в разных выходных форматах , но и с разным содержимым.
Например, вы можете из одного исходного текста выпускать техническую документацию для разных модификаций вашей продукции, а в случае документации на программное обеспечение — инструкции для эксплуатации на разных системно-аппаратных платформах.
Предопределенные возможности словаря DocBook:
-
Библиография (список литературы)
-
Перекрестные ссылки (как внутри документа, так и между документами)
-
Сноски, примечания ....
-
Словари (список терминов)
-
Графика (вставка различных изображений)
-
Индексы
-
Таблицы, списки
-
Набор тегов для описания программ и GUI.
Как создавать и редактировать DocBook
Основной инструмент редактирования DocBook - обычный текстовый редактор, например, замечательный UltraEdit, так как DocBook является подмножеством XML и представляет собой обыкновенный текстовый документ с разметкой, аналогично документу HTML.
Подойдет также любой XML редактор, например Altova XML Spy (коммерческий).
В редакторе создается DocBook текст, затем с помощью XSLT процессора получаем данный текст в выходном формате HTML, CHM... Для получения PDF используем еще и XSL-FO процессор.
Преимущества DocBook
Система DocBook:
-
встроенные возможности для работы с различным содржанием;
-
сопровождается системой DocBookStylesheets, позволяющей используя различные инструменты преобразовывать DocBook контент в различные выходные форматы - HTML pages, PDF files, Microsoft HTMLHelp, UNIX man pages, JavaHelp, TeX, Texinfo, и RTF;
существует набор инструментов (free), которые также позволяют конвертировать различные форматы (man pages, HTML documents, Javadoc, plain text, Texinfo files, and OpenOffice Writer documents) в DocBook
-
хорошо документирована (DocBookThe Definitive Guide и DocBookTutorials, к сожалению, не на русском языке)
-
широко внедрена и протестирована такими коммерческими организациями как Sun, Microsoft, Hewlett-Packard, Novell, SCO, Caldera, и Red Hat, open-source группами - the KDE и GNOME, FreeBSD, Debian, и Linux documentation projects и the Darwin Documentation Project (Apple).
-
полностью открытый (open-source) стандарт
-
прекрасно настраиваемая и расширяемая система
Автоматически сгененрированная Altova XML Spy
Срочно русифицируйте DocBookThe Definitive Guide и DocBookTutorials
мы бы рады Вам помочь, но некогда.
Zdravstvuite,
Ya bi xotel uznat` kak mojno ispol`zovat` atribut dir="rtl" ?
Poderjivaetsya li vsemya versiyami DocBook-a ?
Spasibo
Как иожно составить документ на DocBook в соотвествии с гост 19.402-200
Эля,
так как наш гост довольно сильно отличается от "ненаших"
стандартов и общепринятых правил, по которым сделан DocBook,
то для того, чтобы документ на DocBook выглядел в соответсвии с гост
придется довольно много написать дополнительных xsl-шаблонов настройки системы
Я занималась этим для http://vediti.ru, писала xsl-шаблоны
для формирования документации DocBook в формате PDF в соответствии с гостом
Julia, если это не коммерческая тайна, хотелось бы узнать следующее:
1. К какой базовой версии docbook-xsl вы писали свой customization layer для Ведити?
2. К какому FO-процессору была осуществлена привязка (FOP, XEP, Antenna House, другой (какой))? Думаю, что этот вопрос для вас, как автора xsl-fo кода, очевиден :)
3. К каким именно ГОСТам писался код? Судя по всему, что-то из 2.x, 19.x, 34.x или других?
4. Сколько по времени (если пересчитать все в full time загрузке) у вас заняло написание шаблона? Будем брать в расчет один любой документ, в которым НЕ применялся , а писался "с нуля" - только, пожалуйста, приведите название типа документа по ГОСТу. И сколько строк xsl (килобайт) кода по нему у вас получилось (только ориентировочно - хотелось бы представлять объем кода)?
5. Каким образом вы оговаривали/ограничивали использование docbook элементов при написании самой документации. Ведь все элементы обработать невозможно физически (их там около 400 - даже в стандартном docbook xsl не все они обработаны).
6. Есть ли компании, которые уже применяют ваши шаблоны в своей работе?
Спасибо.
На заметку - Docbook можно перегонять в формат популярных сейчас электронных кних вроде epub - чтобы все красиво смотрелось после обработки xml документа пишите внутри тега book lang="ru" и будет счастье))) Вместо Chapter 1. Написано "Глава 1". Собственно мне Docbook понравился.
Отправить новый комментарий