Protégé. Cos è un ontologia



Documenti analoghi
Esercitazione di Basi di Dati

Capitolo 4 Pianificazione e Sviluppo di Web Part

Organizzazione degli archivi

Esempio d ontologia. Capitolo 4 ONTOLOGIE PER LE APPLICAZIONI GEOGRAFICHE. Ontologie geografiche. Interoperabilità attraverso un'ontologia

ALICE AMMINISTRAZIONE UTENTI WEB

ALBO PRETORIO WEB MANUALE DELLA PROCEDURA SOMMARIO. Uso del manuale. Informazioni generali. Interfaccia grafica. Guida di riferimento

Progettaz. e sviluppo Data Base

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

Alessandra Raffaetà. Basi di Dati

LE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE

Finalità della soluzione Schema generale e modalità d integrazione Gestione centralizzata in TeamPortal... 6

Guida alla registrazione on-line di un DataLogger

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia

7. Layer e proprietà degli oggetti

SUAP. Per gli operatori SUAP/amministratori. Per il richiedente

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Progettazione : Design Pattern Creazionali

Manuale d'uso. Manuale d'uso Primo utilizzo Generale Gestione conti Indici di fatturazione Aliquote...

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

OSSERVATORIO REGIONALE CONTRATTI PUBBLICI DI LAVORI, SERVIZI E FORNITURE

Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste

Strutturazione logica dei dati: i file

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

Database. Si ringrazia Marco Bertini per le slides

SCUOLANEXT 2.0: Registro Unico

CONTENT MANAGEMENT SY STEM

Gestione Rapporti (Calcolo Aree)

Raggruppamenti Conti Movimenti

MANUALEDIUTILIZZO MODULO CRM POSTVENDITA

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi

5.3 TABELLE RECORD Inserire, eliminare record in una tabella Aggiungere record Eliminare record

Guida all uso di Java Diagrammi ER

Andrea Maioli Instant Developer: guida all uso

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

WG-TRANSLATE Manuale Utente WG TRANSLATE. Pagina 1 di 15

Therapeutic Management System

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

MANUALE UTENTE. In questo manuale verranno descritte tutte le sue funzioni. Il sistema OTRS è raggiungibile al seguente link:

Amministrazione gruppi (Comunità)

Creare un sito Multilingua con Joomla 1.6

POSTECERT POST CERTIFICATA GUIDA ALL USO DELLA WEBMAIL

Esercizio sui data base "Gestione conti correnti"

Veneto Lavoro via Ca' Marcello 67/b, Venezia-Mestre tel.: 041/

Access. P a r t e p r i m a

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

Olga Scotti. Basi di Informatica. Excel

Registratori di Cassa

Informatica (Basi di Dati)

Aggiornamento Titoli

Corso Bilanci 20 febbraio 2015 BILANCIO XBRL. Sistemi Vicenza Srl 1

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

Esercizio data base "Biblioteca"

Gestione Turni. Introduzione

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

I Sistemi Informativi

Università degli Studi di Messina

Light CRM. Documento Tecnico. Descrizione delle funzionalità del servizio

Manuale Utente MyFastPage

FLASHINVESTOR Manuale dell Utente

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

4 Modello dati, Ontologie e basi di conoscenza. 4.1 Uso del programma Protégé 3.0 -

Corso di Informatica

CRM Configurazione e gestione accessi

Il sistema C.R.M. / E.R.M.

La rubrica degli indirizzi di posta elettronica associati al dominio scuole.piemonte.it

Tricks & Tips. [Access] Tutorial - ActiveX - Controllo Tree View. - Michele de Nittis - Versione: 1 Data Versione: venerdì 30 agosto 2002

PIATTAFORMA DOCUMENTALE CRG

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

Regione Piemonte Portale Rilevazioni Crediti EELL Manuale Utente

Guida all uso della piattaforma. portale Weblog & Podcast del MIUR COME UTILIZZARE AL MEGLIO L AMMINISTRAZIONE DEL BLOG

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

La Metodologia adottata nel Corso

Amministrazione Trasparente

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati

Nuova procedura di Cassa Contanti Wingesfar: istruzioni per le farmacie Novembre 2009

Software Servizi Web UOGA

Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali

MANUALE D USO DELLA PIATTAFORMA ITCMS

Concetti di base di ingegneria del software

TERMINALE. Creazione e gestione di una postazione terminale di Eureka

MANUALE PORTALE UTENTE IMPRENDITORE

LINEE GUIDA PER L EROGAZIONE DELLA FORMAZIONE INTERNA

SCENARIO. Personas ALICE Lucchin / BENITO Condemi de Felice. All rights reserved.

Organizzazione delle informazioni: Database

Introduzione. Installare EMAS Logo Generator

The Enterprise Service BUS. Manuale utente - VulCon

PROCEDURE DI FIRMA PER I PIP PRESENTATI NEI BANDI APPRENDISTATO

Il calendario di Windows Vista

Database 1 biblioteca universitaria. Testo del quesito

Omnia Web Timesheet. Manuale utente

STRUMENTI DI PRESENTAZIONE MODULO 6

Guida all uso di. a cura dell Area Economia Applicata (AEA) - IPI

Alfa Layer S.r.l. Via Caboto, Torino ALFA PORTAL

Guida Compilazione Piani di Studio on-line

Transcript:

Protégé Cos è un ontologia Un ontologia è una descrizione formale di concetti in un dominio (classi) le proprietà di ciascun concetto (slot) le restrizioni sugli slot (facets) ONTOLOGIA + UN INSIEME DI ISTANZE DI CLASSI = BASE DI CONOSCENZA

A cosa serve un ontologia Un ontologia consente di definire: - Un vocabolario - I concetti di base interpretabili da una macchina - Le relazioni fra i concetti ESPORTABILITA (rende un sistema indipendente dalla applicazione e quindi esportabile in altri domini) MODELLAZIONE (definizione della conoscenza del dominio, utile per analisi requisiti e la definizione use case in fase progettuale) INTEROPERABILITA (due sistemi possono fare riferimento ad una stessa ontologia anche se utilizzano formati diversi di rappresentazione della conoscenza) Esempio di utilizzo WEB Informazioni in diversi formati Mancanza di una struttura unica Ontologie La modellazione, potrebbe facilitare il processo di ricerca su fonti eterogenee. Sono XML-based, quindi consentono la descrizione dei contenuti in maniera strutturata.

Protégé: un editor per la creazione di ontologie Caratteristiche: - Piattaforma open-source - Può esportare le ontologie in vari formati: RDF(S), XML Schema e OWL - E basato su Java - E estendibile (esistono numerose API e plug-in) - Dispone di numerosi ambienti plug-and-play che consentono un rapido sviluppo delle applicazioni - Sviluppato dall università di Stanford (http://smi.stanford.edu/projects/protege/) Protégé API Protégé fornisce un interfaccia che altre applicazioni possono utilizzare per accedere alla knowledge bases. Queste applicazioni non necessitano di usare o visualizzare nessuna delle interfacce utente di Protégé. Esiste una classe che fornisce il metodo getknowledgebase() il quale permette di accedere al contenuto della base di conoscenza. Tali contenuti possono essere usati ad esempio da motori di inferenza (es. Drools, Mandarax, Jess, ), i quali possono compiere le loro inferenze ed eventualmente aggiornare la base di conoscenza. Ulteriori informazioni relative alle API di Protégé possono essere reperite su http://protege.stanford.edu/doc/pdk/kb-api.html

La piattaforma Protégé Esistono due modalità per creare le ontologie in Protégé: IlProté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, un ontologia è costituita da un insieme 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/]. Un ontologia OWL può includere descrizioni di classi, di proprietà e le loro istanze.

Progettazione di un ontologia Progettare un ontologia significa: 1. Determinare il dominio e lo scopo dell ontologia 2. Considerare la possibilità di riusare ontologie esistenti 3. Individuare i concetti chiave del fenomeno da descrivere 4. Organizzare i concetti in classi e gerarchie tra le classi 5. Definire le proprietà delle classi 6. Definire vincoli (valori leciti)sulle proprietà 7. Creare le istanze 8. Attribuire i valori alle proprietà per tutte le istanze create Approcci possibili Per lo sviluppo di una gerarchia di classi esistono diversi approcci (Uschold and Gruninger, 1996, Ontologies: Priciples, Methods and Applications ): Top-down. Si definiscono i concetti più generali del dominio e la loro specializzazione. Bottom-up. Si inizia definendo le classi più specifiche della gerarchia, raggruppandole in seguito in concetti più generali. Combinazione. Si combinano la metodologia bottom-up e quella top-down: si definiscono i concetti di maggior rilievo (importanza?) quindi li si generalizzano e li si specializzano. Individuate le classi della nostra ontologia, esse potranno essere create in Protégé Classes Tab. 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)

Protégé Classes Tab Create Class Protégé Classes Tab (2) All interno di Protégé Classes Tab si può definire il role di una classe: -Astratta -Concreta Una caratteristica importante è che Protégé supporta l ereditarietà multipla. Inoltre si possono definire gli slot, i vincoli sui valori degli slot, le relazioni fra le classi e le proprietà.

Nome della classe Aggiungere annotazioni relative alla classe Gerarchia delle classi Vincoli che possono essere espressi sulla classe (saranno istanze di :PAL- CONSTRAI NT ) Supercla sse Proprietà della classe Le proprietà di una classe - slot Definite le classi, si devono descrivere le proprietà di queste, che nell ontologia 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 dell attributo può essere obbligatoria o meno (settando in maniera opportuna il flag required ) e uno slot può avere una cardinalità singola o multipla.

Nome dello slot (si consiglia per nomi composti di utilizzare il carattere _ per esportabilità) Note relative allo slot Scelta del tipo Valore di default dello slot Slot inverso (vedremo in seguito la sua utilità) Dominio Le proprietà di una classe slot (2) Si può definire (per qualunque tipo tranne per il tipo generico Any) il valore di default Vincoli di cardinalità sugli slot Sugli slot di tipo float e integer si può definire il valore minino e il valore massimo

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

Protégé 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 dell interfaccia Protégé Class Tab, lo slot non verrà definitivamente eliminato ma rimarrà presente nell ontologia non legato a nessuna classe. Creazione di un istanza All interno di Protégé Instance Tab si possono andare a definire le istanze per le varie classi. Definire un istanza significa: 1) Scegliere una classe 2) Creare un istanza della classe 3) Immettere i valori degli slot

Protégé Instance Tab Gerarchia delle classi Editor relativo all istanza selezionata Istanze asserite della classe selezionata Esempio di creazione di un istanza Nota: Gli slot required vengono evidenziati da Protégé Instance Tab con un bordo rosso. La consistenza deve essere garantita dall utente, in quanto Protégé consente la memorizzazione di istanze anche aventi campi required non compilati. Il numero di istanze presenti in una data classe viene visualizzato accanto al nome della classe.

Un esempio di Plug-in: Ontoviz 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 dell ontologia. 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 l ontologia si può specificare semplicemente THING) Aggiunge una classe alla visualizzazione Opzioni Crea il grafico Tab di OntoViz sub: Sottoclassi sup: Superlcassi slx: Classi correlate isx: Classi correlate con slot relazione di inverse slot slt: Slots ins: Istanze sys: Classi di sistema

Forms tab Funzionalità di protégé che permette di creare interfacce grafiche per l inserimento di istanze che potranno essere utilizzate dall utente per popolare la knowledge base. Le interfacce sono personalizzabili sia nei contenuti che nella forma. Utile per un uso allo stato prototipale, meno utile per la creazione di un applicazione in quanto non consente di introdurre componenti aggiuntivi rispetto a quelli supportati di base (ad esempio non esistono bottoni) Esempio di utilizzo di Protégé Progetto Sere-na Scopo: Realizzazione di un Sistema Esperto in campo medico per il supporto e la formazione alla diagnosi della Dislessia. Base di conoscenza Motore di Inferenza Applicazione Protégé Drools

Esercitazione Creare una semplice ontologia cercando di seguire le linee guida espresse in questa breve introduzione L ontologia assegnata è parte dell ontologia reale del progetto Sere-na opportunamente semplificata Il dominio è un ambiente ospedaliero Lo scopo è la gestione dei dati del paziente Ulteriori esempi e tutorials possono essere reperiti dal sito ufficiale di Protégé

Sito ufficiale: http://protege.stanford.edu/ OWL: www.w3.org/2004/owl/ OKBC: www.ai.sri.com/~okbc/ API Protégé: Riferimenti http://protege.stanford.edu/doc/pdk/kb-api.html Tutorial: http://www.co-ode.org/resources/tutorials/protegeowltutorial.pdf http://www.kde.cs.uni-kassel.de/lehre/ws2004-05/wissensverarbeitung/protegetutorial-part1.pdf