Documente Academic
Documente Profesional
Documente Cultură
SUMAR
XML - fundamente Sintaxa XML Validarea fisierelor XML
INCALZIRE
Intr-un autobuz sunt 7 fete. Fiecare are cate 7 rucsacuri. In fiecare rucsac se afla 7 pisici mari. Fiecare pisica mare are cate 7 pisoi mici cu ea. Intrebare: Cate picioare se gasesc in total in autobuz?
CE ESTE XML?
XML (eXtensible Markup Language) este un meta-limbaj de marcare folosit pentru a structura, depozita i transporta informaie A fost proiectat n scopul transferului de date ntre aplicaii Internet. Este un limbaj definit ca fiind extensibil (eXtensible) datorit faptului c permite utilizatorilor s i defineasc propriile elemente. XML este recomandat de W3C, ncepnd cu februarie 1998. XML descrie structura si intelesul unui document
ELEMENTE DE SINTAXA
XML folosete o reprezentare ierarhic, autodescriptiv, care ofer posibilitatea de redare a datelor fr pierderea semanticii, fiind uor de interpretat de aplicaii. Aceast reprezentare ierarhic presupune o structur arborescent. Exist noduri care joac rolul de printe (rdcin) i noduri care joac rolul de copii (frunze). Un nod printe poate avea unul sau mai muli copii. Documentele XML sunt arbori adnotai de o adncime arbitrar. XML este format din elemente cu atribute.
EXEMPLU
Fisier: agenda.txt
Ion Vasile 4124650 George Mihai 4569120 Cristian Vasile 3129835
Fisier: agenda.xml
XML-ul nu are taguri predefinite. Numele sunt alese de ctre cel care construiete XMLul.
<contact> <nume>Ion</nume> <prenume>Vasile</prenume> <tel>4124650</tel> </contact> <contact> <nume>George</nume> <prenume>Mihai</prenume> <tel>4569120</tel> </contact> <contact>
Marcajele XML sunt "case sensitive Elementele XML trebuie s fie corect imbricate:
Documentele XML trebuie s aib un element rdcina. Valorile atributelor trebuie amplasate ntre ghilimele. Numele elementelor XML trebuie s respecte urmtoarele reguli:
Pot conine litere, cifre i alte caractere. Nu pot ncepe cu numr sau cu semen de punctuaie Nu pot ncepe cu xml Nu pot conine spaii
Un document este bine format dac este corect din punct de vedere sintactic. Un document XML este valid dac:
este un document "bine format" (well-formed); refer o gramatic (DTD sau XML Schema); respect acea gramatic.
DTD
Un DTD (Document Type Definition) definete forma i sintaxa documentului XML. Mai exact, un DTD este un set de reguli care definesc modul de structurare a documentelor XML. Un DTD defineste ce elemente pot aparea intr-un XML, ce atribute pot avea acestea, i ce anume conin aceste elemente. Dac documentul DTD se afl n interiorul fisierulul XML se va folosi urmtoarea sintaxa:
<! DOCTYPE element-radacina [declaraii] >
Exemplu de fiier XML care este bine format dar este invalid:
<DOCTYPE root [ <!ELEMENT root (CLIENT*)> <!ELEMENT CLIENT ANY> <!ELEMENT PHONE (#PCDATA)> ]> <root> <client> <phone>sd <client> asdfsadf </client> fasdf</phone> <name> salkdjhfsadlkjh </name> </client> <phone>sdfasdf</phone> </root>
elementul root conine un element phone -> neconform cu DTD-ul primul elementul phone conine i un element <client> -> neconform cu DTD-ul elementul client conine elementul <name>, nedeclarat n DTD
DTD
Fisierul DTD din slide-ul anterior este interpretat astfel: !DOCTYPE root elementul radacina al documentului este root !ELEMENT phone elementul phone este de tip "#PCDATA (textul va fi parsat folosind un parser)
PCDATA textul va fi parsat de un parser. Tagurile vor fi tratate ca markup si entitatile vor fi expandate. CDATA - textul nu va fi parsat. Tagurile din interiorul textului NU vor fi tratate ca markup si entitatile nu vor fi expandate.
XML SCHEMA
O schem XML este un document bine format (avnd de regul extensia .xsd) care definete structura i tipul elementelor unui document XML, n vederea validrii. Spre deosebire de (sau n plus fa de) DTD-uri, schema XML permite definirea regulilor i a relaiilor ntre elemente i atribute, folosind un fiier XML (cu alte cuvinte, o schem XML este descris n limbajul XML). n plus, se adaug suport pentru spaii de nume (namespaces), tipuri de date i caracteristici mai avansate, cum ar fi restriciile (constraints).
LA CE SE FOLOSESTE XML?
Folosind XML, se poate face schimb de date intre sisteme incompatibile In lumea reala, sistemele informatice si bazele de date contin date in formate incompatibile O provocare foarte costisitoare dpdv al timpului a fost schimbul de de fisiere intre astfel de sisteme pe Internet.
Solutia: Stocarea datelor in format XML - reduce complexitatea acestei probleme si faciliteaza accesul la date din diverse tipuri de aplicatii
LA CE SE FOLOSESTE XML?
XML este folosit pentru a stoca date in fisiere sau in baze de date Au fost dezvoltate aplicatii/agenti/APIuri pentru a stoca si pentru a extrage informatii Odata ce un fisier XML a fost creat, diversi clienti si diverse aplicatii il pot accesa ca sursa de date
LINK-URI XML
www.w3.org/TR/REC-xml.html - specificatii XML 1.0 www.w3.org/XML - W3C's XML homepage www.w3schools.com/xml - XML School: an XML tutorial www.garshol.priv.no/download/xmltools - tooluri XML gratuite
EXEMPLU
parinte(tom, bob). parinte(tom, liz). parinte(pat, jim). masculin(tom). masculin(bob). feminin(liz). feminin(pat). masculin(jim).
<fapte> <relatii_familie> <parinte> <nume> Tom</nume> <sex>M</sex> <copil> <nume>Bob</nume> <sex> M </sex> </copil> <copil> <nume> Liz></nume> <sex> F </sex> </copil> </parinte> <parinte> <nume> Pat </nume> <sex> F </sex> <copil> <nume>Jim</nume> <sex>M</sex> </copil> </parinte> </relatii_familie> </fapte>
SARBATORI FERICITE!