DocBook samozřejmě také plně podporuje práci s hypertextovými odkazy. Jednak se lze odkazovat na externí URL nebo soubory a jednak na jakýkoliv objekt v dokumentu. Vhodná provázanost objektů hyperlinkovými odkazy výrazně usnadňuje orientaci a práci s dokumentem.
Přehled značek pro odkazy
ulink | odkaz na externí URL |
olink | odkaz na jiný DocBookový dokument |
link | odkaz na jiný objekt v dokumentu s určeným popiskem |
xref | odkaz na jiný objekt v dokumentu s automaticky generovaným popiskem |
Základní možností práce s odkazy je uvádění libovolné URL adresy do textu. To provedeme
pomocí elementu ulink
. Do těla píšeme název URL adresy, vlastní adresu uvádíme do
atributu url
. Touto značkou se však můžeme odkazovat i na libovolné místo v souborovém
systému, stačí adresu začít file:///
a doplnit cestu k souboru. Pozor však na lomítka,
nepíší se zde zpětná lomítka, protože se stále jedná o adresu.
<ulink url="http://www.vsb.cz">Vysoká škola báňská</ulink> <ulink url="file:///c:/docbook/bat/html_saxon.bat">html_saxon.bat</ulink>
Značkou olink
se můžeme odkazovat na jiný DocBookový dokument připojený pomocí
entit. To však příliš nevyužijeme.
Daleko zajímavější jsou možnosti odkazování na jiné místo zpracovávaného dokumentu, tzv.
křížové odkazy Lze se odkazovat na libovolný objekt kdekoliv v
dokumentu. Stačí tomuto objektu přiřadit atribut id
, který bude obsahovat nějaký
jedinečný identifikátor (podobně jak to děláme třeba v HTML).
<chapter id="tabulky" xreflabel="Kapitola o tabulkách"> <title>Tabulky</title> </chapter>
Na toto id
se pak můžeme odkazovat pomocí elementů xref
nebo
link
. Rozdíl je v tom, že při použití xref
se automaticky generuje název
odkazu (tato značka je nepárová), zatímco u elementu link
text určujeme sami. Do
odkazu generovaného xref
se automaticky dosadí implicitní jméno objektu. Atributem
xreflabel
, který uvedeme u odkazovaného objektu definujeme jaké jméno má
xref
použít místo implicitního jména. Do xref
také můžeme uvést atribut
endterm
, který vytáhne jméno z objektu s daným id
.
<xref linkend="tabulky" /> Více v kapitole o <link linkend="tabulky">tabulkách</link> <xref linkend="obrazky" endterm="tabulky" />
Při umisťování id
do dokumentu je vhodné jej přednostně dávat ke značkám pro
kapitolu chapter
nebo sekci section
, protože se stejně zpravidla
odkazujeme právě na ně.
Nepárový element anchor
je obecným prvkem pro uvození místa na které
se budeme odkazovat. Lze jej použít prakticky na libovolném místě dokumentu, tok textu
nijak neovlivní.
<para>Toto je <anchor id="nejakytext"/> text, do kterého se budeme odkazovat.</para>
Na místo uvozené značkou anchor
stejným způsobem jak je popsáno výše.