XML – co to jest?
XML, czyli Extensible Markup Language, to uniwersalny język znaczników. Na jego bazie można tworzyć inne języki, zwane aplikacjami XML. W taki właśnie sposób powstał np. XHTML.
Podkreślmy, że XML nie ma predefiniowanych znaczników, tak jak jego aplikacje (np. XHTML czy SVG). Dzięki temu o nazwach i kolejności zagnieżdżania znaczników decydujemy sami. W efekcie kod źródłowy pliku XML jest bardziej przejrzysty i zrozumiały dla przeciętnego człowieka niż np. kod źródłowy zapisany w zbiorze XHTML. Oto przykład fragmentu dokumentu XHTML, przechowującego imię i nazwisko pisarza:
<p>Bolesław</p><br/> <p><b>Prus</b><p>
A oto te same dane zamieszczone w dokumencie XML:
<imie>Bolesław</imie>
<nazwisko><pogrubione>Prus
</pogrubione></nazwisko>
Na pierwszy rzut oka widać, że bardziej przejrzysty i zrozumiały jest drugi dokument. Gdyby zaszła konieczność wprowadzania w nim zmian, to nawet osoba nieznająca XML-a powinna sobie poradzić z takim zadaniem.
Podczas tworzenia pliku XML trzeba pamiętać o tym, że musi się on rozpoczynać deklaracją dokumentu XML. Za nią jest umieszczany element główny (zwany korzeniem dokumentu) i dopiero on zawiera podelementy przechowujące dane.
W deklaracji obowiązkowo musimy podać wersję języka XML. Opcjonalnie określamy także metodę kodowania znaków. Dzięki specjalnemu atrybutowi standalone wolno nam wreszcie określić, czy nasz dokument jest “samodzielny”, czyli czy nie ma do niego dołączonych jakichś zewnętrznych plików.
Między DOC-em a MDB
Odpowiednio przygotowany zbiór XML spełnia funkcję małej bazy danych, zwanej natywną bazą XML. Jest ona czymś pośrednim między zwykłym plikiem tekstowym a bazą relacyjną. Bezsprzeczną korzyścią wynikającą z zastosowania dokumentu XML jest jego przenośność.
Naszą bazę danych będzie stanowił plik litera1.xml, w którym umieściliśmy kolekcję utworów literackich. A oto zawartość zbioru:
<?xml version=”1.0″ encoding=”UTF-8″
standalone=”yes” ?>
<literatura>
<utwor id=”1″ gatunek=”powiesc”>
<tytul>Potop</tytul>
<autor>Henryk Sienkiewicz
</autor>
<opis>Powieść historyczna epoki
pozytywizmu.</opis>
</utwor>
…
<utwor id=”5″ gatunek=”nowela”>
<tytul>Latarnik</tytul>
<autor>Henryk Sienkiewicz
</autor>
<opis>Nowela.</opis>
</utwor>
</literatura>
Jak łatwo zauważyć, wszystkie dane są umieszczone w głównym elemencie <literatura>. Ten z kolei zawiera podelementy
<tytul>
,
<autor>
i <opis>, opisujące określone dzieło.