DocBook

редактировать
DocBook
Расширение имени файла .dbk,.xml
Тип интернет-носителя application / docbook + xml
РазработаноOASIS
Тип форматаязык разметки
Расширен сSGML, XML
Standard 5.1 (ноябрь 2016 г.),. 4.5 (октябрь 2006 г.)
Открытый формат ?Да

DocBook - это семантический язык разметки для технической документации. Первоначально он предназначался для написания технических документов, связанных с компьютерным оборудованием и программным обеспечением, но его можно использовать для любого другого вида документации.

В качестве семантического языка DocBook позволяет пользователям создавать содержимое документа в презентационно-нейтральная форма, фиксирующая логическую структуру содержания; этот контент затем может быть опубликован в различных форматах, включая HTML, XHTML, EPUB, PDF, справочные страницы и HTML Help, не требуя от пользователей вносить какие-либо изменения в источник. Другими словами, когда документ написан в формате DocBook, его можно легко переносить в другие форматы, а не переписывать.

Содержание
  • 1 Дизайн
    • 1.1 Образец документа
    • 1.2 Схемы и проверка
  • 2 Разработка и обработка
  • 3 История
    • 3.1 До DocBook v5.0
  • 4 Форматы вывода
  • 5 Упрощенный DocBook
  • 6 См. Также
  • 7 Ссылки
  • 8 Дополнительная литература
  • 9 Внешние ссылки
Дизайн

DocBook - это язык XML. В текущей версии (5.x) язык DocBook формально определяется схемой RELAX NG со встроенными правилами Schematron. (Существуют также версии схемы W3C XML Schema + Schematron и Document Type Definition (DTD), но они считаются нестандартными.)

Как На семантическом языке документы DocBook описывают не то, как «выглядит» их содержимое, а скорее значение этого содержимого. Например, вместо того, чтобы объяснять, как аннотация статьи может быть визуально отформатирован, DocBook просто говорит, что конкретный раздел является аннотацией. Инструмент или приложение для внешней обработки должны решить, где на странице должен находиться реферат и как он должен выглядеть, и следует ли его вообще включать в окончательный результат.

DocBook предоставляет огромное количество тегов семантических элементов. Они делятся на три большие категории: структурные, блочные и встроенные.

Структурные теги определяют широкие характеристики их содержимого. Например, элемент bookуказывает, что его дочерние элементы представляют части книги. Сюда входят заголовок, главы, глоссарии, приложения и так далее. Структурные теги DocBook включают, но не ограничиваются:

  • set: названная коллекция из одной или нескольких книгили статей, может быть вложена в другие наборы
  • книга: названная коллекция из глав, статейи / или частейс дополнительными глоссариями, приложениями и т. Д.
  • часть: Названная коллекция из одной или нескольких глав- может быть вложена с другими частями и может иметь специальный вводный текст
  • article: Названная ненумерованная коллекция блоков уровня elements
  • chapter: названная пронумерованная коллекция элементов уровня блока - главы не требуют явных номеров, номер главы - это количество элементов предыдущей главы в XML-документе плюс 1
  • приложение: Содержит текст, который представляет собой приложение
  • посвящение: текст представляет собой посвящение содержащегося в нем структурного элемента

Структурные элементы могут содержать другие структурные элементы. Структурные элементы - единственные разрешенные элементы верхнего уровня в документе DocBook.

Теги уровня блока - это такие элементы, как абзацы, списки и т. Д. Не все эти элементы могут непосредственно содержать текст. Последовательные элементы уровня блока визуализируются один за другим. После в этом случае может отличаться в зависимости от языка. На большинстве западных языков слово «после» означает следующее: абзацы текста печатаются по странице. Системы письма других языков могут иметь разную направленность ; например, в японском языке абзацы часто печатаются в нисходящих столбцах, причем столбцы идут справа налево, поэтому «после» в этом случае будет слева. Семантика DocBook полностью нейтральна для такого рода языковых концепций.

Теги встроенного уровня - это такие элементы, как выделение, гиперссылки и т. Д. Они переносят текст внутри элемента уровня блока. Эти элементы не вызывают разрыв текста при отображении в формате абзаца, но обычно они заставляют обработчик документов применять к вложенному тексту какую-то особую типографскую обработку, изменяя шрифт, размер или аналогичные атрибуты. (Спецификация DocBook действительно говорит, что ожидает другого типографского оформления, но не предлагает конкретных требований относительно того, что это может быть.) То есть процессору DocBook не нужно преобразовывать тег focusкурсивом. Процессор DocBook на основе чтения может увеличить размер слов, или процессор на основе текста может использовать полужирный шрифт вместо курсива.

Образец документа

Очень простая книгаГлава 1Привет, мир!Я надеюсь, что ваш день протекает великолепно!Глава 2И снова здравствуйте, мир!

Семантически этот документ представляет собой «книгу» с «заголовком», которая содержит две «главы», каждая со своими собственными «заголовками». Эти «главы» содержат «абзацы», в которых есть текст. Разметка на английском языке хорошо читается.

Более подробно, корневой элемент документа - это книга. Все элементы DocBook находятся в пространстве имен XML, поэтому корневой элемент имеет атрибут xmlns для установки текущего пространства имен. Кроме того, корневой элемент документа DocBook должен иметь версию, указывающую версию формата, на котором основан документ.

(XML-документы могут включать элементы из нескольких пространств имен одновременно. Для простоты пример это не иллюстрирует.)

A элемент bookдолжен содержать titleили infoэлемент, содержащий title. Это должно быть до любых дочерних структурных элементов. После заголовка идут структурные дочерние элементы, в данном случае два элемента chapter. Каждый из них должен иметь заголовок. Они содержат блочные элементы para, которые могут содержать произвольный текст и другие встроенные элементы, такие как выделениево втором абзаце первой главы.

Схемы и проверка

Правила формально определены в XML-схеме DocBook . Соответствующие инструменты программирования могут проверять XML-документ (DocBook или другой) на соответствие его соответствующей схеме, чтобы определить, не соответствует ли (и где) документ этой схеме. Инструменты редактирования XML также могут использовать информацию схемы, чтобы в первую очередь избежать создания несоответствующих документов.

Создание и обработка

Поскольку DocBook - это XML, документы можно создавать и редактировать с помощью любого текстового редактора. Выделенный также является функциональным редактором DocBook. DocBook предоставляет файлы схемы для популярных языков схем XML, поэтому любой редактор XML, который может обеспечить завершение содержимого на основе схемы, может сделать это для DocBook. Многие или WYSIWYG имеют возможность редактировать DocBook как текстовый процессор.

Поскольку DocBook соответствует четко определенной схеме XML, документы можно проверять и обрабатывать с помощью любого инструмента или языка программирования, которые включает поддержку XML.

История

DocBook зародился в 1991 году в дискуссионных группах на Usenet и со временем стал совместным проектом HAL Computer Systems и O ' Reilly Associates и в конечном итоге породила свою собственную организацию по техническому обслуживанию (Davenport Group), прежде чем перейти в 1998 году в консорциум SGML Open, который впоследствии стал OASIS. DocBook в настоящее время поддерживается Техническим комитетом DocBook в OASIS.

DocBook доступен в формах SGML и XML, как DTD. Доступны формы RELAX NG и W3C XML Schema версии XML. Начиная с DocBook 5, версия RELAX NG является «нормативной» формой, из которой создаются другие форматы.

DocBook изначально начинался как приложение SGML, но было разработано эквивалентное приложение XML, которое теперь заменило приложение SGML в большинстве случаев. (Начиная с версии 4 SGML DTD, XML DTD продолжал использовать эту схему нумерации версий.) Изначально DocBook использовала ключевая группа компаний-разработчиков программного обеспечения, поскольку их представители участвовали в его первоначальной разработке. В конце концов, однако, DocBook был принят сообществом открытого исходного кода, где он стал стандартом для создания документации для многих проектов, включая FreeBSD, KDE, GNOME desktop. документация, справочные материалы по GTK+ API, документация по ядру Linux и работа Linux Documentation Project.

Pre DocBook v5.0

До DocBook 5 DocBook определялся нормативно с помощью определения типа документа (DTD). Поскольку DocBook изначально создавался как приложение SGML, DTD был единственным доступным языком схемы. Форматы DocBook 4.x могут быть SGML или XML, но версия XML не имеет собственного пространства имен.

Форматы DocBook 4.x должны были жить в рамках ограничений, определяемых DTD. Наиболее существенным ограничением было то, что имя элемента однозначно определяет его возможное содержимое. То есть элемент с именем infoдолжен содержать одинаковую информацию независимо от того, где он находится в файле DocBook. Таким образом, в DocBook 4.x существует много видов информационных элементов: bookinfo, chapterinfoи т. Д. У каждого из них немного разная модель контента, но они разделяют часть своего контента. модель. Кроме того, они повторяют контекстную информацию. Элемент infoкниги таков, потому что он является прямым потомком книги; его не нужно называть специально для человеческого читателя. Однако, поскольку формат был определен DTD, он должен был иметь соответствующее название. Корневой элемент не имеет или не нуждается в версии, поскольку версия встроена в объявление DTD в верхней части документа до DocBook 5.

Документы DocBook 4.x несовместимы с DocBook 5, но могут быть преобразованы в документы DocBook 5 с помощью таблицы стилей XSLT. Один (db4-upgrade.xsl) предоставляется как часть пакета схемы и спецификации DocBook 5.

Форматы вывода

Файлы DocBook используются для подготовки файлы вывода в большом количестве форматов. Почти всегда это достигается с помощью таблиц стилей DocBook XSL. Это таблицы стилей XSLT, которые преобразуют документы DocBook в несколько форматов (HTML, XSL-FO для последующего преобразования в PDF и т. Д..). Эти таблицы стилей могут быть достаточно сложными для создания оглавлений, глоссариев и указателей. Они могут контролировать выбор определенных обозначенных частей главного документа для создания различных версий одного и того же документа (например, «учебное пособие» или «краткое справочное руководство», где каждая из них состоит из подмножества материала). Пользователи могут написать свои собственные настраиваемые таблицы стилей или даже полноценную программу для преобразования DocBook в соответствующий выходной формат, как того требуют их потребности.

Норман Уолш и команда разработчиков проекта DocBook поддерживают ключевое приложение для создания вывода из исходных документов DocBook: набор таблиц стилей XSL (а также устаревший набор DSSSL таблиц стилей), которые могут создавать высококачественный HTML и печатать (FO /PDF ) вывод, а также вывод в других форматах, включая RTF, справочные страницы и справка HTML.

- это формат вывода HTML с фрагментами в таблицах стилей DocBook XSL, который был представлен в версии 1.76.1. Документация для веб-справки также предоставляет пример веб-справки и является частью дистрибутива DocBook XSL.

Основными функциями являются полностью основанная на CSS разметка страницы, поиск по справочной информации и оглавление в виде сворачиваемого дерева. Поиск имеет основание, выделение совпадений, явную оценку страниц и стандартный многоязычный токенизатор . Поиск и оглавление находятся на панели, которая отображается как набор фреймов , но фактически реализована с помощью тегов div и файлов cookie (так что это прогрессивно).

Упрощенный DocBook

DocBook предлагает большое количество функций, которые могут оказаться непосильными для нового пользователя. Для тех, кто хочет удобство DocBook без крутой кривой обучения, был разработан Simplified DocBook. Это небольшая часть DocBook, предназначенная для отдельных документов, таких как статьи или официальные документы (т. Е. «Книги» не поддерживаются). Упрощенный DocBook DTD в настоящее время находится в версии 1.1.

См. Также
Ссылки
Дополнительная литература

Норман Уолш - главный автор книги DocBook: The Definitive Guide, официальной документации DocBook. Эта книга доступна в Интернете по адресу GFDL, а также доступна в печатном виде.

Внешние ссылки
Последняя правка сделана 2021-05-17 10:40:41
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте