Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!
Zadejte Vaši e-mailovou adresu:
Kamarád fotí rád?
Přihlas ho k odběru fotomagazínu!
Zadejte e-mailovou adresu kamaráda:
Web
XML - DTD (definice typu dokumentu) část druhá
13. února 2001, 00.00 | Celkově již čtvrtý díl seriálu o XML a v pořadí druhý v
povídání o DTD XML dokumentů. Dnes se zaměříme na správnou deklaraci elementů.
Vítejte u druhé části povídání o DTD XML dokumentů. V této části si povíme o správné deklaraci elementů v DTD.
Elementy jsou základem XML dokumentů a DTD určuje jaké elementy mohou být v daném dokumentu použity a co mohou obsahovat. Obecná deklarace elementu v DTD vypadá takto:
|
Až na malé vyjímky nejste při tvorbě názvů elementů omezeni. Názvy mohou obsahovat písmena s diakritikou, číslice (na začátku názvu číslice být nemůže). Pozor si však dávejte při volbě velikosti písmen, na rozdíl od HTML kde na velikosti písmen nezáleží, je XML přísnější. Následující ukázka deklaruje dva různé elementy:
|
Zajímavější než název je to, co může daný element obsahovat. Nejjednoduší je prázdný element, který nemůže obsahovat text ani žádné další elementy. Deklarace prázdného elementu vypadá takto:
|
Klíčové slovo EMPTY určuje že element nemůže mít žádný obsah. Divíte se k čemu se dá takový element využít? Například ho můžeme použít pro vložení obrázku do dokumentu, kde pomocí atributů elementu určíme URL adresu souboru s obrázkem. V dokumentu prázdný element zapíšeme buďto pomocí dvou tagů <název elementu></název elementu> nebo jenom jedním tagem s ukončovacím lomítkem <název elementu/>.
Na rozdíl od prázdných elementů můžeme však mít elementy, které mohou obsahovat úplně všechno. Takovýto element deklarujeme pomocí klíčového slova ANY:
|
Deklarace pomocí klíčového slova ANY se však moc nepoužívá, protože příliš uvolňuje strukturu dokumentu a to je proti samotné myšlence XML.
Dále může element obsahovat samotný text, to v DTD vyjádříme pomocí klíčového slova #PCDATA:
|
Nejčastěji se setkáme s tím, že element obsahuje další elementy. V tom případě použijeme pro deklaraci tzv. modelovou skupinu (model group). Modelová skupina je vždy uzavřena do kulatých závorek a obsahuje alespoň jedno slovo (tím je nejčastěji jméno elementu, který může být obsažen v právě deklarovaném elementu). Vnořené elementy můžeme kombinovat pomocí znaků "," a "|". Pokud elementy oddělíte čárkou musí následovat v pořadí, v jakém jsou zapsány. Například:
|
Pokud je v dokumentu zapíšete obráceně ohlásí parser chybu. Jestliže naopak oddělíte elementy znakem "|", může být v dokumentu uveden pouze jeden z nich. Pomocí závorek můžeme obě varianty kombinovat. Pokud má například element objednávka obsahovat elementy jméno a adresa a za nimi má být uveden telefon domů nebo do zaměstnání, vypadal by celý zápis následovně:
|
Kromě pořadí elementů musíme určit také jejich počet, zda jsou povinné nebo zda se mohou opakovat. Jestliže v modelové skupině uvedeme pouze jméno elementu, musí být přítomen právě jednou. Pokud je však element nepovinný, uvedeme za jeho název znak "?". Ukážeme si to na pozměněném příkladě předchozí objednávky:
|
Mohla by ovšem nastat taková situace, kdy se může element opakovat, ale musí být přítomen alespoň jednou. Například článek může mít pouze jeden odstavec a může jich mít také několik:
|
Nyní uvedu další situaci, kterou vysvětlím na příkladě. Vezmeme si nějakou knihu, tuto knihu mohl napsat jeden autor nebo jejími tvůrci mohl být kolektiv autorů, ale také nemusíme jméno autora znát, v tom případě nemá autora žádného. Tento problém vyřešíme následovně:
|
Poslední možností obsahu elementů je kombinace samotného textu a elementů:
|
Tímto příkladem se s vámi loučím a těším se na shledanou u další části povídání o DTD XML dokumentů, kde budeme probírat deklaraci atributů.
Obsah seriálu (více o seriálu):
- XML aneb nový formát pro nové tisíciletí
- Zápis správné syntaxe XML dokumentů
- XML - DTD (definice typu dokumentu) část první
- XML - DTD (definice typu dokumentu) část druhá
- DTD (definice typu dokumentu) část třetí
- XML - DTD (definice typu dokumentu) část čtvrtá
-
25. listopadu 2012
-
30. srpna 2002
-
10. října 2002
-
4. listopadu 2002
-
12. září 2002
-
25. listopadu 2012
-
28. července 1998
-
31. července 1998
-
28. srpna 1998
-
6. prosince 2000
-
27. prosince 2007
-
4. května 2007