1. Stručný úvod do XML

[znalosti]

Jazyk XML (eXtensible Markup Language) je značkovací jazyk odvozený od SGML (Standard Generalized Markup Language). U jazyka SGML se zjistitlo, že se v praxi používá jen část jeho možností. Proto se vybrala ta nejdůležitější množina jazyka SGML a dala vzniknout novému jazyku - XML.

O co se tedy jedná, když se vysloví termín XML? XML je jazyk navrhnutý tak, aby mohl uchovávat strukturovaná data. Vemme si například nějakou HTML stránku nějaké firmy, která zde prezentuje své výrobky či služby. Pro člověka jsou všechna data jednoduše čitelná. Pokud například uvidíme adresu firmy, poznáme, že se jedná o její adresu.

[ukázka kódu]
...
<!-- zdrojovy kod HTML stranky nejake firmy -->
<p>
<b>Firma F</b><br>
Františka Nejedlého 12<br>
Kralupy nad Vltavou
</p>
...

Když si nějaký podobný kód zobrazíme v prohlížeči, název firmy "Firma F" se zobrazí tučně. Z toho můžeme usoudit, že se jedná o název firmy. Jak to ale pozná počítač? Značka <b> slouží pouze pro výstupní zvýraznění textu. Pro počítač je zde velice málo informací o tom, kde se nachází název firmy a kde adresa.

V jazyce XML bychom mohli adresu firmy popsat pomocí následujících značek.

[ukázka kódu]
<?xml version="1.0" ?>
<address subject="company">
  <name>F</name>
  <street>Františka Nejedlého 12</street>
  <city>Kralupy nad Vltavou</city>
</address>

Takto strukturovaný dokument je pro počítač mnohem snáze čitelný - ví přesně, kde co hledat. Díky tomu je možno v XML umístit velké množství informací.

V minulé kapitole jsme si také ukázali, že pomocí XML je možno strukturovat data dat tak, aby byla použitelná při databázovém zpracování. Jazyk XML má samozřejmě další možnosti. Ať už se jedná o výměnu dat mezi pobočkami firem (business-to-business applications), webové stránky, elektronické publikování (tyto výukové materiály jsou psány v XML s DTD DocBook) či úložiště dat pro programy.

1.1. DTD a kontrola struktury dokumentu

V XML dokumentu můžeme použít jakékoliv značky. Samozřejmě můžeme jejich používání omezit na předem definované značky. To se provádí pomocí DTD - Document Type Definition (Definice Typu Dokumentu). Pak můžeme kontrolovat, zda dokument vyhovuje naší definici a zda ho tedy můžeme zpracovat podle našich požadavků. Kontrola správnosti struktury dokumentu se provádí pomocí tzv. parseru.

Samozřejmě, pokud si každý programátor na světě vytvoří svůj vlastní DTD, pak by asi výměna a zpracování XML dat neměly velký smysl. Proto existují různé skupiny a sdružení vydávající DTD, které jsou doporučeny pro užívání v dané oblasti.