Obsah
DocBook umožňuje vytvářet několik druhů dokumentů. Mezi ty
nejpoužívanější patří knihy (book),
články (article), FAQ (qandaset) a referenční stránky (refentry). Nyní se podíváme na základní
struktury, které se v těchto typech dokumentů používají. Detailní
popis naleznete v [TDG].
Kniha je asi nejpoužívanější typ dokumentu, který se
v DocBooku vytváří. Struktura knihy je poměrně volná a vyhoví
většině požadavků. Jednak kniha může obsahovat metainformace (bookinfo) a různé pomocné části jako
věnování (dedication) a tiráž
(colophon). Dále se kniha skládá ze
tří druhů elementů:
Sem patří zejména obsah (ToC), seznamy obrázků, tabulek, příkladů
apod. (LoT) a rejstřík (index). Tyto elementy se většinou
nepoužívají, protože obsahy i rejstřík lze vygenerovat
automaticky.
Každá kniha se může skládat z několika částí (part) a referencí (reference).
Části knihy se pak skládají z jednotlivých komponent. U jednodušších knih nemusíme části používat, komponenty můžeme do knihy vložit přímo.
Sem patří elementy, které dělí knihu na úrovni kapitol –
předmluva (preface), kapitoly
(chapter), přílohy (appendix), slovníček (glossary) a seznam literatury (bibliography). Pokud chceme sdružit více
článků do jednoho celku, můžeme jako komponentu použít i článek
(article). Jednotlivé komponenty se
skládají z elementů, které jsou popsány dále.
Více souvisejících knih můžeme zahrnout do jedné sady (set).
Komponenty knih (kapitoly, přílohy apod.) a články můžeme dále strukturovat pomocí následujících elementů:
sect1–sect5Pět úrovní sekcí, při vkládání sekcí do sebe nemůžeme přeskočit nějakou sekci v hierarchii.
sectionRekurzivní element, který umožňuje vytváření víceúrovňových sekcí rekurzivním zanořováním.
simplesectSekce, kterou již nelze dále rozdělit na podsekce.
bridgeheadSamostatný nadpis sekce, který neslouží jako kontejner pro další elementy nebo sekce.
refsect1–refsect3Sekce, které umožňují členit položky reference.
glossdiv, bibliodiv, indexdivElementy pro členění slovníčku, seznamu literatury a rejstříku.
K většině komponent a vyšších elementů můžeme přidat
bibliografické informace jako autor, název, copyright apod. Tyto
informace se zapisují do elementu *info, kde * je název příslušného elementu. Například
informace o knize se zapisují do elementu bookinfo.
Blokové elementy jsou ty elementy, které text dělí na odstavce a podobné úseky. Bývá u nich obvyklé, že tvoří samostatný odstavec – před i za nimi je zalomená řádka. Oproti tomu existují ještě in-line elementy, které jen vyznačují část textu odstavce a po zformátování se obvykle projeví jen změnou písma.
K dispozici máme několik druhů seznamů:
itemizedlistBěžný druh seznamu s odrážkami.
orderedlistČíslovaný seznam.
variablelistSeznam s pojmů a jejich definic.
Kromě těchto nejpoužívanějších seznamů jsou k dispozici
i některé další – seznam popisů k nějakému výpisu
(calloutlist), seznam pojmů ze
slovníku (glosslist) a jednoduché
seznamy simplelist a segmentedlist.
Pro vkládání různých výstrah a upozornění můžeme použít
následující elementy – caution, important, note, tip
a warning.
Všechny tyto elementy mohou obsahovat nepovinný nadpis (title) a za ním libovolné elementy pro
odstavce textu.
Následující elementy zachovávají konce řádků tak, jak jsou
uvedeny ve zdrojovém XML dokumentu. To je výhodné například
u výpisu programů apod. DocBook neobsahuje ekvivalent HTML tagu
br pro ukončení řádky, proto mají
tato prostředí svůj velký význam.
addressElement pro zápis poštovních adres. Kromě toho že zachovává konce řádek v něm můžeme použít další elementy, pro vyznačení jména, města, státu apod.
literallayoutElement zachovává konce řádků a většinou se zobrazuje normálním písmem.
programlistingElement určený pro zařazování výpisu programů, obvykle se zobrazuje neproporcionálním písmem.
screenElement obvykle zachycuje nějaký výstup z obrazovky apod.
screenshotSpeciální element pro zařazování sejmutých obrazovek. Obvykle obaluje obrázek.
synopsisElement obsahující popis syntaxe příkazu nebo funkce.
Pro vkládání příkladů, obrázků a tabulek slouží elementy
example, informalexample, figure, informalfigure, table a informaltable. Neformální verze neobsahují
nadpis. K praktickému vkládání obrázků a tabulek se ještě
vrátíme.
Rovnice lze vkládat pomocí elementů equation, informalequation a inlineequation. Rovnice se vkládají jako
obrázek a alternativní text. Pokud chceme do textu vkládat hodně
rovnic, je možné DocBook rozšířit o podporu jazyka MathML pro
zápis matematických výrazů.
Obrázky se vkládají pomocí elementů graphics, inlinegraphics, mediaobject a inlinemediaobject. Pokud chceme mít
u obrázků popis, musíme je vložit do elementu figure.
blockquoteDelší citace.
classsynopsisElement pro zápis definice třídy.
constructorsynopsisElement pro zápis konstruktoru a jeho parametrů.
cmdsynopsisPopis příkazu včetně všech voleb a parametrů.
destructorsynopsisElement pro zápis destruktoru a jeho parametrů.
epigraphKrátká citace na začátku kapitoly.
funcsynopsisElement pro zápis funkce a jejích parametrů.
highlightsSouhrn hlavních bodů knihy nebo komponenty.
methodsynopsisElement pro zápis metody a jejích parametrů.
msgsetMnožina souvisejících chybových hlášení.
procedureElement obsahuje kroky, které tvoří nějaký postup.
sidebarPoznámka na okraji (marginálie).
Inline elementy přiřazují význam jednotlivým částem textu. DocBook jich obsahuje opravdu mnoho a záleží na každém autorovi, jak přesně bude dokument značkovat. Jelikož přidávání elementů zdržuje psaní je dobré vždy vytvořit nějaký kompromis. Značkovat jen to, co skutečně potřebujeme – pokud například píšeme dokumentaci k nějakému API, je dobré v textu označovat názvy funkcí – tuto informaci pak můžeme využít při generování rejstříku. Pro snazší orientaci jsou elementy rozděleny do několika kategorií.
abbrevZkrácené slovo.
acronymZkratka.
emphasisZvýraznění textu.
footnotePoznámka pod čarou.
phraseOznačená část textu.
quoteText v uvozovkách.
trademarkObchodní značka.
anchorOznačuje místo v dokumentu.
citationCitace položky ze seznamu literatury.
citetitleNázev citovaného díla.
firsttermPrvní výskyt pojmu.
glosstermPojem ze slovníčku.
linkOdkaz na jiné místo dokumentu.
olinkOdkaz na jiný dokument zapsaný nepřímo.
ulinkOdkaz na URL adresu.
xrefOdkaz na jinou část dokumentu.
foreignphraseFráze v cizím jazyce.
wordaswordSlovo.
computeroutputVýstup generovaný počítačem.
literalText, který lze chápat jako literál.
markupZnačkování, které má být zobrazeno tak, jak je zapsáno.
promptŘetězec označující vstupní pole na obrazovce.
replaceableText, který má být podle potřeby nahrazen uživatelem.
sgmltagElement pro zápis SGML/XML elementů, tagů, atributů apod.
userinputText zadaný uživatelem.
codeKousek programového kódu.
uriURI adresa.
inlineequationMatematický výraz.
subscriptDolní index.
superscriptHorní index.
accelOznačuje klávesovou zkratku uvnitř menu.
guibuttonText na tlačítku.
guiiconText nebo obrázek vystupující jako ikona.
guilabelText na popisce.
guimenuNázev menu.
guimenuitemKoncová položka menu.
guisubmenuNázev podmenu.
keycapText napsaný na klávese.
keycodeKód určité klávesy.
keycomboKombinace kláves.
keysymSymbolické jméno klávesy.
menuchoiceVýběr z menu.
mousebuttonTlačítko myši.
shortcutKlávesová zkratka odpovídající příkazu v menu.
actionOdezva na nějakou událost.
codeKousek programového kódu.
classnameNázev třídy.
constantKonstanta.
errorcodeChybový kód.
errornameChybové hlášení.
errortypeDruh chyby.
exceptionnameNázev výjimky.
functionNázev funkce, rutiny, metody.
interfaceČást uživatelského rozhraní.
interfacedefinitionNázev formální specifikace uživatelského rozhraní.
interfacenameNázev rozhraní (API).
literalText, který lze chápat jako literál.
methodnameNázev metody.
msgtextText hlášení.
parameterParametr.
replaceableText, který má být podle potřeby nahrazen uživatelem.
returnvalueHodnota vrácená funkcí.
structfieldPoložka struktury/záznamu.
structnameNázev struktury/záznamu.
symbolNázev, který je před zpracováním nahrazen hodnotou.
tokenJednotka určená ke zpracování.
typeKlasifikace hodnoty.
varnameNázev proměnné.
applicationNázev aplikace.
commandPříkaz.
envarProměnná prostředí.
filenameNázev souboru.
medialabelNázev média (diskety, pásky apod.).
optionVolba příkazu.
parameterParametr.
promptŘetězec označující vstupní pole na obrazovce.
systemitemPoložka nebo pojem svázaný se systémem.
applicationNázev aplikace.
databaseDatabáze.
emailE-mailová adresa.
filenameNázev souboru.
hardwareFyzická součást počítače.
inlinegraphics, inlinemediaobjectObrázek vložený přímo do textu.
optionalNepovinná informace.
remarkKomentář, který se má zobrazovat v pracovních verzích dokumentu.
DocBook obsahuje mnoho předdefinovaných entit, které můžeme používat pro zápis neobvyklých znaků. Kompletní přehled lze najít v DTD pro DocBook nebo v [TDG]. Některé nejpoužívanější entity jsou shrnuty v tabulce 3.1 – „Nejběžnější entity“.
Tabulka 3.1. Nejběžnější entity
| Entita | Znak | Popis |
|---|---|---|
– | – | krátká pomlčka |
— | — | dlouhá pomlčka |
… | … | tři tečky |
α | α | řecké písmeno „alfa“ |
½ | ½ | 1/2 |
© | © | znak copyrightu |
® | ® | registrovaná značka |
± | ± | |
§ | § | paragraf |
„ | „ | české uvozovky (jednodušší je
zápis uvozovek pomocí elementu quote) |
“ | “ |