XML (standartas)
TrumpinysXML
BūsenaIšleistas, W3C rekomendacija
Pradžios metai1996 m.; prieš 28 metus (1996)
Pirmą kartą paskelbtas1998 m. vasario 10 d.; prieš 26 metus (1998-02-10)
Paskutinė versija1.1 (2nd ed.)
2006 m. rugsėjo 29 d.; prieš 18 metų (2006-09-29)
OrganizacijaWorld Wide Web Consortium (W3C)
RedaktoriaiTim Bray, Jean Paoli, Michael Sperberg-McQueen, Eve Maler, François Yergeau, John W. Cowan
Baziniai standartaiSGML
Susiję standartaiXML schema
DomenasSerializacija

XML (angl. Extensible Markup Language) – W3C rekomenduojama bendros paskirties duomenų struktūrų bei jų turinio aprašomoji kalba. Pagrindinė XML kalbos paskirtis yra užtikrinti lengvesnį duomenų keitimąsi tarp skirtingo tipo sistemų, dažniausiai sujungtų internetu. Pagrindinis XML kalbos vienetas yra elementas. Elementas visada turi vardą, be jo, gali turėti:

  • norimą skaičių atributų. Atributas turi savo vardą bei reikšmę.
  • kitus (dukterinius) šio elemento viduje esančius elementus.
  • su elementu susijusį tekstą.

Pavyzdys

redaguoti
<asmenys>
  <asmuo pasonumeris="MP123456">
    <vardas>Mike</vardas>
    <pavarde>Kebenis</pavarde>
  </asmuo>
  <asmuo pasonumeris="PK123456">
    <vardas>Morka</vardas>
    <pavarde>Išminčius</pavarde>
  </asmuo>
  <papildoma_informacija x="123"/>
</asmenys>

Šiame pavyzdyje elementas asmuo turi atributą pasonumeris ir du dukterinius elementus (vardas ir pavarde). Abu šie dukteriniai elementai turi su jais susijusį tekstą. Elementas asmenys turi du tą patį vardą turinčius elementus (asmuo). Trečias elementas (papildoma_informacija) neturi nei dukterinių elementų, nei susieto teksto.

Elementų radimas dokumente

redaguoti

XML elementai gali būti automatiškai randami pagal vardą arba pagal kelią (tarkim, asmenys/asmuo/pavarde/text()). Tačiau XML tas pats kelias gali vesti į kelis elementus (minėto tako rezultatas bus (Kebenis, Ismincius). XML kelių variantai aprašyti XPath standarte. Šiuo metu yra įvairioms kalboms skirtų bibliotekų dirbti su XML, todėl pačiam programuoti teksto analizės paprastai neprireikia.

Plėtimo galimybės

redaguoti

Pagrindinis XML privalumas – galimybė pridėti naujo tipo elementus, nepažeidžiant dokumento struktūros ir netrikdant tik seną formatą suprantančių programų darbo. Tarkim, pridėjus elementą:

<asmuo pasonumeris="XX123456">
  <vardas>Plėšikas</vardas>
  <pavarde>Uronas</pavarde>
  <pastaba>Pavojingas.</pastaba> 
</asmuo>

turintį naują elementą pastaba, užklausa asmenys/asmuo/pavarde/text() dirbs kaip dirbusi, o elementas pastaba bus praleidžiamas. Todėl, programai besivystant, iškyla daug mažiau versijų nesuderinamumo problemų.

Vardų erdvės

redaguoti

Jungiant kelis XML dokumentus į vieną, pasitaiko, jog sutampa skirtingą prasmę turinčių elementų vardai. Tuomet naudojamos vardų erdvės, pav <autoinspekcija:asmuo>, <migracijos_tarnyba:asmuo> ir pan. Prireikus XML dokumento antraštėje vardų erdvė apibrėžiama, nurodant daug ilgesnį vardą, neretai interneto adresą. Elementą asmenys papildžius šiais duomenimis, dokumento pradžia atrodys taip:

<asmenys
  xmlns:autoinspekcija="http://autoinspekcija.com"
  xmlns:migracijostarnyba="http://migracija.com"
>

Susiję standartai

redaguoti

Dokumente galimi elementai bei atributai gali būti aprašomi atskira DTD ženklinimo kalba, kuri panaši į anksčiau naudotą SGML. Dokumento struktūrą taip pat galima aprašyti, naudojant XML schemą, kuri, palyginti su DTD kalba, turi privalumų: XML schema yra XML dokumentas, ja galima detaliau apibūdinti XML dokumentą.

XML dokumentų turiniui vaizduoti įvairiais formatais naudojamos XSL kalbos:

  • naudojant XSLT kalbą, galima aprašyti XML dokumento transformaciją į kitos struktūros (pavyzdžiui, XSL-FO) XML dokumentą arba ne XML bylą (pavyzdžiui, HTML ar paprastą tekstą);
  • naudojant XSL-FO kalbą, galima aprašyti dokumento išvaizdą (pavyzdžiui, puslapių paraštes, šriftus);
  • XPath kalba naudojama XML dokumento elementams išrinkti (naudojama, aprašant XSLT transformacijas ir kitur).

XML pagrindu sukurtos įvairios sudėtingesnės aprašomosios kalbos (RDF, OWL ir kitos).

Nuorodos

redaguoti