Slides
Slides
Slides
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Resource Description Framework<br />
(RDF)<br />
In pratica, però, datiRDF sonocollezionatiin database<br />
relazionalio in altrerappresentazioninative, le<br />
cosiddette“triple stores”, o con “quad stores” se il<br />
contesto(ovveroilgrafodi riferimento) èanch’esso<br />
memorizzatocon triple RDF.<br />
Nel1999 èstatopubblicatocome raccomandazione<br />
del W3C la prima specifica della sintassidel data<br />
model RDF<br />
RDF: Statement reificationand context<br />
La conoscenzamodellizzataattraverso unacollezionedi statement RDF può essere<br />
reificata. In talcaso a ciascuno statement (ovvero a ciascunatripla subjectpredicate-object)<br />
vieneassegnatoun proprio unico URI e trattato come una<br />
risorsaessastessaneicui confrontièpossibilefare uno statement addizionale;<br />
esempio "Jane says that John is the author of document X".<br />
In un database di triple RDF reificato, ciascuno statement originario, essendo esso<br />
stessounarisorsa, in genereha almeno 3 statement addizionaliscrittiper lui: uno<br />
per asserirecheilsuo soggetto èunaqualcherisorsa, unoper asserirecheilsuo<br />
predicato èunaqualcherisorsa, ed unoper asserirecheilsuo oggetto èuna<br />
qualcherisorsao literal.<br />
---------<br />
Le risorse non corrispondono soltanto a cose che possono essere intuitivamente considerate<br />
come oggetti fisici. Molto spesso vengono utilizzate per rappresentare concetti astratti,<br />
eventi, azioni e così via. Il processo che porta a concettualizzare questi aspetti della realtà<br />
come entità èdetto reificazione.<br />
RDF: Queryand inferencelanguages<br />
Il query language predominanteper RDF graphs è<br />
SPARQL, un linguaggioSQL -like, chedal15<br />
gennaio2008 èuna raccomandazionedel W3C<br />
(acronimoricorsivo: SPARQL Protocol and RDF<br />
Query Language. )<br />
Le query SPARQL consistonodi triple patterns,<br />
conjunctions, disjunctions and optional patterns.<br />
RDF: Resourceidentification<br />
• Il soggetto di uno statement RDF èunarisorsa, possibilmente<br />
identificata da un Uniform Resource Identifier (URI) o meno<br />
(risorsaanonima).<br />
• Il predicato èanch’esso una risorsa che rappresenta una relazione.<br />
• L’oggetto èuna risorsa od un valore (Unicode string literal).<br />
In applicazionidel Semantic Web le risorse sono rappresentate da<br />
URI che denotanodatirealiaccessibilisulWeb. Ma RDF non è<br />
limitata alla descrizione di risorse Internet-based.<br />
Perciò ènecessario che produttoried utilizzatoridi statement RDF<br />
concordino sulla semantica degli identificatoridelle risorse.<br />
RDF: Statement reificationand context<br />
Alcuneimplementazionidel modello RDF riconoscono chetalvoltaèutile<br />
raggruppare statements in accordo a criteridi tipo diverso, detti situations,<br />
contexts, or scopes.<br />
Per esempio unostatement può essereassociato ad un contesto, identificato daun<br />
URI, in mododaasserireun "is true in" unaspecificarelazione.<br />
Analogamente ètalvoltaconvenienteraggruppareglistatement in funzionedella<br />
loro sorgente, chepuò essereidentificatadaun URI, ovvero come l’URIdi un<br />
particolaredocumento RDF/XML. In talcaso, quando sifanno degli<br />
aggiornamenti sullerisorse, corrispondentementesipossono cambiaregli<br />
statement relativinelmodello.<br />
L’implementazionedegli scopi non richiedenecessariamentela pienareificazione<br />
neglistatement. Alcuneimplementazionipermettono cheun singolo<br />
identificatoredi scopo siaassociato con uno statement a cui non siastato<br />
assegnatoun URI. Analogamente named graphs in cui un set di triple identificato<br />
daun URI può rappresentareun contesto senzala necessitàdi reificare le triple.<br />
RDF: Queryand inferencelanguages<br />
An example of a SPARQL query to show country capitals in Africa<br />
PREFIX abc: .<br />
SELECT ?capital ?country<br />
WHERE {<br />
?x abc:cityname?capital ;<br />
abc:isCapitalOf?y.<br />
?y abc:countryname?country ;<br />
abc:isInContinentabc:Africa.<br />
}<br />
Variables are indicated by a "?" or "$" prefix. Bindings for?capital and the?country<br />
will be returned.<br />
The SPARQL query processor will search for sets of triples that match these four<br />
triple patterns, binding the variables in the query to the corresponding parts of<br />
each triple. Important to note here is the "property orientation" (class matches can<br />
be conducted solely through class-attributes / properties )