DocBook - DocBook

DocBook
Расширение имени файла
.dbk, .xml
Тип интернет-СМИ
приложение / docbook + xml
РазработанОАЗИС
Тип форматаязык разметки
Расширен сSGML, XML
Стандарт5.1 (ноябрь 2016 г.),
4.5 (октябрь 2006 г.)
Открытый формат ?да

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

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

дизайн

DocBook - это XML язык. В текущей версии (5.x) язык DocBook формально определяется РЕЛАКС НГ схема со встроенным Схематрон правила. (Это также Схема W3C XML + Schematron и Определение типа документа (DTD) доступны версии схемы, но они считаются нестандартными.)

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

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

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

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

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

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

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

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

 <?xml version="1.0" encoding="UTF-8"?> <книга xml: id ="simple_book" xmlns ="http://docbook.org/ns/docbook" версия ="5.0">   <title>Очень простая книга</title>   <глава xml: id ="глава 1">     <title>Глава 1</title>     <para>Привет мир!</para>     <para>Я надеюсь, что твой день продолжается <emphasis>великолепно</emphasis>!</para>   </chapter>   <глава xml: id ="Глава 2">     <title>Глава 2</title>     <para>И снова здравствуйте, мир!</para>   </chapter> </book>

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

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

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

А книга элемент должен содержать заглавие, или Информация элемент, содержащий заглавие. Это должно быть до любых дочерних структурных элементов. После заголовка идут структурные дочерние элементы, в данном случае два глава элементы. У каждого из них должен быть заглавие. Они содержат параграф блочные элементы, которые могут содержать свободный текст и другие встроенные элементы, такие как акцент во втором абзаце первой главы.

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

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

Авторинг и обработка

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

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

История

DocBook появился в 1991 году в дискуссионных группах по Usenet и в итоге стал совместным проектом Компьютерные системы HAL и O'Reilly & Associates и в конечном итоге породила свою собственную организацию технического обслуживания (Davenport Group), прежде чем переехать в 1998 году в SGML Открыть консорциум, который впоследствии стал ОАЗИС. DocBook в настоящее время поддерживается Технический комитет DocBook в OASIS.[3]

DocBook доступен в обоих SGML и XML формы, как DTD. РЕЛАКС НГ и Схема W3C XML доступны формы версии XML. Начиная с DocBook 5, версия RELAX NG является «нормативной» формой, из которой создаются другие форматы.

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

Предварительно DocBook v5.0

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

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

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

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

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

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

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

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

Упрощенный документ DocBook

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

Смотрите также

использованная литература

  1. ^ Что такое DocBook?
  2. ^ а б Проект DocBook WebHelp
  3. ^ Начало работы с DocBook
  4. ^ Йирка Косек, Норман Уолш, Дик Гамильтон и Майкл Смит, DocBook V5.0: Руководство по переходу, 16 июня 2009 г., Преобразование документов DocBook V4.x в DocBook V5.0
  5. ^ Веб-справочная документация
  6. ^ Упрощенный документ DocBook

дальнейшее чтение

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

  • Норман Уолш (июнь 2010 г.). DocBook 5: Полное руководство (2-е изд.). O'Reilly Associates. ISBN  978-0-596-80502-9.
  • Боб Стейтон (2005). DocBook XSL: полное руководство (3-е изд.). Sagehill Enterprises. ISBN  0-9741521-2-9.
  • Джо Брокмайер (2001). Публикация DocBook - лучший способ создавать профессиональные документы. Серия Linux от Prima Tech. ISBN  0-7615-3331-1.

внешние ссылки