XML: Rozdiel medzi revíziami

z Wikipédie, slobodnej encyklopédie
Smazaný obsah Přidaný obsah
Jotterbot (diskusia | príspevky)
FoxBot (diskusia | príspevky)
Riadok 52: Riadok 52:
[[bs:XML]]
[[bs:XML]]
[[ca:Extensible Markup Language]]
[[ca:Extensible Markup Language]]
[[ckb:ئێکس ئێم ئێڵ (وێب داڕشتن)]]
[[ckb:ئێکس ئێم ئێڵ]]
[[cs:Extensible Markup Language]]
[[cs:Extensible Markup Language]]
[[da:XML]]
[[da:XML]]

Verzia z 13:54, 31. október 2009

XML znamená eXtensible Markup Language, v preklade rozšíriteľný značkovací jazyk, ktorý bol vyvinutý a štandardizovaný konzorciom W3C (World Wide Web Consortium) ako pokračovanie jazyka SGML a HTML. Umožňuje jednoduché vytváranie konkrétnych značkovacích jazykov na rôzne účely a široké spektrum rôznych typov údajov.

Jazyk je určený predovšetkým na výmenu údajov medzi aplikáciami a na publikovanie dokumentov. Jazyk umožňuje popísať štruktúru dokumentu z hľadiska vecného obsahu jednotlivých častí a nezaoberá sa sám o sobe vzhľadom dokumentu alebo jeho časti. Prezentácia dokumentu (vzhľadu) sa potom definuje pripojeným štýlom. Ďalšou možnosťou je pomocou rôznych štýlov vykonať transformáciu do iného typu dokumentu alebo do inej štruktúry XML.

Pôvodný jazyk na publikovanie HTML už prestal vyhovovať predovšetkým pre svoju zložitosť, ktorá vznikla jeho postupným (a svojvoľným) rozširovaním. Jazyk XML nemá žiadne preddefinované značky (tagy, názvy jednotlivých elementov) a tiež jeho syntax je podstatne prísnejšia ako syntax HTML.

Použitie

Sila XML je najmä v jeho hierarchickej štruktúre a pomerne jednoduchom spôsobe kódovania. Umožňuje popisovať - označovať ľubovoľné dáta a prenášať ich medzi rôznymi aplikáciami a platformami. Hlavnou ideou XML je oddelenie obsahu a dizajnu dát. Spojovacím mostom je XSL, ktorý umožňuje vytvárať množstvo výstupných formátov.

XML je formát súboru obsahujúci dáta. Zvláštnym ho robí to, že je široko prijímaný ako štandard so schopnosťou existencie na akejkoľvek platforme a používaný masívnym, stále rastúcim počtom aplikácií a programovacích jazykov.

XML znamená Extensible Markup Language (rozšírený jazyk so značkami). Jeho špecifikácia je popísaná doporučením konzorcia World Wide Web Consortium. Jazyk XML nám dovoľuje vytvárať štruktúrované dokumenty veľmi flexibilným spôsobom. Dá sa použiť k vytváraniu dokumentov, ktoré sa zdanlivo podobaju dokumentom HTML; jazyk XML sa však od HTML líši a používa sa k zásadne iným účelom. Táto podobnosť pochádza od rovnakých rodičov – obidva jazyky sú odvodené od štandardu definície jazyka SGML. Ten sám o sebe nie je žiadny jazyk, ale iba spôsob definovania jazykov vyvinutých podľa jeho obecných princípov. Existuje tu však dôležitý rozdiel v tom, akým spôsobom sú jazyky XML a HTML odvodené od SGML. XML je podmnožina SGML – ľahšia verzia, ktorá bola oproti SGML zjednodušená, aby umožňovala použitie na sieti WWW, ale aj ako formát výmeny dát. Toto zjednodušenie robí zápis dokumentov vychádzajúcich z XML jednoduchším. Oproti tomu jazyk HTML je aplikáciou SGML – je to teda konkrétny jazyk, ktorý dodržuje štandard SGML.

XML a HTML v skutočnosti slúžia veľmi odlišným účelom. Dokument HTML obsahuje značky indikujúce, ako má byť dokument naformátovaný, neobsahuje však žiadne informácie o vlastnom obsahu. Inými slovami HTML obsahuje iba informácie o zobrazení dát a neobsahuje žiadne údaje o tom, o aké dáta sa jedná. XML sa pokúša oddeliť obsah a jeho reprezentáciu. Dokumenty XML obsahujú informácie v štrukturovanej forme, ktorá sa zdanlivo veľmi podobá HTML. Dôležitým rozdielom je fakt, že môžeme definovať svoje vlastné značky, ktoré určujú štruktúru dát.

Dokumenty XML sa dajú previesť do všetkých ostatných variantov XML tým, že sa k dokumentu priradí štýl v jazyku XSL (Extensible Style Language – rozšírený jazyk štýlov. Štýl bude obsahovať informácie o tom, ako túto stránku zobraziť.

Jazyk XML

Každý dokument XML sa skladá z kombinácie dát značiek a znakov. Značky dávajú dokumentu XML štruktúru, zatiaľ čo znaky predstavujú iba vlastný obsah. Všetky dokumenty XML spĺňajúce špecifikáciu XML musia dodržiavať isté pravidlá – potom sú považované za správne štruktúrované.

  • I. Každý element XML musí mať začiatočnú aj koncovú značku. „Prázdne“ elementy bez koncovej značky (ako napríklad <IMG> alebo <HR> v jazyku HTML) nie sú v XML povolené. Je tu však skrátený zápis, ktorý sa dá použiť v prípade, keď daný element neobsahuje žiadne dáta. Namiesto <empty></empty> môžeme použiť alternatívu <empty />. Tieto dve možnosti sa považujú za zhodné.
  • II. Dokument XML musí obsahovať jediný pár značiek (skladajúci sa zo začiatočnej a koncovej značky) – koreňový element dokumentu, v ktorom sú všetky ostatné elementy vložené. To zaisťuje hierarchickú štruktúru dokumentu XML.
  • III. Počiatočné a koncové značky každého elementu musia byť riadne vnorené – vnorený element musí byť plno obsiahnutý vo svojom nadriadenom elemente. Inými slovami, počiatočné a koncové značky vložených elementov sa nesmú prekrývať.

Ak dokument XML spĺňa tieto pravidlá , potom je správne štruktúrovaný. Dokument XML sa označuje za platný, keď je správne štruktúrovaný a zároveň spĺňa požiadavky DTD. (7)

Jednoduchý príklad XML súboru sa dá reprezentovať hierarchicky, napr.:

<?xml version="1.0"?>
<zamestnanci>
<priezvisko>Kutny</priezvisko>
<priezvisko>Kolar</priezvisko>
<priezvisko>Hala</priezvisko>
</zamestnanci>

Podpora XML v jazyku PHP

PHP podporuje množinu funkcií, ktoré sa používajú pre zápis aplikácií XML založených na jazyku PHP. Tieto funkcie sa dajú používať k čítaniu správne štruktúrovaných dokumentov XML. Parser XML v PHP spracováva tok dát. Ešte pred analyzovaním dokumentu sa parseru zaregistrujú rôzne obslužné funkcie. Dokument XML sa parseru predáva po častiach a ako parser spracováva dokument a rozoznáva rôzne uzly, volá príslušné zaregistrované funkcie. Pokiaľ je dokument správne štruktúrovaný ale neplatný, nezobrazí parser žiadne chyby ani varovania.

Rozšírenie XML jazyka PHP podporuje znakovú sadu Unicode prostredníctvom rôznych kódovaní znakov. Existujú dva typy kódovania znakov: zdrojové kódovanie a cieľové kódovanie. Zdrojové kódovanie sa používa pri čítaní dokumentov XML. Východzím zdrojovým kódovaním používaným jazykom PHP je ISO-8859-1. Cieľové kódovanie sa vykonáva, keď PHP predáva dáta zaregistrovaným funkciám. Cieľové kódovanie ovplyvňuje znakové dáta aj názvy značiek a ciele inštrukcií spracovania.

Akonáhle parser XML narazí na znaky mimo rozsah, ktoré dokáže zdrojové kódovanie reprezentovať, vráti chybu. Pokiaľ PHP nájde v preloženom dokumente XML znaky, ktoré sa nedajú reprezentovať vo vybranom cieľovom kódovaní, nahradí ich otáznikmi. Podpora XML v PHP je implementovaná pomocou knižnice expad. Expad je knižnica zapísaná v jazyku C, slúžiaca pre spracovanie dokumentov XML.