Tutorial XML

 Ce este XML

XML (Extensible Markup Language) cste o specificatie W3C (World Wide Web Consortium) care reprezinta un set de reguli ce permit crearea unor limbaje de transport al datelor. El deriva din SGML (Standard Generalized Markup Language), o specificatie complexa ce reprezinta parintele multor alte limbaje de acest fel (HTML, DocBook etc).

Un fisier XML este un fisier text structurat, care contine:

  • datele utile – informatia utila ce se doreste a fi transmisa
    • informatii despre aceste date {meta-data) – de exemplu, felul in care datele se afla in relatie unele cu altele. Meta-informatia este specificata cu ajutorul unor tag-uri (marcatoare), asemanatoare cu cele folosite in codul sursa HTML.

lata un exemplu de fisier XML:
<?xml  version=”1.0″?> <produs  id=”34″>
<denumire>Carte</denumire>
<pret>24.5</pret>
</produs>

Fisierul de mai sus contine informatiile despre un produs cu id-ul 34, denumirea Carte si pretul de 24.5. In afara de aceste 3 informatii, toate celelalte reprezinta meta-data: prima linie indica versiunea de XML, iar tag-urile <produs>, <denumire> si <pret> denumesc informatiile continute in fisier, stabilind si apartenenta denumirii si pretului la produs.

Desi un fisier XML este pana la un punct asemanator cu unul HTML, cele doua tehnologii difera in multe aspecte:

  • HTML a fost gandit pentru a specifica structura si modul de prezentare a datelor, pe cand XML are ca scop memorarea structurata a datelor in scopul transportului lor intre sisteme de calcul diferite
  • HTML este un limbaj, el dispunand de un set prestabilit de tag-uri; XML este o specificatie ce permite programatorului sa defineasca propriile tag-uri, care sa descrie cat mai bine datele utile si relatiile dintre ele

           Avantaje si utilitate XML

Fisierele XML fiind fisiere text, ele au avantaje multiple:

  • sunt usor de inteles de catre ochiul uman
  • sunt usor de „inteles” pentru o aplicatie
    • nu depind de platforma hardware sau software pe care ruleaza aplicatiile ce lucreaza cu XML. Exista biblioteci de functii XML pentru toate platformele software, asadar un fisier XML scris sau generat in Windows poate fi citit pe MacOS sau Linux.

Un fisier XML poate fi privit ca o mini-baza de date, care este insa usor de manipulat folosind biblioteci deja scrise, si care poate fi folosita cu succes pentru transferul de date intre sisteme altminteri incompatibile.

      Elemente si PCDATA

Sa consideram ca referinta urmatorul fisier XML:

<persoana>      
<nume>john <porecla>The man </porecla>Doe </prenume>
<varsta>30</varsta>     
</persoana>      

Un tag (marcator) XML reprezinta textul ce incepe cu < si se incheie cu >. In exemplul de mai sus, <persoana>, <nume>, <porecla>, <prenume> si <varsta> sunt tag-uri. Tag-urile sunt in general pereche: exista un tag de inceput si unul de incheiere, eel de incheiere avand acelasi nume cu eel de inceput dar incepand cu </ (ex: <nume>…</nume> ). Tag-urile sunt cele care specifica structura informatiei; informatia utila este cea prezenta intre tag-urile de inceput si de sfarsit (ex: 30, John, Doe etc in exemplul de mai sus)

Un element XML reprezinta toata informatia cuprinsa intre un tag de inceput si tag-ul corespunzator de incheiere. Intre cele doua tag-uri se pot afla:

  • doar date de tip text – ex: elementele <varsta> si <porecla> din exemplul nostru). In acest caz, continutul elementului (textul dintre taguri) este denumit parsed character data sau, pe scurt, PCDATA
  • alte sub-elemente sau o combinatie de text si sub-elemente – ex: elementul <nume>, elementul <persoana> din exemplul de mai sus

Atunci cand un element contine alte elemente, el reprezinta pentru ele elementul parinte, iar cele continute sunt elemente copil ale sale.

Fisierul de mai sus contine urmatoarea structura:

  • un element radacina (asa-numitul root element) – tag-ul <persoana>, care la randul sau contine alte elemente
  • elementul <persoana> are doua elemente copil – <nume> si <varsta>
  • elementul <varsta> are continutul de tip PCDATA cu valoarea 30
  • elementul <nume> contine:
  • o    PCDATA cu valoarea John
    o    elementul <porecla>
    o    PCDATA cu valoarea Doe

  • elementul <porecla> contine PCDATA cu valoarea The Ripper

      Atribute

Atributele reprezinta perechi nume=valoare asociate unui element, specificate in cadrul tagului de inceput al elementului, separate prin spatii fata de numele tagului si intre ele. Un element poate avea zero sau mai multe atribute. Orice atribut are valoare (chiar daca este cea vida), care trebuie inclusa intre ” sau ‘:

<student tip=”cisco” id=’135’>
<username>anonymous</username> </student>

[catlist id=18 numberposts=10]

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *