Dnes navážeme na předchozí díl a podrobně si popíšeme syntaxi (neboli skladbu) dokumentu XML a seznámíme se se základními pravidly dokumentů XML.

Podívejte se na následující příklad:

<?xml version=“1.0″ encoding=“Windows-1250″?>  <cenik>   <hlavicka>    <firma>První pekárenská</firma>    <adresa>Pekařova 15</adresa>    <telefon>0123/456789</telefon>   </hlavicka>   <vyrobky>    <vyrobek je=“ano“>     <nazev>Housky</nazev>     <cena>1,20</cena>    </vyrobek>    <vyrobek je=“ano“>     <nazev>Rohlíky</nazev>     <cena>0,90</cena>    </vyrobek>    <vyrobek je=“ne“>     <nazev>Koblihy</nazev>     <cena>3,50</cena>    </vyrobek>   </vyrobky>  </cenik>

Každý XML dokument začíná deklarací XML:

<?xml version=“1.0″ encoding=“Windows-1250″?>

Atribut version udává verzi dokumentu 1.0 – to je celkem jasné. Pozastavíme se ale nad atributem encoding. Pokud se tento atribut neuvede, bude nastaven na hodnotu UTF-8. Pokud ale budete v dokumentu používat české znaky, parser (program, který zpracovává dokument XML) ohlásí chybu. Zde je kódování nastaveno na Windows-1250, pokud pracujete v Linuxu, nastavíte jej na ISO-8859-2. Ti bystřejší už asi přišli na to, že v názvech tagů diakritiku nepoužívám. Používat ji sice mohu, ale nedělám to z toho důvodu, že až se bude dokument zpracovávat dále, mohou nastat s diakritikou v názvech tagů problémy. Navíc ji parser od Microsoftu nesprávně považuje za chybnou.

Všechny elementy dokumentu XML (element se skládá z počátečního (<hlavicka>) a ukončovacího (</hlavicka>) tagu) musí být uzavřeny v jednom tzv. kořenovém elementu, což je v tomto případě <cenik> ... </cenik>.

Každý element může mít nějaké atributy – v našem případě třeba dostupnost výrobku (<vyrobek je="ano"> ... </vyrobek>). Každý element může mít nějaký obsah – buď ve formě textu (<nazev>Rohlíky</nazev>), nebo dalších elementů:

   <vyrobek je=“ano“>     <nazev>Housky</nazev>     <cena>1,20</cena>    </vyrobek>

Případně obojího. Pokud máte obsah elementu prázdný (<nic></nic>), můžete vynechat ukončovací tag a do tagu prvního přidat na konec mezeru a lomítko (<nic />).

Elementy mezi sebou nesmíte vzájemně proplétat, následující příklad je špatně:

    <nazev>     <cena>     </nazev>     </cena&gt

XML elementy jsou citlivé na velká a malá písmena tzn. <rohlik> není to samé, co <Rohlik>.

Každý element musí být ukončen, nebo být ve zkráceném tvaru (<nic />).

Pokud dokument splňuje všechna uvedená pravidla, je well formed (dobře strukturovaný) a můžete s ním dále pracovat.

Komentáře

Pokud chcete do textu vložit komentář, použijte znaky, které znáte z HTML:

<!– tento text se nezobrazí, protože je v komentáři –>

Komentář můžete vložit kamkoli do dokumentu, ale v žádném případě ne do tagu! Obsahem komentáře může být cokoli mimo sekvence znaků — .

CDATA

V XML můžete používat pro zápisy delších kusů textu se speciálními znaky sekce CDATA:

<![CDATA[
...nějaký text... ]]>

nějaký text může obsahovat jakýkoli text mimo sekvence znaků ]]> a speciální znaky jako < a > se nebudou zobrazovat jako tagy, ale zobrazí se v prohlížeči. Není zde tedy třeba užití znakových entit.

Nyní znáte skladbu dokumentu XML a dokážete si vlastní dokument XML vytvořit. V dalším díle se seznámíme se základy DTD.

Žádný příspěvek v diskuzi

Odpovědět