Rappresentazione della Conoscenza nel Semantic Web
Transcript
Rappresentazione della Conoscenza nel Semantic Web seminario di Laera Loredana Semantic Web “The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation”. -Tim Berners-Lee, James Hendler, Ora Lassila 1 Obiettivi del Web Semantico Gli obiettivi di Tim Berners Berners--Lee Lee:: • Metainformazioni machine machine--processable processable;; • Interoperabilità sintattica (facilità di leggere i dati da applicazioni diverse); • Interoperabilità semantica; • Potere espressivo universale per la rappresentazione di metainformazioni (modello comune molto generale, es. RDF) • Ricerca dei documenti basata sul significato di un concetto o di più concetti legati tra loro . WWW oggi Web semantico Ontologia ”una ontologia è una esplicita specializzazione di una concettualizzazione” –Gruber 2 Ontologia • Un’ Un’Ontologia rappresenta una concettualizzazione condivisa di un certo dominio dominio.. • Contiene l’insieme dei concetti (entit entitàà, attributi attributi,, processi), processi ), le definizioni e le relazioni fra concetti concetti.. • Le relazioni possono essere di vario tipo tipo:: tassonomico (IS_A), meronimico (PART_OF) telico (PURPOSE_OF..) ecc ecc.. • Un Un’’Ontologia può avere vari livelli di formalizzazione formalizzazione,, ma, necessariamente necessariamente,, deve includere un vocabolario di termini (concept names) con associate definizioni (assiomi assiomi), ), e (almeno (almeno)) relazioni tassonomiche tassonomiche.. Ontologia • Una Ontologia è una sorta di “scheletro scheletro”” di una base di conoscenza conoscenza,, il cui obiettivo è la descrizione dei concetti necessari a “parlare parlare”” di un certo dominio dominio.. • Una base di conoscenza include, oltre al livello ontologico,, regole che possono essere utilizzate ontologico per provare teoremi e rispondere a domande concernenti le istanze un certo dominio dominio.. (Ontologia + Regole + Motore Inferenziale Inferenziale)) 3 Stratificazione del Web Semantico • Il Web semantico e’ costruito attraverso strati sovrapposti, che permettono di raggiungere i vari obiettivi che si prefigge. • Ogni nuovo strato usa o estende gli strati precedenti. Architettura del Web Semantico http://www.w3.org/2000/Talks/1206-xml2k-tbl/slide10-0.html 4 Lo strato di base : URI • URI: (Uniform Resource Identifier ) serve ad identificare gli oggetti oggetti,, o “risorse “ risorse”, ”, per “metterle “ metterle su Web”. È la base su cui si fonda il Semantic Web. • URL: (Uniform Resource Locator ) caso particolare di URI. È l’indirizzo di un sito Web. Lo strato di mark-up: XML (eXtensible Mark-up Language) • Marcare dei testi di significato e di struttura • I meccanismi di mark-up utilizzati per il Web semantico sono riconducibili e preiscindono da XML 5 XML • Linguaggio di markup markup.. • Semplicità di HTML. • Flessibilità di SGML (Standard Generalized Markup Language Language). ). • Maggiore strutturazione dei documenti. • Permette di separare la struttura dalla rappresentazione (al contrario di HTML). • Solido livello di interoperabilità sintattica ma non semantica, in quanto l’accordo sul significato che le applicazioni devono attribuire ai tag deve avvenire offoff-line e prima della elaborazione . Lo strato dei modelli base: RDF (Resource Description Framework) • Modello di dati, specifiche semantiche. • Aggiunge semantica ai documenti Web. • Ispirato allo standard PICS (Platform for Internet Content Selection). • Al contrario di PICS, e’ caratterizzato una maggiore generalità. 6 RDF Lavora con tre tipi di elementi fondamentali: • Risorse (o oggetti): entità riferite attraverso URI • Proprietà (o attributi): relazioni binarie tra risorse e/o valori atomici di tipo primitivo • Affermazioni (o proposizioni): specificano il valore di una certa proprietà relativa a una risorsa RDF: un semplice esempio affermazione Autore(http://www.pincopallino.com) =PincoPallino proprietà risorsa/oggetto valore 7 RDF: un secondo esempio autoreDi(“http://www.pincopallino.com”, autoreDi(“http://www.pincopallino.com”, “http://www.books.org/ISBN0012515866”) haPrezzo(“http://www.books.org/ISBN0012515866”, haPrezzo (“http://www.books.org/ISBN0012515866”, “10 euro”) http://www.books.org/ISBN0012515866 autoreDi haPrezzo 10 euro http://www.pincopallino.com Reificazione in RDF La reificazione è l’uso di proposizioni per asserire altre proposizioni. La proposizione originale viene espressa come una risorsa con 4 proprietà proprietà (soggetto soggetto,, predicato,, oggetto predicato oggetto,, tipo tipo)). Mario http://www.mario.it Es. Luigi dice che Mario è il creatore della risorsa http://www.mario.it rdf:subject rdf :object rdf:type rdf:predicate a:attributedTo rdf:Statement Luigi creatore 8 Lo strato degli schemi: RDFS RDF non fornisce meccanismi per dichiarare attributi (proprieta’ caratterizzanti) delle classi di risorse né per definire relazioni tra proprietà e risorse RDF Schema Permette la definizione di un vocabolario per le proprietà RDF e la specifica dei tipi di oggetti su cui possono essere applicate RDFS: classi base Sono definite le seguenti classi (ovvero risorse di tipo rdfs rdfs:Class :Class): ): • rdfs rdfs::Resource Resource:: rappresenta tutto ciò che viene descritto in RDF (corrispondente di Object in Java) • rdfs rdfs::Property Property:: rappresenta il sottoinsieme di risorse che sono proprietà • rdfs rdfs:Class :Class:: corrisponde al concetto di tipo (corrispondente alla nozione di classe nei linguaggi OO) 9 RDFS: vincoli rdfs:ConstraintProperty è una sottoclasse di rdf rdfs: rdf::Property Property.. Le sue istanze sono proprietà utilizzate all’interno di vincoli. RDF Schema permette di imporre: • Vincoli di dominio (rdfs rdfs::domain domain)) • Istanze di rdfs rdfs::ConstraintProperty • Vincolano l’applicazione di una proprietà a una o più classi • Vincoli di intervallo (rdfs rdfs::range range)) • Istanze di rdfs rdfs::ConstraintProperty • Vincolano il valore di una proprietà a un determinato intervallo scelto su istanze di classi RDFS: proprietà base • RDFS definisce le proprietà (ovvero risorse di tipo rdfs::Property rdfs Property): ): • rdfs: rdfs:type type:: indica che una risorsa è istanza di una classe (1 risorsa, molti tipi) • rdfs:subClassOf: relazione “sottoinsieme - sovrainsieme sovrainsieme”” tra classi (una classe può essere sottoclasse di molte classi) • rdfs rdfs::subPropertyOf subPropertyOf:: una proprietà è una specializzazione di un’altra (1 proprietà, 00-n specializzazioni) • rdfs:seeAlso rdfs:seeAlso:: una risorsa contiene informazioni su un’altra informazione • rdfs:isDefinedBy rdfs:isDefinedBy:: sottoproprietà di rfds rfds::seeAlso seeAlso,, indica quale risorsa definisce un’altra risorsa (es. quale schema?) 10 Carenze di RDFS • Numero ridotto di proprietà e classi predefinite, quindi ha un limitato potere espressivo. • Il vocabolario di RDF/RDF Schema presenta lacune espressive rilevanti, ed è pertanto opportuno estenderlo con un ulteriore livello semantico. • Ad esempio RDFSchema non è possibile qualificare come transitiva la proprietà essere_Antenato_Di. A è antenato di B A è antenato di C B è antenato di C Livello ontologico • Fornisce gli strumenti per la definizione e l’uso di ontologie. • Si fonda su RDF e RDF Schema per definire le primitive di modellazione delle ontologie. 11 Requisiti per i linguaggi ontologici • Compatibile con gli standard esistenti sul web (XML, RDF, RDF Schema) • Facile da comprendere e da utilizzare (basandosi su idiomi familiari di KR) • Specificato formalmente e di “adeguato” potere espressivo • Idoneo a fornire un supporto al ragionamento automatizzato OIL (Ontology Inference Layer) Unifica tre aspetti importanti: • Semantica formale e supporto al ragionamento efficiente (Description Logic). • Ricche primitive di modellazione (Frame). • Proposte standard per notazioni sintattiche (W3C, comunità Web ). 12 DAML (DARPA Agent Markup Language) • Linguaggio di markup promosso dall’agenzia DARPA (Defence Advanced Research Projects Agency) . • fondato principalmente su RDF. • Partendo da una serie di statements DAML ,conclude altri statements DAML. madreDi SubPropertyOf genitoreDi Roberta madreDi Andrea Roberta genitoreDi Andrea DAML+OIL • Unione dei linguaggi OIL e DAML. • Linguaggio semantico di markup che si fonda sugli standard del comitato W3C, come RDF e RDF Schema, e li estende con primitive di modellazione più ricche, molte delle quali mutuate dai linguaggi basati su logica descrittiva. 13 Limitazioni di DAML+ OIL • Numero fisso di proprietà algebriche (transitività, simmetria, inversa). • Mancanza di modularizzazione: non è possibile rinominare, ristrutturare e ridefinire ontologie importate. • Limitata espressività del second’ordine. OWL (Web Ontology Language) • Sviluppato come revisione di DAML+OIL. • Permette di arricchire (con un insieme di potenti primitive) le ridotte capacità espressive di RDF Schema, consentendo una dettagliata descrizione della struttura di un qualsiasi dominio. • Si appoggia sulla sintassi e sulle primitive ontologiche di base fornite da RDF/RDF Schema 14 OWL OWL utilizza URI per nominare le risorse e il linking fornito da RDF per aggiungere le seguenti capacità alle ontologie: • Abilità di essere distribuite tra più sistemi; • Scalabilità per le necessità del Web; • Compatibilità con gli standard Web per quanto riguarda l' accessibilità e l'internazionalizzazione; • Apertura ad applicazioni complesse ed estensibilità estensibilità;; I sottolinguaggi di OWL OWL è costituito da tre sottolinguaggi, ciascuno dei quali caratterizzato da una diversa capacità e destinato ad una diversa platea di utenti e di sviluppatori: • • • OWL Lite OWL DL OWL Full RDF OWL Lite OWL DL OWL Full 15 OWL Lite Rivolto a quegli utenti che necessitano principalmente di una gerarchia di classificazione e non sentono l’esigenza di esprimere dei vincoli complessi. Ad esempio consente di esprimere vincoli di cardinalità, ma i valori permessi sono solamente 0 oppure 1. OWL DL • Corrispondenza con le Logiche Descrittive (Description Logic)) Logic • Indirizzato agli utenti che desiderano disporre della massima espressività possibile possibile,, pur mantenendo la completezza computazionale e la decidibilità . Include tutti i costrutti linguistici del linguaggio OWL con la limitazione che essi possono essere utilizzati solamente sotto alcune restrizioni restrizioni.. Ad esempio esempio,, ad una classe viene consentito di essere sottoclasse di più classi classi,, ma non di essere un’ un’istanza istanza di un’altra classe classe.. 16 OWL Full Concepito per quegli utenti che richiedono la massima espressività e tutta la libertà sintattica di RDF, senza alcuna garanzia computazionale computazionale;; ad esempio esempio,, in OWL Full ad una classe è consentito di essere trattata contemporaneamente sia come una collezione di individui individui,, sia come un individuo a sé stante stante.. OWL Full permette ad una ontologia di aumentare il significato dei vocabolario (RDF o OWL) predefinito predefinito.. Questo maggior potere espressivo e’ ottenuto a spese della decidibilita’ decidibilita’.. Lo strato Logico • Fino al livello delle ontologie non vi è inferenza, ma solo rappresentazione della conoscenza. • Uso della logica per rispondere a interrogazioni al fine di poter estrarre informazioni utili, mediante regole di inferenza e altre tecniche logiche e non. • Lo strato della Logica rende quello che era un linguaggio dichiarativo, con limitate capacità espressive, un linguaggio logico “Turing Turing-complete”” con inferenze e funzioni, consentendo complete ad applicazioni RDF diverse di connettersi. 17 Lo strato delle dimostrazioni • Definire un linguaggio universale (“Proof (“Proof Language Language”” )per rappresentare le dimostrazioni. • Una dimostrazione (“Proof (“Proof”) ”) è una sequenza di formule, ciascuna delle quali è derivata, applicando: • • • • regole di inferenza, assiomi, definizioni, o formule ad essa precedenti nella sequenza • Ad esempio i sistemi potrebbero quindi autenticare con la firma digitale queste dimostrazioni ed esportarle ad altri sistemi che le potrebbero incorporare nel Web Semantico. Lo strato della Fiducia: Web of trust • Con un “Proof “Proof Language Language”” si intende passare dal “Web del Ragionamento” Ragionamento” al “Web “Web della Fiducia”. Fiducia”. • Le asserzioni RDF devono essere contrassegnate con tecniche come la firma digitale o la crittografia crittografia,, il cui scopo e’ garantire l’autenticità delle varie asserzioni e di scoprire la loro provenienza. Sarà poi l’utente ad istruire il software del proprio computer su quali firme digitali fidarsi oppure no. • “Web of Trust”: considerare la Fiducia una proprietà transitiva, cosicché se l’utente A dichiara di fidarsi dell’utente B, il quale a sua volta dichiara di fidarsi dell’utente C, si ottiene che A si fida anche di C. 18 Logica e Dimostrazione: RuleML L’obiettivo della iniziativa “Rule Markup” e’ lo sviluppo di RuleML come linguaggio web standard per esprimere regole inferenziali nel semantic web usando markup XML and semantica formale RuleML started life before the semantic web initiative was officially launched. It is a very significant group. Tim Berners-Lee, Director, W3C RuleML • Rappresentazione della conoscenza delle regole (KR) in sintassi XML; • RuleML include • • • Regole di derivazione ( ‘clausole di Horn ’) Regole di reazione (‘regole evento evento--conditione conditione--azione ECA) Regole di integrità (‘vincoli di integrità’ integrità’). ). • Garantisce iteroperabilit iteroperabilità à con i maggiori sistemi a regole commerciali e non (SQL, Prolog Prolog,, OPS5, CLIPS, Jess Jess,, ECA..); 19 RuleML • Sistema di sottolinguaggi : da RDF -like triple alla logica di Horn, con equazioni che utilizzano sia individui URI che relazioni; • I 12 sottolinguaggi, ciascuno con una propria semantica e relativo DTD, costituiscono la definizione modularizzata di base di RuleML. Un esempio di regola RuleML < body> <and> <atom> < opr opr> > < rel rel>buy >buy </rel </rel> > </ opr opr> > <var>person <var> person </var> <var>merchant <var> merchant </var> < var var>object >object </var </var> > </atom> conclusione <atom> < opr opr> > < rel rel>keep >keep </rel </rel> > </ opr opr> > < var var>person >person </var </var> > < var var>object >object </var </var> > </atom> </and> </ body> </imp </ imp> > own(Person own( Person,,Object Object)) ? buy((Person buy Person,Merchant, ,Merchant,Objec Objec t), keep keep((Person Person,,Object Object). ). <imp> < _head> <atom> < opr opr> > < rel rel>own >own </rel </rel> > </ opr opr> > < var var>person >person </var </var> > < var var>object >object </var </var> > </atom> </ head> premessa 20 Ontologie e regole Le ontologie hanno una tassonomia per definire le classi di oggetti e le relazioni tra gli oggetti, e un insieme di regole di inferenza, per fornire ulteriore potenza espressiva ma limitate a ragionare solo su: • Ontology design design:: per controllare la consistenza delle classi e relazioni implicite (classi); • Ontology deployment deployment:: per determinare se un insieme di fatti e’ consistente (istanze); • Ontology integration integration:: per asserire relazioni all’interno di una ontologia prodotta tramite integrazione di due ontologie; Ontologie + Regole Le regole e le ontologie, perche’: • Una tassonomia di una ontologia (espressa per es. in OWL) può richiedere un sistema a regole per derivare o usare infomazione implicita, che non può essere catturata dalla sola tassonomia . • La tecnologia delle regole è più matura delle logiche descrittive • I non esperti hanno piu familiarità con le regole • Le regole si integrano bene con i maggiori paradigmi di software commerciali, es. OO e DB 21 Le regole e le ontologie, perche’: • La regole possono aiutare una ontologia a ragionare sulle sue istanze, • Le regole possono definire assiomi che operano su tassonomie. • Aggiungono espressivita’ a cio’ che si puo’ asserire solo con OWL • Regole sono ortogonali alle logiche descrittive Le regole nel Semantic web http://www.w3.org/DesignIssues/diagrams/sw--stack http://www.w3.org/DesignIssues/diagrams/sw stack--2002.png 22 Le regole e le ontologie, come: • Regole al top delle ontologie (Knowledge Representation fusion): costruire regole al top delle ontologie, nel senso che le regole possono riferirsi ad ontologie OWL, usando uno o più domini ontologi specificati nelle Description Logics (DL) di OWL. SweetProlog (Semantic WEb Enabling Technlogies for Prolog) • Sistema per le regole del Web Semantico in Prolog. • Traduzione di un ontologia per (CLP) RuleML espressa in OWL . • Deduzione per mezzo di JIProlog Engine. • Specifica una ontologia OWL per la sintassi delle regole RuleML. • Regole OWLRuleML al top delle ontologie • Preserva la semantica 23 SweetProlog & OWLRuleML • Le regole RuleML sono state specificate attraverso un linguaggio, quale OWL. • OWLRuleML rappresenta la codifica OWL dello standard RuleML con Courteous Logic Programs (per la gestione dei conflitti), permettendo quindi di incrementare le potenzialità di RDFS e OWL all’attuale RuleML RuleML.. • La sintassi risultante, denominata OWLRuleML OWLRuleML,, è essenzialmente una specifica della sintassi del rule language language.. SweetProlog Regole al top dell’ontologia • Sintatticamente, i nomi dei predicati che appaiono nelle regole possono essere URI che denotano classi e proprietà in una ontologia OWL. • Semanticamente la base di conoscenza ontologica di OWL referenziata può essere vista come una teoria background per l’insieme delle regole. • Una classe OWL è trattata come un predicato unario unario,, e una proprietà come un predicato binario. Le asserzioni sulle istanze in una classe e sulle proprietà sono trattate come fatti. • I nomi delle classi, delle proprietà e degli individui sono URI al fine di permettere alle regole di riferirsi ad essi. 24 SweetProlog Regole al top dell’ontologia • • La semantica formale per l’integrazione è una rappresentazionedi conoscenza ibrida che combina le logiche descrittive e la programmazione logica: Description Logic Programs (DLP). Description Logic Programs aiuta ad integrare le regole con le ontologie compilando le definizioni ontologiche in un programma logico, il quale può essere esteso con ulteriori regole, rappresentando un sottoinsieme di OWL espressivo (senza disgiunzione nella testa, senza negazione e connettivi esistenziali). Description Logic Programs Architettura SweetProlog OWL + OWLRuleML Parsing with RDF PI into triples Transform query into Prolog Query represented in Prolog Inferencing using Prolog engine Derived conclusions in Prolog Knowledge base in RDF triples Transform OWLRuleML into CLP Transform OWL into Logic Program Facts & rules represented as a CLP Knowledge base in Prolog Courteous Logic Program compiler OWLRuleML represented in Prolog SweetProlog Transform facts into OWLRuleML Derived facts in OWLRuleML 25 Conclusioni • Iteraperabilità semantica e inferenziale tra l’approccio delle regole nel Semantic Web (RuleML Logic Programs Programs)) e le ontologie (OWL Description Logics Logics). ). • Nuova rappresentazione d conoscenza (DLP) e mostrato come può catturare un significante sottoinsieme di OWL, che include l’intero sottoinsieme OWL di RDFS, ed alcuni assiomi sui concetti e proprietà. • Livellare le regole al top dei linguaggi ontologici come proposto dalla visione del Sematic Web Bibliografia • • • • • • • • • Tim Berners Berners--Lee Lee,, James Hendler Hendler,, Ora Lassila Lassila,, “ The Semantic Web”, We b”,Scientific Scientific American, 17 Maggio 2001 Massimo Parodi, Alfio Ferrara, “ Xml, Semantic Web e Rappresentazione della Conoscenza”, Conoscenza”,MondoDigitale MondoDigitale n .3 - Settembre 2002 Dan Brickley Brickley,, R.V. Guha Guha,, “ RDF Vocabulary Description Language 1.0 : RDF Schema”,W3C Schem a”,W3C Working Draft 23 January 2003 http://www.w3.org/TR/rdf http://www.w3.org/TR/ rdf--schema schema// Ian Horrocks Horrocks,, Peter F. Patel Patel--Schneider Schneider,, Frank van Harmelen Harmelen,, “Reviewing “Reviewing the Design of DAML+OIL : An Ontology Language for the Semantic Web” (American Association for Artificial Intelligence, www.aaai.org , 2002) Deborah L. McGuinness McGuinness,, Frank van Harmelen Harmelen,, " Web Ontology Language (OWL): Overvie Overview w", W3C Working Draft Draft,, 10 Febbraio 2003 http://www.w3.org/TR/owl http://www.w3.org/TR/ owl--features features// M.Dean, G.Schreiber, " Web Ontology Language (OWL) Reference Version 1.0", 1. 0", W3C Working Draft Draft,, 21 Febbraio 2003 http://www.w3.org/TR/ http://www.w3.org/TR/owl owl--ref ref// Ruleml initiative initiative.. http://www.dfki.de/ http://www.dfki.de/ruleml ruleml.. Harold Boley, Said Tabet, Gerd Wagner. Design Rationale of RuleML RuleML:: A Markup Language for Semantic Web Rules Rules.. In Proc Proc.. Semantic Web Working Symposium (SWWS’ SWWS’01), 01), pag 381 381-- 401. Stanford University, July// August 2001. July Grosof,, B.N. and Horrocks Grosof Horrocks,, I. “Description Logic Programs: Combining Logic Programs with Description Logic” Logic ”. Proc Proc.. Intl. Conf Conf.. on World Wide Web (WWW(WWW -2003),2003. 26
Documenti analoghi
SEMANTIC WEB
Ontologie
à Costo elevato nel produrre una ontologia ex-novo
à Una ontologia è “viva”, muta nel tempo
Costo di manutenzione
Costo di gestione (uso di temporal logic per gestire il versioning)
RDF-SPARQL
http://www.w3.org/2000/01/rdf-schema#
w3 org/2000/01/rdf-schema#'
Le risorse possono essere istanze di una o più classi
La classe è indicata tramite l’attibuto rdf:type property
La risorsa http://w...
Strutturare la conoscenza: XML, RDF, Semantic Web
successivamente trasformato nel formato più adatto per l’ utente finale, mediante una
trasformazione di stile. Si noti che la presentazione dell’ informazione non riveste un
ruolo semplicemente for...
Ontologie - Dipartimento di Ingegneria Informatica e delle
il primo livello (URI) offre solo uno strumento per la
localizzazione delle risorse
Il secondo livello (annotazione) permette di descrivere un
documento, una sua parte, o una intera collezione; que...
Web 3.0 - Università degli Studi Mediterranea
Web 3.0 come la terza generazione di Internet, basata su servizi che collettivamente
compongono quello che può essere chiamato: ‘The intelligent Web’; questo utilizza il
We...
due pagine
An ontology is a formal, explicit specification of a shared conceptualisation.
A 'conceptualisation' refers to an abstract model of some phenomenon in the world by having identified the relevant co...
analisi comparata di due ontologie in ambito biomedico
al centro rappresenta la nozione astratta di una ontologia, che può essere
pensata sia come una struttura astratta che come un grafo RDF. Nella parte
superiore della gura vi sono varie sintassi co...