La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Ontologie: RDF e OWL UNIVERSITA DI CAMERINO Corso di laurea in Informatica Barbara Re Anno Accademico 2006-07.

Presentazioni simili


Presentazione sul tema: "Ontologie: RDF e OWL UNIVERSITA DI CAMERINO Corso di laurea in Informatica Barbara Re Anno Accademico 2006-07."— Transcript della presentazione:

1 Ontologie: RDF e OWL UNIVERSITA DI CAMERINO Corso di laurea in Informatica Barbara Re Anno Accademico

2 Barbara Re2 RDF: scopo

3 Barbara Re3 RDF: Scopo Hanno bisogno di un linguaggio ontologico con cui definire il significato associato ai metadati Esempio parentela Un uomo è un essere umano ed è un maschio Una donna è un essere umano ed è femmina Una madre è una donna che ha figli almeno un essere umano Un genitore è un padre o una madre Un nonno è un uomo che ha_figlio almeno un genitore I termini sottolineati sono parte del linguaggio utilizzato per definire madre, padre, …, nonno

4 Barbara Re4 RDF: Scopo Il linguaggio ontologico deve però essere Formale Perché automaticamente decodificabile Il linguaggio italiano non è adatto Esplicito Perché bastato su strutture di immediata applicazione un, è un, che, almeno un, o sono abbastanza espliciti Perciò occorre definire esplicitamente e in modo formale il significato dei termini del linguaggio ontologico (un, è un, che, almeno un, o)

5 Barbara Re5 RDF Vocabulary Description Language RDFS: RDF Vocabulary Description Language o RDF Schema è un linguaggio ontologico adatto perché È formale Essendo costruito sopra RDF È esplicito Specifica un insieme predefinito di risorse e predicati RDF per Definire classi e predicati Controllare quali classi e predicati debbono essere utilizzati contemporaneamente

6 Barbara Re6 Iniziamo con la prima ontologia Creare una classe ex:Artista rdf:type rdfs:Class Creare sottoclasse Ex:Pittore rdf:subClassOf ex:Artista Ex:Scultore rdfs:subClassOf ex:Artista Creare un esemplare (instance) ex:Rodin rdf:type ex:scultore

7 Barbara Re7 … ed ancora Uso di Multiple inheritance Ex:ArtistaMultidisciplinare rdfs:subClassOf ex:Pittore Ex:ArtistaMultidisciplinare rdfs:subClassOf ex:Scultore Uso di Multiple instantiation Ex:Michelangelo rdf:type ex:Pittore Ex:Michelangelo rdf:type ex:Scultore

8 Barbara Re8 Proprietà Creare una proprietà ex:crea rdf:type rdf:Property Usare una proprietà ex:Rodin ex:crea ex:il bacio Creare sotto proprietà ex:dipinge rdfs:subPropertyOf ex:crea ex:scolpisce rdfs:subPropertyOf ex:crea

9 Barbara Re9 Gerarchie di proprietà Controllare quali classi e predicati devono essere utilizzati contemporaneamente ex:crea rdfs:domain ex:Artista ex:crea rdfs:range ex:opera ex:dipinge rdf:domain ex:pittore ex:dipinge rdf:range ex:opera ex:scolpisce rdfs:domain ex:scultore ex:scolpisce rdfs:range ex:scultore

10 Barbara Re10 Graficamente

11 Barbara Re11 Ereditarietà!!!

12 Barbara Re12

13 Barbara Re13 Una singola tripla

14 Protegè

15 Barbara Re15 La piattaforma Protégé Esistono due modalità per creare le ontologie in Protégé: Il Protégé-Frames editor, consente di costruire e popolare le ontologie che sono basate su frame, secondo il protocollo OKBC (Open Knowledge Base Connectivity protocol [www.ai.sri.com/~okbc/]). In questo modello, unontologia è costituita da uninsieme di classi organizzate in gerarchia, rappresentanti un insieme di concetti. Le classi sono caratterizzate da slot e relazioni Il Protégé-OWL editor, consente di costruire ontologie per il Semantic Web, in particolare secondo il linguaggio OWL [www.w3.org/2004/OWL/]. Unontologia OWL può includere descrizioni di classi, di proprietà e le loro istanze.

16 Barbara Re16 Main

17 Barbara Re17 :THING Tutte le classi individuate come capostipiti di una gerarchia, saranno figlie di :THING (sarà la classe più generale della nostra ontologia). (Nota: la :SYSTEM_CLASS è utilizzata da Protégé per definire le strutture dei form)

18 Barbara Re18 Creazione di Classi

19 Barbara Re19 Role Allinterno di Protégé Classes Tab si può definire il role di una classe: Astratta Concreta Una caratteristica importante è che Protégé supporta lereditarietà multipla. Inoltre si possono definire gli slot, i vincoli sui valori degli slot, le relazioni fra le classi e le proprietà.

20 Barbara Re20 Nel dettaglio

21 Barbara Re21 Le proprietà di una classe Definite le classi, si devono descrivere le proprietà di queste, che nellontologia saranno gli slot. Gli slot possono rappresentare: proprietà estrinseche (ad esempio il gusto di un vino) proprietà intrinseche (ad esempio il nome) parti di un oggetto, nel caso in cui questo sia strutturato (possono essere parti sia astratte sia concrete) le relazioni con altre classi Gli slot possono avere dei vincoli, ad esempio il tipo, il numero di valori (la cardinalità)… In Protégé i tipi previsti sono: boolean, float, integer, string, symbol (consente di enumerare i valori possibili), class, instance, any; inoltre la definizione dellattributo può essere obbligatoria o meno (settando in maniera opportuna il flagrequired) e uno slot può avere una cardinalità singola o multipla.

22 Barbara Re22 Proprietà di una classe (1)

23 Barbara Re23 Proprietà di una classe (2)

24 Barbara Re24 Inverse slot Il valore di uno slot può dipendere dal valore di un altro slot. Ad esempio ad un Paziente si può fare unAnamnesi e lAnamnesi è relativa solo ad un paziente. Il Sistema è in grado di assicurare la consistenza della conoscenza di base in tal senso. Ad esempio cancellando unistanza di Anamnesi, Protégé provvederà a rimuovere il corrispettivo riferimento dal paziente.

25 Barbara Re25 Classi e slot

26 Barbara Re26 Protegè slot Tab Nota: se dovete eliminare uno slot che avevate precedentemente creato, si consiglia vivamente di eliminarlo sempre da Protégé Slot Tab, in quanto se viene eliminato per mezzo dellinterfaccia Protégé Class Tab, lo slot non verrà definitivamente eliminato ma rimarrà presente nellontologia non legato a nessuna classe.

27 Barbara Re27 Protégé Instance Tab Allinterno di Protégé Instance Tab si possono andare a definire le istanze per le varie classi. Definire unistanza significa 1.Scegliere una classe 2.Creare unistanza della classe 3.Immettere i valori degli slot

28 Barbara Re28 Istanze

29 Barbara Re29 Plug in Proprietà dei Plug-in: Estendono le funzionalità di Protégé per adempiere a molteplici necessità (Visualizzazione, Importazione/Esportazione ad altri formati, etc…) Ogni plug-in ha un suo tab associato attivabile attraverso il menù Project Configure Ontoviz: Plug-in per la visualizzazione grafica dellontologia Si basa su GraphViz, il quale deve essere correttamente installato Consente di specificare differenti livelli di dettaglio (Classi, Slots, SottoClassi, Istanze, Relazioni,etc…) Consente di specificare uno o più soggetti centrali della visualizzazione (Se si desidera visualizzare tutta lontologia si può specificare semplicemente THING)

30 Barbara Re30 Ontoviz

31 OWL

32 Barbara Re32 Origini di OWL Properties Symmetric, Transitive, Functional, Inverse Functional range, domain, subPropertyOf, inverseOf, equivalentProperty Class SubClassOf, intersectionOf, unionOf, complementOf, Enumeration, Equivalence, Disjoint Statements sulle istanze ground sameIndividualAs,DIfferentFrom,AllDifferent 3 facce di Owl Lite,DL,Full OWL: Sommario

33 Barbara Re33 Origini di OWL DAML DAML+OIL DAML = DARPA Agent Markup Language OIL = Ontology Inference Layer OIL OWL RDF Tutti influenzati da RDF

34 Barbara Re34 Non tutti hanno bisogno di tutta lespressività di OWL OWL Full OWL DL OWL Lite Le tre facce di OWL

35 Barbara Re35 OWL FullOWL DL OWL Lite Tutto quello che è stato presentato è disponibile nella versione Full. E inoltre possibile miscelare le descrizioni OWL con RDF(S). Non è possibile usare owl:cardinality con TransitiveProperty. Non è possibile avere classi membro, ad esempio definire metaclassi. Non è possibile usare owl:minCardinality o owl:maxCardinality. I soli valori consentiti sono per owl:cardinality sono 0 e 1. Non sono disponibili owl:hasValue, owl:disjointWith, owl:one of, owl:complementOf, owl:unionOf. Confronti

36 Barbara Re36 Protégé-OWL editor Bundled in Protégé 2.1 (Full): 1 2 3

37 Barbara Re37 OWL (in Protégé) Individuals (e.g., FourSeasons) Properties Classes (e.g., Hotel)

38 Barbara Re38 Individual Represent objects in the domain Specific things Two names could represent the same real-world individual Individuals are also known as instances. Individuals can be referred to as being instances of classes. SydneysOlympicBeach BondiBeach Sydney

39 Barbara Re39 Proprità Properties are roughly equivalent to slots in Protege. They are also known as roles in description logics and relations in UML and other object oriented notions Sono relazioni binarie sugli individui

40 Barbara Re40 Classi The word concept is sometimes used in place of class Classes are a concrete representation of concepts

41 Barbara Re41 Range and Domain Property characteristics Domain: left side of relation (Destination) Range: right side (Accomodation) Sydney BestWestern FourSeasons hasAccomodation Destination Accomodation hasAccomodation

42 Barbara Re42 Superclass Relationships Classes can be organized in a hierarchy Direct instances of subclass are also (indirect) instances of superclasses Cairns Sydney Canberra Coonabarabran

43 Barbara Re43 Class Relationships Classes can overlap arbitrarily City Sydney Cairns BondiBeach RetireeDestination

44 Barbara Re44 Class Disjointness All classes could potentially overlap In many cases we want to make sure they dont share instances Sydney UrbanAreaRuralArea Sydney Woomera CapeYork disjointWith City Destination

45 Barbara Re45 (Create a new OWL project)

46 Barbara Re46 (Create simple classes)

47 Barbara Re47 (Create class hierarchy and set disjoints)

48 Barbara Re48 (Create Contact class with datatype properties)

49 Barbara Re49 (Edit details of datatype properties)

50 Barbara Re50 (Create an object property hasContact)

51 Barbara Re51 (Create an object property with inverse)

52 Barbara Re52 (Create the remaining classes and properties)

53 Barbara Re53 Ci sono domande?


Scaricare ppt "Ontologie: RDF e OWL UNIVERSITA DI CAMERINO Corso di laurea in Informatica Barbara Re Anno Accademico 2006-07."

Presentazioni simili


Annunci Google