Site hosted by Angelfire.com: Build your free website today!

XML Sissejuhatus

xml.jpg

XML (Extensible Markup Language) on W3C soovitatud üldotstarbeline markeerimise keel, mille eesmargiks on struktureeritud info jagamine erinevate infosüsteemide vahel, eelkõige veebipõhistes rakendustes. XML on laiendatav keel, mis tähendab, et alates ülessande püstitamisest, on võimalik defineerida oma elemente.

Mis vahe on XML'il ja HTML'il? XML ei asenda Html'i. XML on loodud info edasi kandmiseks aga HTML info kuvamiseks.
Näiteks kui sa kirjutad "Word'is" midagi siis see pole lihtsalt tekst ekraanil. Peale teksti lisad sa informatsiooni selle kohta kuidas kirjutatu hakkab välja nägema.

Enamikes tekstiprotsessorites on see info, milline peab tekst välja nägema, sinu eest varjatud. Märgiste keel on kood mis ütleb arvutile varjatud infot teksti-dokumendi kohta. Näiteks ülal toodud nimekirjas on kasutatud Html nimekirja märgiseid <ul> ja <li>.

Seletan veel. Oletame, et on olemas selline inimene nagu Ants Tamm. Arvuti näeb neid kahte sõna kui suvalist tähtede kogumit. Sina kui lugeja annad nendele sõnadele mõtte. Oletame, et antud juhul on Ants Tamm selle artikli autor. Mõnes teises situatsioonis tähendab sõnapaar "Ants Tamm" hoopis midagi muud.

Seda nimekirja võiks jätkata veel ja veel. Point on selles, et ükski osa, Ants Tamme puudutavast infost ei ole määratletud Html'ga. Selleks, et arvuti saaks aru, et Ants Tamm pole lihtsalt tähemärkide kogum vaid hoopis midagi rohkemat, tuleb see informatsioon struktureerida. Lihtne näide on sinu aadressiraamat. Ka seal on oletatavasti informatsioon mingit moodi struktureeritud. Aadressid, nimed, kellaajad, kuupäevad telefoni numbrid jne.

Siin tulebki appi XML, mille kirjaviis on selline:

<?xml version="1.0" encoding="ISO-8859-1"?>
      <kodanik>
    <enimi>Ants</enimi>
    <pnimi>Tamm</pnimi>
  <amet>ettevõtja</amet>
 <teema>Olen tubli mees!</teema>
      </kodanik>

Esimene tekstirida on XML deklaratsioon milles määratakse XML versioon (1.0) ja kasutatav kodeering (ISO-8859-1 = Latin-1/West European character set).
Järgmine rida (<kodanik>), kirjeldab dokumendi juur-elementi.
Järgmised neli rida on juur-elemendi tütar-elemendid.
Viimane rida tähistab juur-elemendi lõppu.
Seega algab dokument juur-elemendiga, jätkub temaga suguluses olevate elementidega.

      <juur>
    <tütar>
  <tütretütar>......</tütretütar>
    </tütar>
      </juur>

Kõik elemendid sisaldavad teksti ja atribuute nii nagu HTML'is.

Pane tähele. Kõik XML elemendi peavad olema suletud lõpumärgisega (</p>).

<p>See on paragrahv</p>

XML on tundlik s.t. et <teema> pole sama mis <Teema>.

<Teema>See on valesti>/teema>

<teema>See on õieti</teema>

XML'is peavad elemendid olema õieti pesastatud:

<b><i>Selles reas on pesastatud valesti</b></i>

<b><i>Selles reas on pesastatud õieti</i></b>

XML'is peavad atribuutide väärtused olema jutumärkides:

<teema daatum="10/02/2012">

Kommentaare XML'is kirjutatakse samamoodi nagu HTML'is

<--See on kommentaar-->

Milleks siiski XML'i õppida kui HTML on selge? Paljud veebirakendused saab tehtud kasutades selleks HTML'i, DHTML'i, Java't, ASP'i jne. Sama töö saab teha lihtsamaks, kasutades XML rakendusi.

Lõppude lõpuks pole XML'i üldse raske õppida kui juba Html on selge. Pealegi on paljusid asju parem teha XML'i abil kui Html'iga.

Ühendus andmebaasidega

Enamik inimesi saab ühenduse andmebaasidega Veebis, kasutades selleks erinevaid programme. Näiteks CGI skript, PHP v. ASP. Kuid andmed ise pole määratletud andmebaasina seni kuni need konkreetselt on andmebaasis sees. Kui kasutada andmebaasiga ühenduse saamiseks Veebis XML'i siis see formaat sobitub andmebaasiga. See on omakorda XML'i eeliseks Html'i ees.

Erinevad andme formaadid

Nagu alguses sai öeldud, on XML dokument struktureeritud andmete kogum. Iga andme element on märgistatud sel moel, et arvuti tunneb, millega on tegemist. Näiteks kui sa sisestad oma aadressi raamatu XML'i siis oletatavasti on need andmed struktureeritud andme gruppidesse:

Kui XML rakendus tunnistab andmeid igas eelpool mainitud andmegrupis siis saab luua vormingu kus on võimalik kõik andmed printida.
Luua vorming kus kõiki sissekandeid saab lisada aadressi-raamatusse.
Lõpuks saame luua vormingu kus kogu informatsioon hoitakse andmebaasis. Seega ühe sissekandega saame kasutada kolme erinevat rakendust.

Kohaldatud informatsioon

Dokumendid mis on kirjutatud XML'is on kergesti kohaldatavad erinevates formaatides. Näiteks Html'is kasutame pealkirjade kujundamiseks märgiseid; <h1> <h2> ja <h3>. Kui nüüd sama kujundust proovida mobiil-telefonis, millel on WAP tugi, siis tulemus on täiesti erinev (eeldusel, et üldse mingi tulemus näha on). Niisiis kui me tahame, et eelpool mainitud aadressi-raamat kuvataks veebis ja ka mobiiltelefonis, pole vaja luua kahte eraldi dokumenti (WML ja XHTML). Selle asemel loome lihtsalt vastavad reeglid andmebaasis, kuhu on XML'il lubatud juurdepääs.

Jaotatud laadimine

Üks XML'i hea omadus on see, et seda saab kasutada koos Java ja teiste vahenditega nii, et suurem osa info töötlemisest suunatakse serverilt kliendile. Näiteks eelpool mainitud XML dokument aadressi-raamatust. Kasutame Java rakendust andme töötluseks ja otsimiseks. Kasutades XML ja Java rakendust koos saame tulemuseks, et kogu töötlus ja otsing toimub kliendi pool. Seega vabastame serveri liigsest koormusest.

Lõpetuseks

Jäägu igaühe enda otsustada kas õppida XML'i või mitte. Meeles tasuks pidada seda, et palju asju saab teha XML'is efektiivsemalt kui Html'is. XML on võimas tööriist millega luua ja töödelda andmeid.

Näited:

Lihtne XML fail
Lihtne XML fail koos veaga
XML raamatukataloog





Punane Nool Vasak Punane Nool

Kasulikud lingid


W3schools
About.com
Arvutiabi