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
Zápis správné syntaxe XML dokumentů
22. ledna 2001, 00.00 | Další díl seriálu o XML. Tentokrát si ukážeme, jak správně psát XML tagy, jaké jsou časté chyby a jiné.
Vítám vás u druhého dílu seriálu o XML. V dnešním díle si povíme něco o správném zápisu syntaxe XML dokumentů, vysvětlíme si několik pojmů a zmíním se o znakových sadách a kódování.
Správný zápis dokumentů XML je velice důležitý, protože byť jen jedna chyba v syntaxi zapříčiní, že prohlížeč nedokáže dokument zobrazit a hlásí chybu v zápise. Nutnost správného zápisu nás však alespoň nutí k důslednosti při tvorbě dokumentů, na kterou jsme často zapomínali při zápisu HTML, kde se mohlo vyskytovat mnoho chyb a prohlížeč i přesto dokument zobrazil.
Nyní uvádím jednoduchý XML dokument, na kterém budu postupně vysvětlovat pravidla syntaxe a význam jednotlivých částí:
|
Již na první pohled je viditelná první velká výhoda XML a tou je definování vlastních značek (tagů), které informují přímo o významu dat uložených mezi nimi. Každý z takového dokumentu pochopí, že mezi tagy <ulice></ulice> je název ulice, <firma></firma> název firmy atd. To je velkou výhodou oproti ostatním značkovacím jazykům jako je např HTML, kde tagy o datech nic nevypovídají.
Ale nyní už pojďme k popisu výše uvedeného příkladu. Prvnímu řádku se říká deklarace XML dokumentu, je zde uveden druh a verze jazyka(xml version="1.0") a způsob kódování dokumentu, který určíme pomocí parametru encoding (encoding="windows-1250"), o způsobech kódování a o znakových sadách se zmíním v závěru článku. Druh a verze jazyka musí být uveden na začátku každého dokumentu XML, způsob kódování je nepovinný, ale doporučuji ho uvádět.
Každý dokument XML se skládá ze znaků, mezi kterými jsou uvedena data. Znakům v XML říkáme elementy a zapisujeme je pomocí tagů ( <element></element>). Pravidla pro zápis XML stanovují, že všechny elementy musí být párové, to znamená musí obsahovat tag počáteční i tag ukončovací. Pokud v zápisu uvedeme pouze tag počáteční, hlásí program při zobrazení chybu a dokument nenačte. V našem příkladě je toto pravidlo dodrženo, každý počáteční tag má i svůj tag ukončovací ( <název></název>, <značka></značka>, <dovozce></dovozce> atd.)
Každý element může obsahovat kromě svého jména například Cena ještě další informace, které blíže specifikují jeho obsah. Těmto "informacím o informacích" říkáme metadata a jsou ukládány v tzv. atributech. Atributem u elementu cena je v našem příkladě měna, která udává, že cena je uvedena v korunách českých. Atributy zapisujeme v počátečním tagu oddělené od názvu elementu mezerou. Jeden element může mít několik atributů, které od sebe oddělujeme také mezerou. Ukázku více atributů vidíte v příkladu u elementu Popis, který obsahuje atribut kód a atribut označení( <popis kód="451-25" označení="ec4">)
Nyní uvedu další pravidla pro správný zápis XML dokumentů. Elementy mohou být do sebe vnořovány, jako je to ve výše uvedeném příkladě, ale nesmí dojít k jejich překřížení např. <firma>yyy<adresa></firma></adresa>. Dále pozor na správný zápis názvů elementů, jazyk XML rozlišuje malá a velká písmena, takže pokud napíšete jako počáteční tag <firma> a ukončovací </Firma> prohlížeč nahlásí chybu a dokument nezobrazí, o nechtěných překlepech na klávesnici ani nemluvě ( <firma></fima>). Dalším pravidlem je, že celý dokument musí být uzavřen v jednom elementu, náš dokument je celý uzavřen v elementu <výrobek>...</výrobek>. Dokumenty mohou také obsahovat prázdné elementy, které můžeme zapsat dvěma způsoby - ukáži to opět na řádku z našeho příkladu, vezmeme si element ulice, který nyní má hodnotu Americká 14, pokud by byl prázdný, neměl by hodnotu žádnou a prvním způsobem by se zapsal <ulice></ulice>, druhý způsob je však jednodušší, zde napíšeme název elementu pouze jednou a za něj uvedeme ukončovací lomítko, takže to vypadá takto <ulice/>. A ještě jedno upozornění týkající se názvů elementů, na začátku jména elementu nesmí být číslice, ale jinak čísla v názvech můžete běžně používat.
V závěru si povíme ještě něco o znakových sadách a kódování. Mezi nejstarší znakové sady patří ASCII, tato znaková je však 7bitová a vyhovuje pouze potřebám anglické abecedy. Pro češtinu a další středoevropské jazyky existuje znaková sada ISO 8859-2. Pokud však pracujete s XML dokumenty v prostředí Windows, je třeba použít speciální znakovou sadu vyvinutou společností Microsoft, pro češtinu je to sada windows-1250, kterou jsem použil i v příkladu pro tento článek.
Znakové sady a kódování jsou dva odlišné pojmy. Znaková sada definuje, jaké znaky a pod jakým číslem máme k dispozici, zatímco kódování znakové sady určuje, jak jsou jednotlivé kódy znaků převedeny na sekvenci bajtů, které znak prezentují paměti počítače. Způsob kódování, jak jsem již uvedl výše, se uvádí v prvním řádku dokumentu XML. Standardně používáme kódování UTF-8, UTF-16 a pro české znaky: ve windows windows-1250 a v Linuxu iso-8859-2. Hlubší popis způsobů kódování a znakových sad by vydal na samostatný článek, proto zde již nebudu zabíhat více do hloubky.
Těším se na shledanou u dalšího dílu seriálu o XML.
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