0% au considerat acest document util (0 voturi)
25 vizualizări3 pagini

Proiect XML Si Informatie Structurata

Documentul prezintă structura unui campionat sportiv reprezentată într-un fișier XML. Sunt definite elementele și atributele necesare pentru a descrie meciurile competiției, echipele participante și detaliile acestora. De asemenea, este prezentată implementarea schemei XML și a fișierului XSL pentru transformarea datelor într-un format tabelar vizualizabil.

Încărcat de

Andrada Crimson
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
25 vizualizări3 pagini

Proiect XML Si Informatie Structurata

Documentul prezintă structura unui campionat sportiv reprezentată într-un fișier XML. Sunt definite elementele și atributele necesare pentru a descrie meciurile competiției, echipele participante și detaliile acestora. De asemenea, este prezentată implementarea schemei XML și a fișierului XSL pentru transformarea datelor într-un format tabelar vizualizabil.

Încărcat de

Andrada Crimson
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd

Proiect XML si informatie structurata

Raducanu Andrada Maria-Magdalena

343A3
Partea I: Analiza domeniului
Domeniul ales se numeste: Campionat Mondial de fotbal/baschet/handbal.

Avand in vedere ca domeniul tratat este unul de tip competitie, am ales urmatoarea structura: analiza se
face la nivel de meciuri ce se desfasoara in cadrul competitiei. Tipul competitiei este de single
elimination, asadar, odata ce un meci este jucat, una dintre echipe trece in etapa urmatoare, iar echipa
care a pierdut paraseste campionatul.

Constrangerile intalnite au vizat modul in care pot organiza informatia: ce caracteristici sunt necesare
pentru fiecare echipa si care sunt considerate optionale, ce informatii trebuie precizate pentru a
caracteriza succinct meciul.

Am ales in final definirea urmatoarelor tag-uri, avand copii aferenti:

tag-ul parinte: campionat. Acesta este radacina XML-ului bine format

tag-ul meci: acesta reprezinta urmatorul nivel in care am ales sa organizez informatia

tag-ul echipa: acest tag caracterizeaza cu informatiile esentiale, cele 2 echipe (distincte) care joaca
intr-un meci. In interior exista urmatoarele:

- nume: numele echipei care joaca in meciul respective


- regiune: regiunea (judetul) din care provine
- antrenor: numele antrenorului echipei

tag-ul categorieMeci: fiind o competitie single elimination cu un numar limitat de echipe, acest tag
poate avea urmatoarele valori: sferturi, semifinala si finala

tag-ul eveniment: contine informatiile despre data si ora la care se va juca meciul. In interior se
gasesc:

- data: data la care se joaca meciul


- ora: ora la care se joaca meciul

tag-ul locatia: contine informatii despre locatia unde se va juca meciul.

DTD-ul asociat XML-ului este unul extern si contine metadatele despre structura “arborelui” XML. Sunt
definite 11 elemente, pentru fiecare tag in parte care contin majoritar text (date caracter):

<!ELEMENT campionat (meci+)>


<!ELEMENT meci (echipa+,categorieMeci,eveniment+,locatia)>
<!ELEMENT echipa (nume,regiune,antrenor)>
<!ELEMENT nume (#PCDATA)>
<!ELEMENT regiune (#PCDATA)>
<!ELEMENT antrenor (#PCDATA)>
<!ELEMENT categorieMeci (#PCDATA)>
<!ELEMENT eveniment (data,ora)>
<!ELEMENT data (#PCDATA)>
<!ELEMENT ora (#PCDATA)>
<!ELEMENT locatia (#PCDATA)>

Partea a II-a: Implementarea aplicatiei


XML Schema a fost proiectat fiind completat fata de DTD cu niste reguli mai complexe decat cele oferite
de formatul anterior mentionat.

Numai atributele si elementele globale trebuie sa aiba un spatiu de nume.

In interiorul structurii <schema>, elementul radacina este campionat. In continuare, elementele care
urmeaza sunt complexType deoarece acesta contine si alte elemente, care sunt reprezentate in mod
sequencial.

Pentru elemental aferent tag-ului echipa am impus restrictia de aparitii maxime egale cu 2. Elementele
din interior sunt tratate la fel ca cele din elemental radacine: complexType si sequence. Toate acestea
sunt de tipul string.

Pentru elemental categoriMeci am impus restrictia de enumaratie: acesta poate avea doar urmatoarele
valori: sferturi, seminifinala, finala. Acestea au fost trate de data aceasta ca fiind simpleType.

Inca o restrictie a fost adaugata pentru elemental locatia, anume acela de a pastra spatiile albe din
textul aferent: whitespace value=”preserve”.

Pe langa toate acestea, am adaugat si o extensie, de la elementul eveniment, anume, evenimentExtins:


acesta imi adaga la elementele deja existente din eveniment si elemental locatia. Am realizat acest lucru
in urmatorul mod: extensia este de tipul complexType si are in interiorul sau complexContent, deoarece
trebuie sa specific si elemental de baza de la care fac exensia. In cazul meu, acesta este eveniment. In
mod secvential se specifica elementele in plus.

Foile de stiluri au fost definite in fisierul XSL. Pentru acestea am definit o structura de tip tabel in HTML
si am iterat pe rand fiecare element din XML, folosind structuri de tipul xsl:for-each si xsl:value-of pentru
a putea accesa toate tagurile cu informatiile aferente structurii mele.

Interfata vizuala permite incarcarea fisierului XML si al fisierului XSL de pe un mediu extern, parsarea si
transformarea acestora pentru vizualizarea ca si tabel.

S-ar putea să vă placă și