Sunteți pe pagina 1din 7

Tehnologii ale webului semantic

1. Intentiile webului semantic


Primul manifest al webului semantic este considerat articolul The Semantic Web scris de Tim
Berners-Lee, James Hendler si Ora Lassila in anul 2001. Cu 26 de ani in urma, in 1989, Tim Berners-Lee,
actualmente director la W3C (World Wide Web Consortium), revolutiona universul stiintei calculatoarelor
cu un serviciu simplu de interconectare a tuturor resurselor dintr-o retea prin mecanismul hiperlegaturilor.
Acel serviciu se numea la vremea respectiva Web 1.0. Evolutia domeniului a facut posibila trecerea de la
Web 1.0 (webul sintactic, al paginilor HTML statice) la Web 2.0 (webul social, al continutului dinamic si
interactiv) si in cele din urma la Web 3.0 si chiar Web 4.0. Acest web semantic se identifica uneori cu Web
3.0, alteori este considerat doar o mica parte din potentialul lui Web 3.0.

Figure 1. Evolutia WWW

Webul semantic este o extensie a webului actual in care informatiile sunt furnizate cu sensuri bine
definite astfel incat sa permita o mai buna cooperare a calculatoarelor si a oamenilor. Se face o trecere de la
webul de documente (accesibil oamenilor) la webul de date (accesibil in special masinilor). Webul semantic
poate fi vazut si ca o uriasa baza de date si resurse hipermedia pe Internet pe care agentii software o pot
interoga si procesa in locul utilizatorilor. Un exemplu practic este situatia in care utilizatorul ii ofera
agentului drept date de intrare anumite simptome medicale iar, in schimb, acesta este capabil sa-i ofere un
diagnostic exact prin consultarea si navigarea pe Internet. Webul semantic se fundamenteaza pe date cu
legaturi intre ele si pe adnotari semantice (metadate, date despre date, semnificatii atribuite datelor).
Webul semantic isi propune sa lucreze cu cunostinte si reguli de inferenta pentru a permite
automatizarea rationamentului. Dificultatea acestui deziderat este ridicata de eterogenitatea cunostintelor si a
modurilor diverse de a le reprezenta in sistemele bazate pe cunostinte (KBS). Ar fi nevoie de o centralizare a
datelor intr-un sistem global, or webul semantic isi doreste exact contrariul, descentralizarea, asemenea
Internetului. Webul semantic le ofera calculatoarelor posibilitatea de a intelege documente semantice si
sensul datelor, nu insa si limbajul natural al oamenilor.
1

Compromisul il constituie ontologiile, specificatii consensuale de cunostinte intr-un anumit domeniu.


Ontologiile sunt originare din filozofie. Ele sunt teorii despre natura existentei lucrurilor, insa au fost
preluate ca jargon in domeniul Inteligentei Artificiale si al Tehnologiilor Web. Ontologiile sunt mai mult
decat simple vocabulare. Sunt vocabulare de termeni impreuna cu relatiile dintre ei. Ontologiile sunt scrise
in limbaje cat de cat expresive. O ontologie prezinta o taxonomie si un set de reguli de inferenta.
Mergand pe acelasi fir al Inteligentei Artificiale, webul semantic va putea fi folosit cu precadere de
agentii inteligenti, chiar si de agentii care initial nu fusesera conceputi sa colaboreze. Astfel ei vor folosi
webul semantic pentru a partaja cunostinte, pentru a se gasi unul pe altul mai usor fara intermediari (registre
de servicii sau brokeri) si pentru a contribui la lantul valorii informationale (fiecare agent isi adauga
subansamblurile informationale pentru a construi rezultatul final dorit de utilizator). In viziunea lui BernersLee, webul semantic isi va depasi barierele spatiului virtual (software) si va patrunde in lumea fizica a
realitatii (hardware). Acest lcuru inseamna ca, asemenea conceptului de Plug n Play, dispozitivele vor
putea fi consultate si controlate prin intermediul Internetului.

2. Tehnologii ale webului semantic


Ideea de baza este aceea ca spatiul World-Wide Web sa reprezinte o panza consistenta de relatii
stabilite ntre obiecte identificabile (de exemplu, n prezent prin identificatori uniformi de resurse, adica
URI, iar ulterior prin nume stabilite de utilizatori), dezvoltarea viitoare a Web-ului fiind focalizata asupra
masinilor, nu numai asupra oamenilor.
Tehnologiile specifice webului de date au fost propuse de W3C sub forma unei stive de tehnologii si
este cunoscuta in literatura de specialitate sub denumirea de Semantic Web Layer Cake.

Figure 2. Stiva de tehnologii "Semantic Web Layer Cake"

Aceste limbaje/tehnologii sunt organizate ierarhic pe niveluri astfel incat fiecare nivel se prevaleaza
de functionalitatile nivelurilor inferioare. Mai mult, aceste niveluri tehnologice pot fi grupate in 3 mari
categorii: standarde web stabile de tip hipertext, standarde web recomandate pentru webul semantic (in
folosinta la ora actuala) si standarde web inexistente sau in curs de dezvoltare. Acest grup de tehnologii este
cel mai bine detaliat in figura de mai jos.

Figure 3. Gruparea tehnologiilor Semantic Web pe categorii si parti (varianta detaliata)

Sedimentul este Linked Data care se asaza peste standardele mai vechi ale Web 1.0 respectiv 2.0.
Linked Data este metoda propusa de Tim Berners-Lee de a publica date structurate si legate intre ele pe Web
astfel incat sa poata fi regasite cu usurinta prin interogari semantice. Dupa cum se poate vedea si din
imaginea de mai sus, el se construieste folosind standardele Unicode, URI, HTTP si RDF. Tim Berners-Lee
scrie un articol in 2006 intitulat Linked Data. Design Issues si mentioneaza 4 reguli pentru ca un set de
date sa devina un set de date legate:
1. Se folosesc URI-uri pentru a numi (identifica) obiectele.
2. Se folosesc URI-uri prin protocol HTTP pentru ca oamenii sa poata naviga catre aceste obiecte
(procedeul se numeste dereferentiere URI).
3. Se furnizeaza informatii utile despre numele cautat, prin standarde de tipul RDF, SPARQL etc.
4. Se face referire catre alte obiecte cu care interrelationeaza obiectul initial tot prin URI-uri pentru
ca oamenii sa descopere si mai multe lucruri.
La baza stivei se gaseste standardul Unicode folosit n reprezentarea i manipularea textului n
diferite limbi precum i standardul de construcie a URI-urilor (Uniform Resource Identifier), util pentru
identificarea resursele publicate pe web (documente multimedia, pagini web, bloguri etc.). Actualmente,
standardul de facto pentru descrierea i transferul de date pe web este XML (eXtensible Markup Language),
care insa are o serie de neajunsuri. Printre acestea, putem aminti lipsa unei semantici formale a Schemelor
XML, care face greoaie cumunicarea intre aplicatii sau servicii care nu partajeaza aceeasi schema sau
aceeai interpretare a unei scheme. Din dorinta de a aduaga un anumit nivel de semantica limbajului XML sa nascut limbajul RDF (Resource Description Framework), un limbaj de descriere a resurselor folosind
triplete de tipul subiect-predicat-obiect, asambalate n structuri asemanatoare grafurilor.

SUBIECT

PREDICAT

OBIECT

Figure 4. Tripletul subiect-predicat-obiect al RDF


Table 1. Exemple de triplete RDF

Subiect (resursa)
Pisica
Soarele
The Rolling Stones
Produsul

Predicat (proprietate)
mananca
rasareDeLa
canta
esteInfluentatDe

Obiect (resursa)
Soarece
Est
Rock n Roll
Publicitate

Figure 5. Exemplu de graf RDF

Daca adaugam caracterul de gratuitate la setul de date legate se obtine Linked Open Data. Exista
un proiect comunitar in derulare numit Linking Open Data aflat sub egida unui grup din structura W3C al
carui obiectiv este acela de a extinde webul actual cu variate seturi (baze) de date publicate in format RDF.
Seturile au legaturi intre ele si sunt reprezentate sugestiv printr-un graf de dimensiuni crescande si cunoscut
sub denumirea de Linked Open Data Cloud. Cu Linked Open Data se incearca descentralizarea, daramarea
barierelor de exploatare a silozurilor de date dispersate i izolate. Seturile de date provin din diferite domenii
de activitate. Exista date de interes general, guvernamentale, academice, lingvistice, geografice, din retele de
socializare, din publicistica, media etc. Dintre aceste seturi de date se pot aminti DBPedia (prima baza de
4

date semantice din spatele Wikipedia), GeoNames (o ontologie care descrie locatiile geografice), Freebase,
FOAF (Friend of a Friend, ontologie care descrie persoane si relatiile dintre acestea) etc.

Figure 6. Norul Linked Open Data in forma sa din august 2014

Ontologiile, in sens pur informatic, sunt specificatii explicite ale unor conceptualizari. Ele
conceptualizeaza domenii ale cunoasterii intr-un format procesabil de catre calculatoare. Formatul
modeleaza entitati, atribute, relatii si axiome:

Concept - entitatea conceptuala a domeniului


Atribut - proprietate a unui concept
Relatie - relatia dintre concepte sau atribute
Axioma - descrierea coerentei intre concepte/atribute/relatii prin expresii logice

O ontologie este caracterizata de:


-

Conceptualizare - un model pentru conceptele relevante ale unui fenomen sau domeniu
Explicitate - modelul prevede in mod explicit tipul de concepte, relatiile dintre ele si
constrangerile legate de utilizarea lor
Formalitate - ontologia poate fi interpretata numai de un calculator (se aleg limbaje formale
pentru descrierea ontologiilor)
Partajare - cunostintele cuprinse intr-o ontologie sunt consensuale, adica sunt adoptate de un grup
de persoane si semnifica acelasi lucru pentru toate persoanele.

De-a lungul timpului s-au modelat diverse ontologii pentru domenii precum cel academic (persoane,
proiecte, publicatii, evenimente stiintifice, subiecte de cercetare), dezvoltate de grupul AKT (Advanced
Knowledge Technologies) sau cel al unei agentii de turism (e-travel). Sunt multe situatii in care ontologiile
se confunda cu vocabularele. In acest sens, literatura de specialitate nu este exacta, parerile fiind impartite.
Tendinta este de a folosi notiunea de ontologie in conditiile unor colectii de termeni complecsi si formali, in
timp ce vocabularul se poate folosi intr-un sens mai restrans, in conditii de formalism redus. S-a mai vorbit
si de notiunea de spectru semantic. Spectrul semantic (alteori numit si precizie semantica sau spectru
5

ontologic) reprezinta o serie din ce in ce mai precisa de definitii pentru elementele de date in reprezentarea
cunostintelor, in special pentru a fi utilizate de calculatoare.
Un exemplu practic ilustreaza importanta ontologiilor pentru aplicatile webului semantic. Un librar
are in gestiune un sistem informatic prin care prelucreaza date provenite de la 2 edituri diferite. Datele ajung
in format RDF, insa in baza de date a unei edituri, conceptul de autor inseamna creator in baza de date a
celeilalte edituri. Pentru a solutiona problema este nevoie de o ontologie comuna care sa contina relatia de
echivalenta autor = creator.
n ceea ce priveste maniera de exprimare a unei ontologii, exista definite diverse limbaje de
specificare, plecand de la limbaje de programare logica precum Prolog sau derivate din Prolog (Golog, ConGolog), si mergand pana la limbaje specializate, cum ar fi KIF (Knowledge Interchange Format) sau
succesorul sau CL (Common Logic). Alte limbaje sunt bazate pe logici descriptive este cazul limbajelor OIL
(Ontology Inference Layer), DAML (DARPA Agent Markup Language) + OIL si OWL (Web Ontology
Language, varianta W3C). Tehnicile si limbajele pentru construirea ontologiilor propuse de W3C, pe langa
RDF, sunt RDFS (Resource Description Framework Schema), OWL (Web Ontology Language), SKOS
(Simple Knowledge Organization System) si RIF (Rule Interchange Format).
Inferenta, din perspectiva webului semantic, se caracterizeaza prin descoperirea de noi relatii intre
resurse, obiecte, entitati. Datele (descrise prin RDF) sunt modelate ca niste seturi de relatii intre resurse. Prin
inferenta, anumite proceduri automate pot genera noi relatii plecand de la aceste date si de la cateva
informatii suplimentare sub forma de vocabulare, mai exact reguli (de inferenta). Tehnologiile propuse de
W3C pentru inferenta sunt RIF (Rule Interchange Format) sau SWRL (Semantic Web Rule Language). Un
exemplu simplu este edificator. Avand urmatoarea relatie (Azor esteUn Caine) si o ontologie care sa declare
ca orice Caine este un Mamifer, atunci programul inzestrat cu rationament adauga si relatia (Azor esteUn
Mamifer) la setul deja existent.
Interogarea in contextul webului semantic inseamna tehnologii si protocoale capabile sa regaseasca
informatii intr-un web de date. Fisierele RDF ofera fundatia pentru publicarea si legarea datelor. Asa cum
bazele de date relationale sau fisierele XML necesita limbaje specifice de interogare, SQL, respectiv
XQuery, tot asa webul de date, reprezentat prin formatul RDF are nevoie de un limbaj specific de interogare.
Acesta este SPARQL. Cererile si regasirile circula folosind protocoalele HTTP sau SOAP.
Tehnic vorbind, cererile SPARQL se bazeaza pe tipare (triple) similare cu tripletele RDF cu o singura
diferenta: unul din elementele tripletului este o variabila. In exemplul de mai sus, relatia (Azor esteUn
Caine) poate fi rescrisa ca o cerere SPARQL astfel: (Azor esteUn ?animal), unde ?animal este variabila in
cauza. Interogrile efectuate cu SPARQL sunt similare interogrilor SQL iar rezultatele obinute sunt nite
sub-grafuri RDF(S) ale grafurilor int. De obicei, informaiile extrase sunt prezentate sub forma tabelar.
Un alt exemplu simplu este query-ul gsete toti artitii nscui n Austria n secolul al XIX-lea, rulat pe
setul de date legate DBPedia, care se transpune ntr-o interogare SPARQL astfel:
SELECT * WHERE {
?person a <http://dbpedia.org/ontology/Artist>;
<http://dbpedia.org/ontology/birthPlace> ?birthPlace.
?birthPlace <http://dbpedia.org/ontology/country> ?country.
?country rdfs:label "Austria"@en.
?person <http://dbpedia.org/property/dateOfBirth> ?dob
FILTER (?dob > "1/1/1800"^^xsd:date && ?dob < "12/31/1899"^^xsd:date)
}
6

Layer-ul de criptografie este de asemenea foarte important pentru a verifica proveniena statementurilor RDF(S) i/sau OWL i se bazeaz pe folosirea de semnturi si certificate digitale.
Increderea (Trust) pentru declaratii derivate va fi sustinuta prin verificarea faptului ca premisele
provin din surse sigure si se bazeaza pe logica formala in obtinerea de informatii noi.
Interfata cu utilizatorul este stratul final care va permite oamenilor sa utilizeze aplicatiile webului
semantic.

3. Bibliografie
1. Synthesis Lectures on the Semantic Web: Theory and Technology. Linked Data.
Evolving the Web into a Global Data Space, Tom Heath, Christian Bizer, Morgan &
Claypool Publishers, 2011
2. Semantic Web. Fundamente si aplicatii, Sabin Corneliu Sburaga, Matrix Rom, 2004
3. The Semantic Web, Tim Berners-Lee, James Hendler, Ora Lassila, Scientific American,
2001
4. Foundations of Semantic Web Technologies, Pascal Hitzler, Markus Krtzsch,
Sebastian Rudolf, CRC Press, 2010
5. Semantic Web scurt introducere, Alina Dia Miron, Today Software Magazine, Nr.
4/2012, url: http://todaysoftmag.ro/article/82/semantic-web-scurta-introducere
6. http://www.w3.org/standards/semanticweb/
7. https://en.wikipedia.org/wiki/Semantic_Web
8. http://semanticweb.org/wiki/Main_Page.html