DocBook
DocBook jest aplikacją standardu SGML / XML i zawiera własny DTD , który jest wykorzystywany bardziej w obszarze dokumentacji technicznej, zwłaszcza do dokumentowania wszelkiego rodzaju materiałów i programów komputerowych. W OASIS (pierwotnie SGML Open ) istnieje Komitet Techniczny DocBook, który utrzymuje i aktualizuje ten standard. DocBook początkowo był SGML DTD, ale od wersji 4 istnieje odpowiednik XML.
Jako język semantyczny DocBook pozwala nam tworzyć dokumenty w neutralnym formacie, niezależnie od prezentacji. W tym neutralnym formacie gromadzona jest zarówno treść, jak i jej logiczna struktura, co pozwala na jej automatyczną publikację (prezentację) w wielu formatach: HTML , XHTML , EPUB , PDF , strony podręcznika , Pomoc HTML itp., po prostu przez stosowanie „szablonów” prezentacji bez konieczności wprowadzania jakichkolwiek zmian w oryginalnym dokumencie.
Wprowadzenie
DocBook jest językiem XML . W obecnej wersji (5.0) jest formalnie zdefiniowany przez schemat RELAX NG z wbudowanymi regułami Schematron . ( Schemat XML +Schematron i DTD również istnieją , ale są one obecnie uważane za niestandardowe).
Dokumenty DocBook nie opisują wyglądu ani prezentacji ich zawartości, a jedynie znaczenie tych treści. Na przykład, zamiast wskazywać dokładnie, jak określona fraza będąca tytułem rozdziału ma być wyświetlana, DocBook po prostu wskazuje, że ta fraza jest tytułem rozdziału. Następnie decyzja, gdzie i jak wyświetlić tytuł na stronie, będzie zadaniem zewnętrznego narzędzia do przetwarzania lub aplikacji przeglądarki, którą obsługujemy.
DocBook posiada dużą liczbę etykiet opisujących elementy semantyczne, w tym te w trzech głównych kategoriach: strukturalnej, blokowej i liniowej.
Znaczniki strukturalne określają ogólną charakterystykę treści. Na przykład element book określa, że jego elementy podrzędne będą częściami książki: tytuły , rozdziały , glosariusze , dodatki i tak dalej. Niektóre znaczniki strukturalne to:
- zestaw :
- książka :
- część :
- artykuł :
- rozdział :
- dodatek :
- dedykacja :
Elementy strukturalne mogą zawierać inne elementy strukturalne, ale zawsze muszą to być elementy pierwszego poziomu w dokumencie DocBook.
Znaczniki blokowe reprezentują elementy takie jak akapity , listy itp. i nie wszystkie muszą zawierać w sobie tekst. Te elementy blokowe są zwykle ułożone sekwencyjnie i będą wyświetlane „pod” sobą. (Chociaż „poniżej” może się różnić w zależności od otoczenia kulturowego: w większości języków zachodnich „poniżej” będzie oznaczać dół na stronie; ale w niektórych językach wschodnich „poniżej” będzie oznaczać kolumnę od prawej do lewej. Specyfikacja DocBook jest całkowicie neutralny dla tego typu pojęć właściwych dla każdej kultury.)
Znaczniki linii reprezentują elementy, takie jak podkreślone litery , hiperłącza itp., i są często stosowane do fragmentów tekstu w elemencie blokowym, co zwykle powoduje, że narzędzie renderujące stosuje do nich pewien rodzaj specjalnego traktowania typograficznego. (Specyfikacja DocBook wskazuje, że oczekuje się specjalnego traktowania typograficznego, ale nie wskazuje dokładnie, jaka konkretna obróbka powinna zostać zastosowana. Na przykład „podkreślone litery” niekoniecznie oznaczają „litery pisane kursywą”; narzędzie układu może wybrać zwiększenie czcionki rozmiar lub zmieniając kolor tła.)
Przykłady
Artykuł DocBook SGML/XML
<?xml version="1.0" standalone="no"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/ docbook/xml/4.2/docbookx.dtd">
<article lang= "pl" >
<title> Tworzenie dokumentacji technicznej za pomocą
DocBook </title>
<articleinfo>
<author>
<imię> Leonardo </imię>
<nazwisko> Rycerz </nazwisko>
</autor>
</articleinfo>
<sekcja id= "art-intro" >
<title> Wprowadzenie </title>
<para> DocBook to implementacja standardu
SGML/XML i zawiera własny DTD, który jest używany w
wyróżnia się obszar dokumentacji
technika, zwłaszcza do dokumentowania wszelkiego rodzaju
materiały i programy komputerowe, dla większych
informacje zobacz tutaj <ulink
url= "http://www.oasis-open.org/docbook/" /> . </para>
</section>
</artykuł>
Z semantycznego punktu widzenia dokument ten jest „artykułem” (artykułem) z odpowiednim „tytułem” (tytułem). „Autor” (autor) jest wyraźnie zidentyfikowany, a inny rodzaj dodatkowej „informacji” (artykułinfo) również mógł zostać uwzględniony. Ten przykładowy artykuł składa się z jednej „sekcji”, również z odpowiednim „tytułem”; oraz z „akapitami” tekstu.
Książka w DocBook SGML/XML
<?xml version="1.0" standalone="no"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/ docbook/xml/4.2/docbookx.dtd">
<book lang= "pl" id= "simple_book" >
<title> Bardzo prosta książka </title>
<chapter id= "chapter_1" >
<title> Rozdział 1 </title>
<para> Witaj świecie! </para>
<para > Mam nadzieję, że masz dobry dzień! </para>
</rozdział>
<chapter id= "chapter_2" >
<title> Rozdział 2 </title>
<para> Witaj ponownie, świecie! </para>
</rozdział>
</książka>
Z semantycznego punktu widzenia dokument ten jest „książką” (książką) z „tytułem” (tytułem); Składa się z dwóch „rozdziałów”, z których każdy ma własny „tytuł”, a te „rozdziały” zawierają „paragrafy” tekstu. Wszystko to wyrażone w formacie łatwo zrozumiałym dla ludzi.
Schematy i walidacja
Zarówno różne elementy tworzące DocBook, jak i zasady ich łączenia (na przykład, że każdy element „book” musi zawierać element „title” przed jakimkolwiek innym elementem strukturalnym, takim jak „chapter”), są formalnie zdefiniowane w schemacie (schemacie), w taki sposób, że programy komputerowe mogą zweryfikować dokument względem wspomnianego schematu, a tym samym określić, w każdym momencie, czy dokument jest prawidłowo uformowany .
Pisanie
Dokumenty DocBook, podobnie jak dokumenty XML, można pisać dowolnym edytorem tekstu, chociaż zawsze łatwiej będzie je napisać za pomocą edytora XML, a nawet lepiej, za pomocą edytora XML, który ma zintegrowane określone schematy DocBook. Na przykład Emacs , pracujący w trybie nXML lub XML Copy Editor .
Istnieje również więcej edytorów „wizualnych” ( WYSIWYG ), takich jak XMLmind Editor („XXE”), Oxygen XML Editor , które mogą renderować dokumenty DocBook poprzez formatowanie ich za pomocą CSS ; o Syntext Serna , który wykonuje transformacje XSL w czasie rzeczywistym.
Przetwarzanie końcowe
Ponadto, jako dokumenty XML, dokumenty DocBook mogą być automatycznie sprawdzane i przetwarzane przez dowolne narzędzie lub język programowania obsługujący XML.
Narzędzia te są często używane do tworzenia dokumentów wyjściowych w szerokiej gamie formatów, zwykle przy użyciu „arkuszy stylów” DocBook XLS , typu arkusza XSLT, który pozwala nam przekształcać dokumenty DocBook do innych formatów, takich jak HTML , PDF itp., pozwalając na konwersje tak wyrafinowane, jak automatyczne generowanie spisów treści, glosariuszy i/lub indeksów, a nawet pozwalając na wcześniejsze filtrowanie treści, wyodrębniając tylko niektóre części oryginalnego DocBooka.
Używa
DocBook jest powszechnie używany w kilku kontekstach, w szczególności w Linux Documentation Project, referencjach API GNOME i GTK+ oraz dokumentacji jądra Linuksa . Strony man Środowiska Operacyjnego Solaris są również generowane z dokumentów, które używają schematów DTD lub DocBook.
Historia
DocBook narodził się w 1991 roku ze wspólnego projektu HAL Computer Systems i O'Reilly & Associates , później ewoluował aż do powstania własnej organizacji (Grupa Davenport), by w 1998 roku być zarządzany przez konsorcjum SGML Open , która później stała się organizacją OASIS , w ramach której obecnie istnieje Komitet Techniczny DocBook , odpowiedzialny za utrzymanie standardu DocBook.
Specyfikacja DocBook jest dostępna zarówno w formacie SGML , jak i XML , definiowana jest zarówno przez dokument DTD , jak i schemat XML RELAX NG - W3C . Od wersji 5 schemat RELAX NG jest „normatywny”, pozostałe formaty są jedynie jego adaptacjami.
DocBook narodził się jako aplikacja SGML, ale obecnie jego adaptacja XML zastąpiła go w większości zastosowań. (Od wersji 4 SGML DTD, wersja XML DTD poszła swoją własną drogą i własnym schematem numeracji.)
Początkowo korzystanie z formatu DocBook ograniczało się praktycznie do grupy firm biorących udział w jego projektowaniu, ale teraz został on szeroko przyjęty przez całą społeczność wolnego oprogramowania i przez szerokie spektrum firm, z mnóstwem narzędzi, które wykorzystują z tego.
Norman Walsh i zespół programistów DocBook Open Repository utrzymują zestaw arkuszy stylów DSSSL i XSL do generowania wersji PDF i HTML dokumentów DocBook (a także do opracowywania innych formatów, w tym pomocy HTML i stron podręcznika man ). Walsh jest także głównym autorem DocBook: The Definitive Guide , oficjalnej dokumentacji DocBook. Ta książka jest dostępna na licencji GFDL lub w wersji drukowanej ( ISBN 1565925807), wydana przez O'Reilly & Associates ”.
Referencje
Linki zewnętrzne
- Docbook wiki
- DocBook w OASIS (Organizacja na rzecz Rozwoju Standardów Informacji Strukturalnej)
- Projekt otwartego repozytorium DocBook w SourceForge
- DocBook Validator + Transformer w SourceForge
- Live-DTD w DocBooku
- DocBook: ostateczny przewodnik
- Filtry DocBook — czytaj i pisz DocBook w formacie XML za pomocą OpenOffice.org
- Pierwsze kroki z DocBook w OpenOffice , dla tych, którzy chcą edytować DocBook z OpenOffice.org.
- Edytor <oXygen/> DocBook (komercyjny)
- Pisanie i tworzenie dokumentacji (pomoc HTML) za pomocą DocBook
- Ta praca zawiera pochodne tłumaczenie angielskiej Wikipedii „ DocBook ”, wydanej przez jej wydawców na licencji GNU Free Documentation License oraz Creative Commons Attribution-ShareAlike 3.0 Unported License .