Sunteți pe pagina 1din 8

Lucrarea de laborator N 5.

Crearea documentului RDF validat

Sarcina

De creat un RDF document care contine informatia descrisa in varianta respectiva:

Varianta: Informaţia despre ciuperci în pădure:

Informaţia despre ciuperci:

pita_vacii este o ciupercă


hrib este o ciupercă
flocoşei este o ciupercă

stejar este un copac


mesteacan este un copac
pin este un copac

copac este o plantă


tufar este o plantă

padure este un loc


luminiş este un loc
desiş este un loc
cîmp este un loc

hrib creşte în pădure


flocoşei cresc în luminiş
pita vacii creşte lîngă pini
hrib creşte lîngă stejar
<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:chp="http://www.plante.vik/plante#">

<rdfs:Class rdf:ID="loc" />

<rdfs:Class rdf:ID="padure">
<rdfs:subClassOf rdf:resource="#loc"/>
</rdfs:Class>
<rdfs:Class rdf:ID="luminis">
<rdfs:subClassOf rdf:resource="#loc"/>
</rdfs:Class>
<rdfs:Class rdf:ID="desis">
<rdfs:subClassOf rdf:resource="#loc"/>
</rdfs:Class>
<rdfs:Class rdf:ID="cimp">
<rdfs:subClassOf rdf:resource="#loc"/>
</rdfs:Class>

<rdfs:Class rdf:ID="planta" />

<rdfs:Class rdf:ID="copac">
<rdfs:subClassOf rdf:resource="#planta"/>
</rdfs:Class>
<rdfs:Class rdf:ID="tufar">
<rdfs:subClassOf rdf:resource="#planta"/>
</rdfs:Class>

<rdfs:Class rdf:ID="pin">
<rdfs:subClassOf rdf:resource="#copac"/>
</rdfs:Class>
<rdfs:Class rdf:ID="artar">
<rdfs:subClassOf rdf:resource="#copac"/>
</rdfs:Class>
<rdfs:Class rdf:ID="mesteacan">
<rdfs:subClassOf rdf:resource="#copac"/>
</rdfs:Class>
<rdfs:Class rdf:ID="stejar">
<rdfs:subClassOf rdf:resource="#copac"/>
</rdfs:Class>

<rdfs:Class rdf:ID="ciuperca" />

<rdfs:Class rdf:ID="pita_vacii">
<rdfs:subClassOf rdf:resource="#ciuperca"/>
</rdfs:Class>
<rdfs:Class rdf:ID="hrib">
<rdfs:subClassOf rdf:resource="#ciuperca"/>
</rdfs:Class>
<rdfs:Class rdf:ID="flocosei">
<rdfs:subClassOf rdf:resource="#ciuperca"/>
</rdfs:Class>

<rdf:Description rdf:about="hrib">
<chp:loc rdf:resource="#padure" />
</rdf:Description>

<rdf:Description rdf:about="flocosei">
<chp:loc rdf:resource="#luminis" />
</rdf:Description>

<rdf:Description rdf:about="pita_vacii">
<chp:linga rdf:resource="#pin" />
</rdf:Description>

<rdf:Description rdf:about="hrib">
<chp:linga rdf:resource="#stejar" />
</rdf:Description>

</rdf:RDF>
Validarea.

Triples:

Nu
mb Subject Predicate Object
er

http://
http://www.w3.org/ www.w3.org/ http://www.w3.org/
1 RDF/Validator/run/ 1999/02/22- 2000/01/rdf-
1320517454722#loc rdf-syntax- schema#Class
ns#type

http://
http://www.w3.org/ www.w3.org/ http://www.w3.org/
2 RDF/Validator/run/ 1999/02/22- 2000/01/rdf-
1320517454722#padure rdf-syntax- schema#Class
ns#type

http://
www.w3.org/
http://www.w3.org/ http://www.w3.org/
2000/01/
3 RDF/Validator/run/ RDF/Validator/run/
rdf-
1320517454722#padure 1320517454722#loc
schema#subC
lassOf

. . . . . . . . . . . . . . .
Explicatii suplimentare

In exemplul dat cu ciuperci sunt citeva tipuri de relatii:

- relatia clasa – subclasa:

pita_vacii este o ciupercă


hrib este o ciupercă
flocoşei este o ciupercă

stejar este un copac


mesteacan este un copac
pin este un copac

copac este o plantă


tufar este o plantă

padure ete un loc


luminiş este un loc
desiş este un loc
cîmp este un loc

Copac, planta, loc, cipuerca si altele sunt clase de obiecte ce includ multimea de obiecte ce noi
numim copac, planta, ciuperca, etc.

Exemplu similar poate fi relatia intre clase: organizatia, organizatia comerciala, firma, internet-
provider, agent-telefonie-mobila, s.a.

agent-telefonie-mobila este organizatia comerciala


internet-provider este firma
firma este organizatia comerciala
organizatia comerciala este organizatia
partid este organizatia
etc.

Exemplu in RDF:

<rdfs:Class rdf:ID=" organizatia " />

<rdfs:Class rdf:ID=" organizatia comerciala">


<rdfs:subClassOf rdf:resource="# organizatia "/>
</rdfs:Class>
<rdfs:Class rdf:ID=" firma ">
<rdfs:subClassOf rdf:resource="# organizatia comerciala "/>
</rdfs:Class>
<rdfs:Class rdf:ID=" internet-provider ">
<rdfs:subClassOf rdf:resource="# firma "/>
</rdfs:Class>
<rdfs:Class rdf:ID=" agent-telefonie-mobila ">
<rdfs:subClassOf rdf:resource="# organizatia comerciala "/>
</rdfs:Class>
Fiecare clasa este un grup de obiecte similare (coiperci, organizatii, persoane, telefoane, etc.)
Elementele grupurilor date se numesc instantele claselor. De exemplu, Balmus Andrei este o
persoana, Verejan Inna este o persoana, Moldcell este o organizatie, Orange este o organizatie,
Samsung Galaxy S® 4 (AT&T) este un telefon mobil, Nokia 108 Dual SIM este un telefon
mobil. Relatia aceasta se exprima astfel:

<rdf:Description rdf:ID=" Orange ">


  <rdf:type rdf:resource="#CompanieDeTelefonieMobila "/>
</rdf:Description>
<rdf:Description rdf:ID=" Moldcell ">
  <rdf:type rdf:resource="#CompanieDeTelefonieMobila "/>
</rdf:Description>
<rdf:Description rdf:ID="verejan_inna ">
  <rdf:type rdf:resource="#person "/>
</rdf:Description>
<rdf:Description rdf:ID=" balmus_andrei ">
  <rdf:type rdf:resource="#person "/>
</rdf:Description>
etc.

Alt tip de relatie descrie proprietatile claselor care pot fi de tipuri variate.
Un tip care este in exemplu sunt proprietatile ce leaga doua clase:

hrib creşte în pădure


aceasta proprietate a lui hrib stabileste relatia intre clasa hrib si clasa copac:

<rdf:Description rdf:about="hrib">
<chp:linga rdf:resource="#stejar" />
</rdf:Description>

unde relatia este numita linga.

Proprietatea aceasta poate fi descrisa la general ca:

<rdf:Property ID="linga" rdf:label="creste linga">


<rdfs:domain rdf:resouse="ciuperca">
<rdfs:range rdf:resouse="copac">
</rdf:Property>

Ce descrie relatia data ca fiind valabila intre ciuperci si copaci.

Alt tip de proprietate este reprezentat ca o valoare. Valorile pot fi de multe tipuri, ca de exemplu:
un numar intreg, un numar zecimal, un caracter, un sir de caractere, s.a. (de fapt tipurile sunt
similare cu cele in baze de date). De exemplu, proprietatea unei persoane poate fi anul nasterii:

<rdfs:Class rdf:ID="person" />


<rdf:Property ID="anul_nasterii" rdf:label="s-a nascut">
<rdfs:domain rdf:resouse="person">
<rdfs:range rdf:resouse="xs:integer">
</rdf:Property>

Atunci o putem folosi pentru instantele claselor:

<rdf:Description rdf:about=" verejan_inna ">


<foaf:name> Verejan Inna </foaf:name>
< per:anul_nasterii> 1990</ per:anul_nasterii >
</rdf:Description>

Prefixul per nu este descris.

De fapt descrierea claselor si proprietatilor nu este obligatorie. Puteti doar sa le folositi ca in


exemplul lucrarii 3, cum eu am facut cu proprietatea linga.

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