Creeaza.com - informatii profesionale despre


Simplitatea lucrurilor complicate - Referate profesionale unice
Acasa » scoala » informatica » html
Premisele aparitiei si caracteristici principale ale XML

Premisele aparitiei si caracteristici principale ale XML


Premisele aparitiei si caracteristici principale ale XML

HTML a reprezentat, fara indoiala, cel mai de succes limbaj de marcare din toate timpurile. Astfel, conform unor studii citate de Marchal (2000), numarul paginilor Web publicate la nivel mondial la momentul respectiv era de peste 800 de milioane, toate realizate cu HTML.

Cum se explica, atunci, aparitia si extinderea accelerata a XML, intr-o perioada de plina glorie a HTML ? Pentru a raspunde la aceasta intrebare trebuie sesizate limitarile HTML in satisfacerea cerintelor impuse de extinderea domeniilor de utilizare a tehnologiilor Web si de integrare a diverselor tipuri de sisteme si aplicatii informatice.

Analiza efectuata de Mordkovitch (2001) evidentiaza cauzele succesului HTML, dar si motivele pentru care el nu mai raspundea cerintelor, urmand sa fie inlocuit progresiv cu XML.



HTML se conformeaza structurilor hipertext, oferind cateva caracteristici cheie pe linia facilitarii accesului la date (Mordkovitch, 2001), (CHM, 2002):

  • Legaturi: Datele sunt (hiper)inlantuite in HTML, un document asigurand accesul catre altele, prin hiperlegaturi.
  • Simplitate: HTML este simplu si usor de invatat si afisat.
  • Portabilitate: HTML este independent de diversele retele, platforme hardware si software, sisteme de operare si limbaje.

Toate aceste caracteristici sunt asigurate in cadrul documentelor HTML prin intermediul marcajelor. Marcajele specifica, de exemplu, ca <P> este un paragraf, ca o constructie de forma <IMG SRC="imagine.gif"> constituie referinta la o imagine sau ca <A HREF="carte.html">Carte</A> este o hiperlegatura. Orice text obisnuit poate deveni sursa unor hiperlegaturi spre alte documente. De exemplu, o linie de text cum ar fi:

Mamaia este perla litoralului romanesc.

poate deveni prin adaugarea de marcaje:

<A HREF='mamaia.html'>Mamaia</A> este perla <A HREF='litoral.html'>litoralului romanesc</A>

La vizualizarea documentului intr-un navigator Web textul se va afisa in forma:

Mamaia este perla litoralului romanesc

Cele doua denumiri au devenit hiperlegaturi catre alte documente HTML (cu precizarea ca, in forma actuala ele nu conduc, totusi, spre niste documente reale), cu date suplimentare despre fiecare din cele doua entitati.

Prin astfel de solutii simple, HTML a devenit primul mijloc de a realiza transferuri de date intr-o maniera foarte simpla, catre un numar oricat de mare de utilizatori. In timp, insa, pe masura ce popularitatea HTML a crescut, tocmai calitatile subliniate au devenit o frana in extinderea posibilitatilor sale de utilizare, facand ca limitarile limbajului sa devina tot mai evidente. HTML nu este extensibil, autorii de documente HTML neavand posibilitatea sa adauge noi caracteristici limbajului. Definirea limbajului face prohibite asemenea tentative, iar navigatoarele Web comerciale disponibile ignora marcajele care nu sunt parte a standardului HTML. Pentru a complica si mai mult lucrurile, creatorii unor navigatoare de referinta (ca Internet Explorer sau Netscape Navigator) au introdus, pe de o parte, marcaje specifice si, pe de alta parte, ignora unele din marcajele standard, astfel incat documente Web dezvoltate cu prioritate pentru un navigator vor fi afisate in mod diferit de catre altele, afectand portabilitatea.

Marcajele care controleaza prezentarea sunt in acelasi fisier cu cele care descriu continutul documentului. Desi HTML 4.01 si CSS (Cascading Style Sheets) permit autorilor HTML sa separe continutul de prezentare, limbajul ramane inca slab in abilitatea de a descrie continutul unui document.

Ca o concluzie, chiar daca este relativ usor sa se creeze o pagina Web, este cu mult mai dificil sa se intretina un site Web complex, publicat folosind exclusiv fisiere HTML de mari dimensiuni. Multe site-uri Web actuale se bazeaza pe pagini generate dinamic folosind tehnologii ca JSP (Java Server Pages), ASP (Active Server Pages) sau alte produse middleware pentru conectarea la baze de date in care este stocat continutul de publicat.

Marcajele HTML sunt prestabilite, deoarece necesitatea de asigurare a legaturilor, simplitatea si portabilitatea au impus limitari asupra lor. Ca urmare, daca se doreste mai mult decat satisfacerea celor trei cerinte, se constata limitari ale HTML, cel putin pe urmatoarele planuri (Mordkovitch, 2001), (CHM, 2002):

  • Inteligibilitate: Cat de bine se pot recunoaste datele prin ele insele.
  • Adaptabilitate: Cat de usor se schimba datele ca raspuns la schimbarile din mediul inconjurator.
  • Mentenabilitate Cat de usoara este mentinerea in timp a datelor.

Dupa cum subliniaza Mordkovitch(2001), exista un anumit nivel de inteligibilitate si in HTML; se recunoaste, de exemplu, ca un anumit element este paragraf sau referinta la o imagine, dar nu este posibila distinctia intre paragrafe sau imagini in functie de continutul acestora.


Referitor la adaptabilitate, multe situatii concrete conduc la necesitatea unor marcaje specifice domeniului, care lipsesc din HTML. Se simte, deci, nevoia de a trece dincolo de multimea prestabilita de marcaje acceptate de HTML, indiferent de faptul ca ele s-au extins de la o versiune la alta.

Cat priveste mentenabilitatea, este greu de gasit si schimbat exact marcajul care intereseaza la un moment dat, deoarece HTML combina toate elementele de descriere a unui document intr-o singura constructie. Marcajele pentru hiperlegaturi si controlul modului de afisare sunt amestecate cu datele, fara o diviziune clara. Ca urmare, este dificil de a schimba strict ceva anume, fiind posibil, de exemplu, ca schimbarea modului de afisare sa conduca la pierderea unor hiperlegaturi, sau invers.

Solutia pentru depasirea acestor lipsuri a reprezentat-o XML, un limbaj foarte puternic in toate directiile analizate anterior, care elimina limitarile HTML si ale altor limbaje de marcare, oferind functionalitati care nu se regasesc in nici unul dintre ele.

Pentru comparatie, sa consideram un document HTML care descrie o lista de salariati dintr-un departament, cu enumerarea persoanelor care o compun (figura 1.a), creat folosind editorul de text Notepad.

Se remarca faptul ca marcajele nu descriu continutul asociat. Astfel, <li> nu comunica nici o informatie asupra faptului ca datele continute sunt referitoare la o persoana. Ceea ce se precizeaza este in principal faptul ca acest continut se va afisa sub forma unei liste numerotate (sau ordonate), aspect constatat la deschiderea documentului HTML cu navigatorul Internet Explorer (figura 1.b).

Utilizand XML, lista de salariati din departamentul respectiv se prezinta ca in figura 2.a, descrierea fiind realizata tot cu ajutorul Notepad.

Ca si HTML, XML face apel la un set de marcaje, dar le foloseste numai pentru a delimita datele, lasand interpretarea acestora complet pe seama aplicatiei care le citeste.

Intr-un document XML, numele marcajelor reflecta semnificatia datelor pe care le contin, in contrast cu HTML, unde aceste nume spun foarte putin despre semnificatia continutului lor. In exemplul anterior, se remarca utilizarea in descrierea continutului a unor marcaje a caror semnificatie se autodefineste prin insusi numele lor: <salariati>, <salariat>, <nume>.

Referitor la prezentare, desi descrierea XML realizata nu contine informatii in acest sens, datorita structurarii arborescente a datelor, maniera implicita de afisare in navigatoare este, de asemenea, arborescenta (figura 2.b). Acest lucru este posibil deoarece structura documentelor XML este usor de determinat si se conformeaza unui pattern, in timp ce in cazul HTML structura nu este in mod particular utila pentru manipularea documentelor si a schimbului lor intre aplicatii.

Asemenea aspecte sunt in mod special importante, deoarece, pentru ca un document sa se transfere cu succes de la autor la cititor, ambele parti trebuie sa fie de acord asupra semnificatiei asociate diverselor constructii. Latura semantica nu poate fi interpretata decat in cadrul unei comunitati. Cu cat comunitatea utilizatorilor este mai mare, cu atat este mai dificila asigurarea consensului asupra laturii semantice asociate diverselor elemente ale unui limbaj. Din aceasta perspectiva, se constata diferente notabile intre HTML si XML:

  • HTML a fost conceput ca limbaj de uz general pentru crearea documentelor publicate in mediul Web, adresandu-se implicit comunitatii tuturor utilizatorilor Internet. Ca urmare, in cazul HTML extinderile unilaterale nu sunt permise, deoarece definitia unanim acceptata este mentinuta de o organizatie centrala de standardizare, singura indreptatita sa publice noi versiuni ale limbajului de marcare (HTML 1.0 al lui TimBerners-Lee a fost urmat de mai multe alte versiuni, dintre care conteaza, practic, numai standardele W3C: HTML 2.0, HTML 3.2, HTML 4.0, HTML 4.01); aceste versiuni au insemnat largirea posibilitatilor limbajului, prin cresterea numarului marcajelor de la o duzina in prima versiune, la peste o suta in ultima (Marchal, 2000).
  • XML permite crearea de multimi de marcaje specializate, pentru date specifice unor comunitati relativ restranse de utilizatori, din domenii de activitate riguros delimitate. Construit ca subset al SGML, XML pastreaza caracteristicile de metalimbaj ale acestuia, oferind cadrul conceptual pentru definirea de limbaje de marcare pentru diverse domenii. Intre multiplele sale aplicatii se regaseste si XHTML, o redefinire a HTML raportata de aceasta data doar la subsetul SGML care este XML.

XML pastreaza toate virtutile HTML, fara nici una din limitarile acestuia, asigurand descentralizarea controlului limbajelor de marcare specializate prin inregistrarea unor DTD (Document Type Definition) specifice. XML este proiectat sa fie flexibil, astfel incat daca cerintele de accesibilitate se vor modifica in viitor el va fi capabil sa le raspunda.

Un document XML contine doar date si marcaje, modul de afisare fiind definit separat, pe baza unor foi de stil XSL (eXtensible Stylesheet Language) , si a altor standarde asociate XML, iar legaturile sunt si ele separate, ceea ce face ca mentenabilitatea lor sa poata fi asigurata independent.

Viziunea de ansamblu asupra XML a fost clarificata de creatorii sai inca de la prima recomandare W3C dedicata XML 1.0 (Bray et al., 1998), care identifica zece obiective de proiectare, analizate frecvent in literatura de specialitate (Mordkovitch, 2001), (Vasilescu, 2001) etc.

Asa cum arata Myer (2005), esenta XML este sintetizata chiar de cuvintele din denumirea sa:

  • Extensibil (eXtensible). Permite definirea propriilor marcaje, a ordinii in care apar si a modului cum trebuie prelucrate sau afisate. In alt sens, aceasta caracteristica se exprima prin extinderea sensului dat notiunii de document, care poate fi un fisier accesibil printr-un server de fisiere, dar poate fi si o cantitate de date vehiculate in cadrul fluxului dintre doua calculatoare.
  • De marcare (Markup). Caracteristica definitorie cea mai importanta a XML sunt marcajele sau, mai riguros, elementele sale. In fapt, elementele create in XML sunt foarte asemanatoare celor din documentele HTML, cu deosebirea ca XML permite definirea propriei multimi de marcaje.
  • Limbaj (Language). Intr-un anumit sens, XML este un limbaj foarte asemanator cu HTML, cu deosebirea flexibilitatii sale, asigurata prin posibilitatea definirii propriilor marcaje. Mai important este poate faptul ca, asa cum s-a subliniat si anterior, XML este un metalimbaj, care permite crearea sau definirea altor limbaje.

Marele interes creat in jurul XML este determinat cu precadere de caracterul sau extensibil. Intr-o exprimare simpla, XML reprezinta o multime de reguli sintactice predefinite, care trebuie aplicate la descrierea datelor.

O lunga perioada de timp, aplicatiile si sistemele informatice au fost concepute si dezvoltate pentru a prelucra exclusiv datele organizatiei, structurate intr-o maniera specifica, proprietara. Pe masura ce schimbul de informatii cu aplicatii si sisteme din afara organizatiei a inceput sa devina prioritar, realizarea lui a devenit foarte dificila, deoarece sistemele/aplicatiile nu au fost niciodata proiectate pentru a accepta date din exterior, de la sisteme necunoscute.

XML ofera o structura standard uzuala pentru schimbul de date intre sisteme diferite asigurand, in plus, mijloace de validare a datelor si garantand ca structura datelor primite din afara este corecta.

XML descrie o clasa de obiecte de date numite documente XML precum si, partial, comportamentul programelor care le prelucreaza.

Un modul software numit procesor (processor)   sau analizor (parser) este folosit pentru prelucrarea documentelor XML, asigurand accesul la continutul si structura lor pentru diverse aplicatii. Specificatiile W3C descriu comportamentul cerut unui asemenea procesor, precizand modul in care el trebuie sa citeasca datele XML si informatiile pe care trebuie sa le furnizeze aplicatiei solicitatoare.

Asa cum subliniaza Sall (2002), este crucial sa se inteleaga faptul ca folosirea XML nu conduce automat si exclusiv la crearea unor fisiere fizice inregistrate pe disc. XML este folosit si pentru a vehicula mesaje intre aplicatii, cum ar fi de la un server Web catre un client.

Continut XML poate fi generat "din mers", de exemplu de catre o aplicatie care acceseaza o baza de date. Mai mult, un asemenea continut poate fi obtinut prin combinarea unor parti din mai multe fisiere, posibil mixate cu iesiri ale unui program. Totusi, in toate cazurile, structura si sintaxa XML raman invariabile.





Politica de confidentialitate


creeaza logo.com Copyright © 2024 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.