web03 semantic web: resource description framework
DESCRIPTION
O prezentare privitoare la una dintre tehnologiile de baza ale Web-ului semantic: RDF -- cadru de lucru pentru descrierea resurselor.TRANSCRIPT
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Web semantic
Dr. SabinCorneliu BuragaFacultatea de Informatica
Universitatea “A.I.Cuza” – Iasi, Romania
http://www.infoiasi.ro/~busaco/
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Resource Description Framework
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
“Lucrurile au si ele viata. Totul este sa le trezesti sufletul.”
Gabriel García Márquez
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
intrebari
Cum (re)folosim datele distribuite pe Web?
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
necesitati
O maniera de a atasa date privitoare la date
creare de vocabulare de termeni descriind “ceva” (proprietati, domenii, lumi,...) – resurse Web
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
necesitati
Un mod de a specifica relatii intre resurse
structuri de organizare a datelorin cadrul unui sau mai multor web‐uri
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
realitati
Uzual, datele sunt reprezentate in forma tabelaramodelul relational
un rand descrie un “obiect” (item) specific
o coloana reprezinta o proprietate a tuturor item‐ilor
o celula desemneaza o valoare particularaa unei proprietati asociate obiectului de interes
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
exemplu
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
motivatie
Distribuirea datelor pe Web
fragmente de informatii vor fi disponibilepe calculatoare diferite,
accesate via tehnologiile Web actuale
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
motivatie
Distribuirea datelor pe Web
solutia 1:fiecare calculator mentine informatiile
despre mai multe randuri complete dintr‐un tabel
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
exemplu
Distribuirea datelor pe Web
Care‐i schema comuna?
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
motivatie
Distribuirea datelor pe Web
solutia 1:fiecare calculator mentine informatiile
despre mai multe randuri complete dintr‐un tabel
necesitatea unui mecanism de coordonare intre serveree.g., partajarea schemei comune folosite
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
motivatie
Distribuirea datelor pe Web
solutia 2:fiecare calculator e responsabil cu una/mai multe coloane
complete din cadrul tabelului
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
exemplu
Distribuirea datelor pe Web
Cine referape cine?
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
motivatie
Distribuirea datelor pe Web
solutia 2:fiecare calculator e responsabil cu una/mai multe coloane
complete din cadrul tabelului
necesitatea cunoasterii identitatii datelor modelatee.g., fiecare resursa are asociat un identificator global
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
motivatie
Distribuirea datelor pe Web
solutia 3:fiecare masina realizeaza managementulunui numar de celule dintr‐un tabel
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
exemplu
Distribuirea datelor pe Web
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
motivatie
Distribuirea datelor pe Web
solutia 3:fiecare masina realizeaza managementulunui numar de celule dintr‐un tabel
combina avantajele abordarilor precedente
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
motivatie
Distribuirea datelor pe Web
solutia 3:fiecare masina realizeaza managementulunui numar de celule dintr‐un tabel
fiecare celula trebuie referita de 3 valori unice:o referinta globala ce desemneaza un rand +o referinta globala ce desemneaza o coloana +o referinta globala ce specifica valoarea celulei
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
rdf
Resource Description Framework
cadru (abstract) pentru descrierea resurselorla nivelul calculatorului
fundatie a Web‐ului semantic
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
rdf
Recomandare W3CRDF Model & Syntax Specification (1999)
RDF/XML Syntax Specification – Revised (2004)
http://www.w3.org/RDF
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Ofera modalitatile de specificare a triplelor(rand, coloana, valoare de celula)
via identificatori uniformi de resurse – URI
rdf
URI
URI
URI
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Resursa – specificata de URI‐uriProprietate – aspect, caracteristica, atribut sau relatieDeclaratie – triplu de forma { subiect, predicat, obiect }
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Subiect = rand (resursa despre care se “spune” ceva)Predicat = coloana (o proprietate a subiectului)Obiect = celula (valoare particulara a proprietatii)
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
SubiectResursa – specificata de un URI – care este descrisavia predicat si obiect
PredicatRelatie – desemnata de un URI – stabilitaintre subiect si obiectPoate fi considerat si drept atribut (proprietate)
ObiectDesemneaza resursa referita de un predicatsau specifica o valoare
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
rdf: model – exemplu
Subiect Predicat ObiectApple produce iTunes
Microsoft produce OfficePHP areStatut DeschisOffice areStatut ComercialIBM este Companie
Microsoft este CompanieJava este LimbajExcel parteDin OfficeSabin localizatIn RomaniaSabin utilizeaza iTunes
Vocabularde termeni
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Atunci cand mai multe triple refera aceeasi resursa, le putem reprezenta sub forma de grafuri
triplu = muchie intre subiect si obiect
predicat = eticheta asociata muchiei digrafului
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
rdf: model – exemplu
Excel OfficeparteDin
Microsoft
produsDeproduce
Comercial
areStatut
areStatut
Mac OS XCompanie
este Appleproduce
este
Sabinutilizeaza
Persoanaeste
Graful unui model conceptual referitor la un web:
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Predicatele specifica natura relatiilor ce pot fistabilite intre subiect si obiect
se pot exprima folosind vocabulare publicate pe Web,ce sunt disponibile liber si sunt referite de URI
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Modelul pus la dispozitie poate fi folositla asocierea de metadate resurselor Websi la specificarea relatiilor dintre resurse
se poate utiliza si o sintaxa XML
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Autorul resursei desemnate de URI‐ulhttp://www.infoiasi.ro/~web/ este Sabin Buraga
<rdf:RDF><rdf:Description rdf:about="http://www.infoiasi.ro/~web/">
<s:Autor>Sabin Buraga</s:Autor> </rdf:Description>
</rdf:RDF>
rdf: model – exemplu
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Alternative sintactice:autor ("http://www.infoiasi.ro/~web/", "Sabin Buraga")
rdf: model – exemplu
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Alternative sintactice:
este ("#Java", "#Limbaj")este ("#Sabin", "#Persoana")
utilizeaza ("#Sabin", "#iTunes")utilizeaza ("#Sabin", "http://twitter.com/")
refera ("http://twitter.com/busaco", "http://www.purl.org/net/busaco")
rdf: model – exemplu
isA sau a
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Cuvintul englezesc “book” e tradusin limba romana prin “carte”
translatedInto ("#book", "carte")
Termenul “book” este un substantivisA ("#book", "#noun")
rdf: model – exemplu
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Un nod al grafului RDF e referit unic via un URI
doar etichetind resursele cu nume– e.g., “Companie”, “produce”, “Java”,… –
nu se garanteaza ca specificamacelasi concept (aceeasi resursa)
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Un nod al grafului RDF e referit unic via un URI
pot exista alte entitati care refera aceleasiconventii sintactice cu alte semantici
Java (insula) vs. Java (sortiment de cafea) vs. Java (limbaj)
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Un nod al grafului RDF e referit unic via un URI
folosind URI‐uri, putem fuziona (merge) grafurireferitoare la concepte comune
daca doi agenti doresc sa refere aceeasi resursa,trebuie ales un URI menit a desemna in mod unic
aceasta resursa
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Un URI ofera o identificare globala a unei resurse
putem stabili – via URI – semnificatia unui termenhttp://geo.locations.info#java
urn:coffee:javahttp://programming.org/Java
in cazul grafurilor, un nod fuzioneaza cu altuldaca e referit de acelasi URI
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Putem exprima URI‐urile via nume calificate(qualified names – qnames)
spatiu de nume:termen
rdf: model
constructie XML (e.g., nume de element)
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Via nume calificate desemnam vocabulare de termeni
coffee:Javageo:Java geo:Romania geo:USA
lang:C# lang:Java lang:PHP lang:Rubys:areStatut s:este s:produce
soft:iTunes soft:Office soft:XWikixsd:integer xsd:string
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
rdf: model
Subiect Predicat Obiectcom:Apple s:produce soft:iTunes
com:Microsoft s:produce soft:Officelang:PHP s:areStatut lic:Deschissoft:Office s:areStatut lic:Comercialcom:IBM s:este s:Companielang:Java s:este s:Limbajsoft:Excel s:parteDin soft:Officepers:Sabin s:localizatIn geo:Romaniapers:Sabin s:utilizeaza soft:iTunes
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Spatiile de nume implicite (default) pot fi omise
util daca se utilizeaza vocabularul local
:Persoana:cunoastePe:localizatIn
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Meta‐datele pot fi asociate unor resurse deja definite:
<rdf:Description rdf:ID="csb"><s:Rol>prezentator la <Web /></s:Rol>
</rdf:Description>...<rdf:Description rdf:about="#csb">
<s:Adresa>http://www.purl.org/net/busaco</s:Adresa></rdf:Description>
rdf: model
Vocabularde termeni
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Colectii de resurse: bag (multi‐set), secventa, alternativa“Cartea Programarea in Web 2.0 are ca autori
pe Anca, Ciprian si Ecaterina.”<rdf:RDF>
<rdf:Description rdf:about="http://webpro20.blogspot.com/"><s:Autor><rdf:Bag>
<rdf:li rdf:resource="http://students.infoiasi.ro/~lucaa/" /> <rdf:li rdf:resource="http://www.2wit.com/" /> <rdf:li rdf:resource="http://students.infoiasi.ro/~evalica/" />
</rdf:Bag> </s:Autor>
</rdf:Description> </rdf:RDF>
rdf: model
Bag, Seq, Alt
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Specificarea tipurilor de date intr‐un model RDFse realizeaza via proprietatea predefinita rdf:type
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
rdf: model – exemplu
Subiect Predicat Obiectcom:Adobe rdf:type s:Companie
com:Microsoft rdf:type s:Companielang:Java rdf:type s:Limbaj
geo:Romania rdf:type geo:Statpers:Ecaterina rdf:type s:Autors:utilizeaza rdf:type rdf:Propertys:parteDin rdf:type rdf:Propertyfoaf:knows rdf:type rdf:Property
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Se pot exprima si relatii non‐binare, apelindu‐se la o resursa intermediara
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"xmlns:un="http://www.schemas.org/Units/">
<rdf:Description rdf:about="urn:ISBN:0-201-00023-7"><un:price rdf:parseType="Resource">
<rdf:value>33.00</rdf:value><un:units rdf:resource="http://www.schemas.org/Units/USdollar"/>
</un:price></rdf:Description>
</rdf:RDF>
Costul cartii referite de ISBN‐ul ei este de 33 $
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Reificare: declaratii despre declaratii
faptul 1: Sabin‐Corneliu Buraga este autorul resurseidesemnate de URI‐ul http://www.infoiasi.ro/~busaco/
faptul 2: Dan Cristea afirma ca Sabin‐Corneliu Buragaeste autorul resursei desemnate de
URI‐ul http://www.infoiasi.ro/~busaco/
astfel, pot fi modelate meta‐date privitoare la meta‐date
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Stabilirea modului de procesare a declaratiilorse face prin parseType
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Atributul parseType="Literal" poate fi utilizatpentru ca procesorul RDF sa nu prelucreze
continutul unui anumit element
<dc:title rdf:parseType="Literal">F.Kafka: <html:strong>Procesul</html:strong></dc:title>
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Atributul parseType="Resource" se folosestepentru a semnala faptul ca e vorba de o resursa
si nu de o valoare
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Pentru a specifica explicit o asertiune privitoarela o alta asertiune, RDF ofera trei resurse speciale:
rdf:subjectrdf:predicate
rdf:object
explicit reification
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
“Wikipedia afirma faptul ca Apple produce iTunes.”
p:prop rdf:subject com:Apple ;rdf:predicate s:produce ;rdf:object soft:iTunes .
web:Wikipedia s:afirma p:prop .
rdf: model – exemplu
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
“Wikipedia afirma faptul ca Apple produce iTunes.”
p:prop rdf:subject com:Apple ;rdf:predicate s:produce ;rdf:object soft:iTunes .
web:Wikipedia s:afirma p:prop .
rdf: model – exemplu
A nu se confunda cu declaratia:
com:Apple s:produce soft:iTunes .
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Modelul RDF nu este “legat” de o anumita sintaxa
Sintaxele “standard” utilizate sunt:digrafuri (reprezentari grafice)
NtripleN3
RDF/XML
http://internetalchemy.org/2005/09/the-sixteen-faces-of-eve
rdf: serializare
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Refera resursele via URI‐uri absolute scrise intre “<“ si “>”, in ordinea subiect‐predicat‐obiect, urmate de “.”
<http://www.infoiasi.ro/SW.rdf#Sabin><http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://www.infoiasi.ro/SW.rdf#Autor> .
rdf: serializare – N‐triples
a se consulta siwww.w3.org/2007/02/turtle/primer/
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Notation 3 RDF (N3)recurge la nume calificate – qnames
@prefix s: <http://www.infoiasi.ro/SW.rdf#>@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>s:Sabin rdf:type s:Autor .
rdf: serializare – N3
uzual, specificat prin a
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Notation 3 RDF (N3)faptul “Sabin este o persoana si‐i cunoaste pe Andrei,
Ciprian si Emanuel” se poate modela prin:
@prefix s: <http://www.infoiasi.ro/SW.rdf#>@prefix foaf: <http://xmlns.com/foaf/0.1>s:Sabin a s:Persoana ;
foaf:knows s:Andrei ;foaf:knows s:Ciprian ;foaf:knows s:Emanuel .
rdf: serializare – N3
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
“Formatul cartii referite printr‐un ISBN este disponibilca text obisnuit, HTML sau Postscript.”
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description rdf:about="urn:0-201-00023-7"><dc:format>
<rdf:Alt><rdf:li>text/html</rdf:li><rdf:li>text/plain</rdf:li><rdf:li>application/postscript</rdf:li>
</rdf:Alt></dc:format>
</rdf:Description></rdf:RDF>
rdf: serializare – RDF/XML
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
“Formatul cartii referite printr‐un ISBN este disponibilca text obisnuit, HTML sau Postscript.”
rdf: serializare – grafuri
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Problema:Cum reprezentam o resursa ce nu are identitate peWeb?
in unele situatii, cunoastem anumite aspecteprivitoare la “ceva”, fara a‐i sti identitatea
rdf – noduri vide
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Exemplu: o companie/persoana lucreaza la un produsa carui identitate ramine necunoscuta
soft:ProdusX rdf:type soft:Aplicatie ;s:areStatut lic:Deschis .
com:Google s:produce soft:ProdusX .
rdf – noduri vide
Cum procedamdaca nu‐i stimnumele?
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Recurgem la specificarea unui nod vid(blanc node – bnode)
“Exista o aplicatie (software) produsa de Google.”
[ rdf:type soft:Aplicatie ;s:areStatut lic:Deschis ]
un nod blanc nu are asociat un URI
rdf – noduri vide
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Recurgem la specificarea unui nod vid(blanc node – bnode)
“Exista o aplicatie (software) produsa de Google.”
com:Google s:produce [ rdf:type soft:Aplicatie ;
s:areStatut lic:Deschis ] .
rdf – noduri vide
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Uzual, asertiunile RDF specifica meta‐date privitoare laaspecte care privesc caracteristicile “externe”
ale unei resurse: autor, tip, data publicarii, copyright,...
RDF poate fi util pentru descrierea resurselor “opace”(cu reprezentari in formate binare)
e.g., multimedia – fisiere audio, video,…
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Asocierea de vocabulare de meta‐date privind resursele:DCMI (Dublin Core Metadata Initiative)
FOAF (Friend Of A Friend)DOAP (Description Of A Project)
RDFaSKOS (Simple Knowledge Organizational System)
…
a se vizita http://purl.org/vocab/
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Vocabulare de meta‐dateDCMI – Dublin Core Metadata Initiative
proprietati pentru descrierea resurselor:<dc:Title>, <dc:Description>, <dc:Contributor>, <dc:Publisher>,
<dc:Date>, <dc:Type>, <dc:Subject>,…
www.dublincore.org
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Relatii intre persoaneFOAF – Friend Of A Friend
exprima informatii despre o persoanasi relatiile acesteia cu alte persoane
suport pentru e‐comunitati (social networking)
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Relatii intre persoaneFOAF – Friend Of A Friend
http://rdfweb.org/
meta‐date privitoare la o persoana:<foaf:Person>, <foaf:name>, <foaf:gender>, <foaf:title>,
<foaf:mbox>, <foaf:homepage>, <foaf:weblog>,<foaf:Image>, <foaf:depiction>,...
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Relatii intre persoaneFOAF – Friend Of A Friend
relatia knowsnu se specifica relatii mai rafinatee.g., friendOf, collaboratorOf
specializari: http://purl.org/vocab/relationship
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Relatii intre persoaneFOAF – Friend Of A Friend
Exemplu:“Sabin il cunoaste pe Cristi.”
@prefix foaf: <http://xmlns.com/foaf/0.1><#sabin> <foaf:knows> <#cristi> .
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
rdf: model
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
<foaf:Person rdf:nodeID="busaco"><foaf:name>Sabin Buraga</foaf:name><foaf:title>Dr</foaf:title><bio:keywords>...</bio:keywords><bio:event>
<bio:Birth><bio:date>1974-07-01</bio:date><bio:place>Iasi, Romania</bio:place>
</bio:Birth></bio:event>
</foaf:Person>
rdf: utilizari
FOAF + BIO
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Relatii intre comunitati virtualeSIOC – SemanticallyInterlinked Online Communitiescadru pentru interconectarea siturilor de comunitati(blog, calendar, aggregator,…) & listele de discutii(precum bulletin board, mailing list, newsgroup)
foloseste RDF, FOAF, DCMI
http://siocproject.org/
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Descrierea unui proiect (software)DOAP – Description Of A Project
meta‐date privitoare la un proiect:<doap:Project>, <doap:name>, <doap:homepage>,<doap:description>, <doap:wiki>, <doap:maintainer>,
<doap:programming-language>,...
se bazeaza pe RDF si FOAFhttp://usefulinc.com/ns/doap
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Asocierea de meta‐date documentelor hipermediaAdobe XMP (Extensible Metadata Platform)
meta‐date “scufundate” in resursa Webutilizeaza XML si un subset al RDFbazat pe vocabulare DCMI, EXIF,...
XMP SDK disponibil gratuit (ECMAScript)
www.adobe.com/xmp
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Specificarea constructiilor RDF direct in XHTMLRDFa
utilizarea unor atribute XHTML specifice menite a modelainformatiile disponibile intr‐o paginaWeb in vederea
procesarii acestora de catre calculator
www.w3.org/TR/rdfasyntaxwww.w3.org/TR/xhtmlrdfaprimer/
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Specificarea constructiilor RDF direct in XHTMLRDFa
specificarea relatiilor unei pagini cu alt document extern folosind atributul rel
asocierea de proprietati unor elemente XHTMLvia atributul property
specificarea de proprietati unei resurse date de aboutdesemnarea tipului unei constructii prin typeof
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Exemplu: modelarea retelei sociale a unui utilizator
<div about="#me" rel="foaf:knows"><ul><li typeof="foaf:Person">
<a property="foaf:name" rel="foaf:homepage" href="...">Tux</a></li><li typeof="foaf:Person">
<a property="foaf:name" rel="foaf:homepage" href="...">Anca</a></li><li typeof="foaf:Person">
<a property="foaf:name" rel="foaf:homepage" href="...">Cip</a></li></ul><p>Created by <span property="dc:creator">WordPress</span>.</p>
</div>
rdf: utilizari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Despre documentul de la adresa http://www.infoiasi.ro/~busaco/se specifica următoarele fapte:
are titlul „Situl lui Sabin”a fost vizitat de „ceva”
…care se numeşte Dragoş…şi care are situl personal la adresa http://www.adt.ro/
rdf: exemplu
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
<rdf:Description rdf:about="http://www.infoiasi.ro/~busaco/"><viz:vizitatDe>
<rdf:Description><foaf:homepage rdf:resource="http://www.adt.ro/" /><foaf:name>Dragoş</foaf:name>
</rdf:Description></viz:vizitatDe><dc:title>Situl lui Sabin</dc:title></rdf:Description>
rdf: exemplu
RDF/XML
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
rdf: exemplu
Ca graf…
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
<http://www.infoiasi.ro/~busaco/> <http://purl.org/dc/elements/1.1/title> "Situl lui Sabin" .
_:blanc <http://xmlns.com/foaf/0.1/homepage> <http://www.adt.ro/> .
_:blanc <http://xmlns.com/foaf/0.1/name> "Dragoş" .<http://www.infoiasi.ro/~busaco/>
<urn:infoiasi.ro:Vizite#vizitatDe> _:blanc .
rdf: exemplu
Triple
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
<meta about="http://www.infoiasi.ro/~busaco/"><meta property="viz:vizitatDe">
<meta property="foaf:name">Dragoş</meta><link rel="foaf:homepage" href="http://www.adt.ro/" />
</meta><meta property="dc:title">Situl lui Sabin</meta>
</meta>
rdf: exemplu
XHTML 2.0
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Modelul RDF permite formularea de asertiuniexplicite privitoare la resursele Web
se folosesc triple (subiect, predicat, obiect)referite prin URI‐uri
concluzii
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
RDF “helps you to create Weblike relationships between data, which is not easily donein a typical relational database.”
Microsoft Developer Network, 2006
concluzii
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
RDF ofera premisa modelarii interconexiunilorweb‐urilor diferite existente pe Web
a se (re)vedea initiativa Linked Open Data
www.linkeddata.org
>2 miliarde de triple RDF>3 milioane de legaturi stabilite intre seturi de date
concluzii
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Rezumat
BazaWeb‐ului semantic: modelul RDF
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
?