La presentazione è stata fatta in occasione di un corso di formazione presso la regione Umbria nel 2018 su interoperabilità semantica e ontologie. La presentazione include un esempio di mappatura di un dataset della regione sulle strutture ricettive rispetto alla relativa ontologia di OntoPiA (ACCO-AP_IT) e una descrizione dell'ontologia dei servizi pubblici CPSV-AP_IT
2. Semantica in uso nel DAF
2
ONTOPiA e il catalogo ontologie e vocabolari
controllati)
Standardizzazione
Linked Open Data
Tagging semantico Indicizzazione
OntoPiA
3. OntoPiA – la rete di ontologie e vocabolari
3
ONTOLOGIA
una specifica formale ed esplicita di rappresentazione
(concettualizzazione) condivisa di un dominio di
conoscenza, definita sulla base di requisiti specifici
VOCABOLARIO CONTROLLATO
una serie di termini e codici standard predefiniti e
autorizzati, preselezionati al fine di indicizzare e
recuperare informazioni
4. 4
FACILITARE LO SVILUPPO DI
NUOVI SISTEMI INFORMATIVI
AGEVOLARE LO SCAMBIO DI DATI
ABILITARE L’INTEGRAZIONE TRA
DATI PROVENIENTI DA SORGENTI
DIVERSE
STANDARDIZZAZIONE DEI DATI
(APERTI)
OntoPiA – perché?
5. Dal punto di vista tecnico
Basati su standard del Web Semantico
(standard dei livelli 4, 5 stelle)
Sono disponibili in diverse
serializzazioni dello standard RDF,
modello per la rappresentazione dei
dati nel Web
5
6. Standard del Web Semantico
6
Href link non tipato)
Risorse: Documenti Web
HTML con link non tipati (href)
7. Standard del Web Semantico
7
E se facessimo la stessa cosa con i dati?
Href link non tipato)
Risorse: Documenti Web
HTML con link non tipati (href)
15. Web dei Dati
• I dati e i link tra i dati hanno esplicitato il tipo
• I dati sono distribuiti e collegati per formare
un enorme spazio interconnesso di dati
• Il tutto è basato su alcuni standard del Web
Semantico e del Web
- OWL (Ontology Web Language),
- RDF (Resource Description Framework)
- SPARQL (SPARQL query language for RDF)
15
16. Standard Web Semantico: RDF
16
• Un modello per I dati nel web dove I dati sono espressi sottoforma di Triple
– Soggetto Predicato Oggetto
• Ogni entità è identificata univocamente da un URI (Uniform Resource
Identifier)
– Il Soggetto e il Predicato hanno sempre un URI I
– L’Oggetto può anche essere un valore predefinito (Literale)
• Le triple sono interconnesse quando condividono la stessa entità
– Il risultato è un grafo interconnesso di triple (Linked Data)
dpedia:Perugia
dbpedia:Italy
dbpedia:country foaf:homepage
“Perugia”
rdfs:label
http://www.italia.it/en/home.html
Potete provare a navigare
http://dbpedia.org/page/Perugia
17. Vantaggi dell’RDF
17
• E’ un modello di rappresentazione dei dati pensato per il Web
• E’ basato su standard del Web
• Consente nativamente di abilitare l’integrazione tra I dati
• Fornisce un meccanismo per risolvere l’identitià delle cose
– Nativamente fornisce meccanismi per garantire interoperabilità
semantica
• E’ usato insieme al linguaggio per interrogare I dati (i.e.,
SPARQL)
– I dati sono così associati a delle API che facilitano l’interrogazione da
parte delle macchine
19. OntoPiA - Principi
19
.
Agile eXtreme Design, Ontology Design Pattern
Più serializzazioni disponibili
RDF/XML, RDF/turtle, JSON-LD
URI in inglese e persistenti – uso di w3id.org
https://w3id.org/italia/onto/… , https://w3id.org/italia/controlled-vocabulary/…
https://w3id.org/italia/data/….
Riuso indiretto di ontologie esistenti
Multilinguismo (etichette e descrizioni in ITA e ENG)
Navigazione html delle ontologie e dei vocabolari e
interrogazione via SPARQL http://ontopia.daf.teamdigitale.it/sparql
20. OntoPiA – approccio tecnico
20
.
Vocabolari
controllati
Ontologie Profilo
Applicativo
Italiano
(AP_IT)
Classe Proprietà
Restrizione
Concetto
Ontologie e vocabolari controllati esterni del Web Semantico
Allineamenti esterni (aligns)
Componente
Ontologia
coinvoltaIn
associataA
importa
exactMatch,
relatedMatch
importa
subClassOf, subPropertyOf, equivalent*
22. OntoPiA in numeri
22
.20 ONTOLOGIE PUBBLICATE 2 PRONTE MA NON PUBBLICATE
2 ONTOLOGIE PER METADATI 224 CLASSES
18 VOCABOLARI CONTROLLATI
4 PRONTI MA NON ANCORA PUBBLICATI
1 MAPPING TRA DUE VOCABOLARI CONTROLLATI
10195 AXIOMS
23. OntoPiA – coinvolgimento PA e utenti
• COLLABORAZIONE CON CENTRI DI RICERCA
– STLab – Semantic Technologies Laboratory del CNR, Sapienza Università di
Roma
• COLLABORAZIONE CON AMMINISTRAZIONI
– e.g.,ISTAT, MIBAC, Regione Piemonte, ANAC, Comuni di Palermo e Udine,
Provincia Autonoma di Trento
• COINVOLGIMENTO DEGLI UTENTI FINALI
– Disponibile su Github: chiunque può SEMPRE commentare e/o proporre
cambiamenti e correzioni
– https://github.com/italia/daf-ontologie-vocabolari-controllati
23
26. Ontologia Strutture ricettive
Definizione
26
STRUTTURA RICETTIVA
La struttura ricettiva è un punto di interesse che
esercita un’attività ricettiva. Per attività ricettiva
si intende l’attività diretta alla produzione di
servizi per l’ospitalità. Le strutture ricettive si
suddividono in tre tipologie ognuna suddivisa in
ulteriori categorie.
27. Ontologia Strutture ricettive
27
La struttura ricettiva è un punto di interesse che esercita
un’attività ricettiva. Per attività ricettiva si intende l’attività diretta
alla produzione di servizi per l’ospitalità. Le strutture ricettive si
suddividono in tre tipologie ognuna suddivisa in ulteriori
categorie.
28. Ontologia Strutture ricettive
28
La struttura ricettiva è un punto di interesse che esercita
un’attività ricettiva. Per attività ricettiva si intende l’attività diretta
alla produzione di servizi per l’ospitalità. Le strutture ricettive si
suddividono in tre tipologie ognuna suddivisa in ulteriori
categorie.
29. Ontologia Strutture ricettive
29
La struttura ricettiva è un punto di interesse che esercita un’attività ricettiva.
Per attività ricettiva si intende l’attività diretta alla produzione di servizi per
l’ospitalità. Le strutture ricettive si suddividono in tre tipologie ognuna
suddivisa in ulteriori categorie.
30. Punto di interesse - ontologia
30
http://ontopia.daf.teamdigitale.it/lode/extract?url=https://w3id.org/it
alia/onto/POI&lang=it#d4e605
31. Esempio di dato in RDF
31
Denominazione: Perugia Plaza Hotel
Identificativo: 1
Tipologia: Albergo
Classificazione a stelle: 4 stelle
Totale camere: 108
Descrizione: Perugia Plaza Hotel offre ai suoi clienti
tutti i servizi per rendere confortevol ed unico il loro
soggiorno a Perugia:
un comodo parcheggio;
ampi spazi comuni con tavolini e angoli relax accanto al Bar;
connessione wireless ovunque;
un centro benessere;
personale disponibile per la prenotazione di escursioni, di
biglietti aerei, di musei o mostre in città.
Servizi: Wifi gratuito
32. Esempio di dato in RDF
32
@prefix poiapit: <https://w3id.org/italia/onto/POI/> .
@prefix accoapit: <https://w3id.org/italia/onto/ACCO/> .
<https://w3id.org/italia/data/accommodation/1>
a poiapit:PointOfInterest , accoapit:Accommodation ;
poiapit:POIID "1" ; accoapit:accommodationCode “1” ;
poiapit:POIofficialName "Perugia Plaza Hotel" ;
accoapit:hasAccommodationTypology
<https://w3id.org/italia/controlled-vocabulary/classifications-
for-accommodation-facilities/accommodation-typology/A1> ;
accoapit:hasAccommodationClassification
<https://w3id.org/italia/controlled-vocabulary/classifications-
for-accommodation-facilities/accommodation-star-rating/4> ;
poiapit:POIdescription "Perugia Plaza Hotel offre ai suoi
clienti …"@it ;
accoapit:totalRoom "108"^^xsd:int .
accoapit:hasOfferedServiceDescription
<https://w3id.org/italia/data/accommodation/offered-service-
33. Esempio di dato in RDF
33
<https://w3id.org/italia/data/accommodation/offered-service-
description/1-wifi>
a accoapit:OfferedServiceDescription ;
accoapit:hasOSDFeature
<https://w3id.org/italia/data/accommodation/offered-service-
description-feature/wifi> ;
accoapit:hasOSDCriterion
<https://w3id.org/italia/data/accommodation/offered-service-
description-criterion/free> .
<https://w3id.org/italia/data/accommodation/offered-service-
description-feature/wifi>
a accoapit:OfferedServiceDescriptionFeature ;
accoapit:featureName "Wi-Fi"@it .
<https://w3id.org/italia/data/accommodation/offered-service-
description-criterion/free>
a accoapit:OfferedServiceDescriptionCriterion ;
34. Esempio di dato in RDF
34
“1”
”Perugia Plaza
Hotel"
https://w3id.org/italia/d
ata/accommodation/1
https://w3id.org/italia/controlled-vocabulary/classifications-
for-accommodation-facilities/accommodation-typology/A1
“Abergo/H
oteli”
https://w3id.org/italia/controlled-
vocabulary/classifications-for-accommodation-
facilities/accommodation-star-rating/4>
“4 stelle”
ti:atTime
poiapit:POIofficialName
poiapit:POIID
accoapit:hasAccommodationTypology skos:prefLabel
skos:prefLabel
37. Mapping dataset su ontologia
Intestazione
colonna dataset Concetto/proprietà ontologia
ID
accomodationCode (codice struttura ricettiva)
POIID (identificativo punto di interesse)
Denominazione POIofficialName (nome ufficiale del punto di interesse)
Tipologia
AccommodationTypology (Tipologia di struttura ricettiva)
hasAccommodationTypology (ha tipologia di struttura ricettiva)
Valori del vocabolario controllato relativo
Categoria
Dipende dalla semantica. Ora c’è mix di concetti.
A) Potrebbe essere specializzazione di tipologia (come caso precedente)
B) Potrebbe essere classificazione a stelle. AccommodationStarRating
(Classificazione a Stelle delle Strutture Ricettive)
hasAccommodationClassification (ha classificazione struttura ricettiva).
Valori del vocabolario relativo
37
38. Mapping dataset su ontologia
Intestazione
colonna dataset Concetto/proprietà ontologia
Totale Unità totalRoom (numero totale di camere)
Totale Letti totalBed (numero totale di letti)
Totale Bagni totalToilet (numero totale di bagni)
38
Tutte le altre tipologie di dati sono di ontologie
di supporto (i contatti) o core
(indirizzo/luogo/geometria)
40. Mapping dataset su ontologia
Intestazione
colonna
dataset
Concetto/proprietà ontologia
Telefono
hasTelephone (ha telefono)
hasTelephoneType (ha tipo di telefono). Vocabolario controllato (Voce)
telephoneNumber (numero di telefono).
Suggerimento: nel tagging usare direttamente numero di telefono
Telefono2 Come nel caso precedente
FAX Come nel caso precedente a eccezione del tipo che è FAX
40
Contatti (telefono, sito web, email, fax)
Ontologia SM-AP_IT (Profilo applicativo italiano Social Media & Intenet) –
http://ontopia.daf.teamdigitale.it/lode/extract?url=https://w3id.org/italia/onto/SM&lang
=it#d4e488
Concetto principale OnlineContactPoint associato a Struttura ricettiva
41. Mapping dataset su ontologia
Intestazione
colonna dataset Concetto/proprietà ontologia
Email
Ci deve essere se si specifica un punto di contatto.
hasEmail (ha email)
hasEmailType (ha tipo di email). Vocabolario controllato: Tradizionale
emailAddress (indirizzo email)
Suggerimento: nel tagging usare direttamente indirizzo email
Web hasWebSite (ha pagina web)
41
43. Mapping dataset su ontologia
Intestazione
colonna
dataset
Concetto/proprietà ontologia
CoordX
hasGeometry (ha geometria), hasGeometryType (ha tipo di geometria). In
questo caso un Point(punto)
long (longitudine)
Suggerimento: nel tagging semantico usare direttamente long (longitudine)
CoordY
Geometry (ha geometria), hasGeometryType (ha tipo di geometria). In
questo caso un Point(punto)
lat (longitudine)
Suggerimento: nel tagging usare direttamente lat(latitudine)
43
Geometria
Ontologia CLV-AP_IT (Profilo applicativo italiano Vocabolario Luoghi/indirizzi) -
Struttura ricettiva è un Punto di Interesse che ha una Geometria
45. Mapping dataset su ontologia
Intestazione colonna
dataset Concetto/proprietà ontologia
Indirizzo (include
DUG –
Denominazione
Urbanistica Generica,
DUF – denominazione
Urbanistica uFficiale e
Numero Civico)
hasAddress (ha indirizzo)
fullAddress (indirizzo completo)
hasAddressComponent (ha componente indirizzo)
hasCivicNumbering (ha numero civico)
civicNumber (valore civico)
hasStreetToponym (ha toponimo stradale o odonimo)
officialStreetName (DUF)
toponymQualifier (DUG)
Suggerimento: nel tagging semantico usare direttamente fullAddress
(indirizzo completo) 45
Comune Indirizzo Provincia
Ontologia CLV-AP_IT (Profilo applicativo italiano Vocabolario Luoghi/indirizzi) –
http://ontopia.daf.teamdigitale.it/lode/extract?url=https://w3id.org/italia/onto/CLV&l
ang=it#d4e1402
46. Mapping dataset su ontologia
Intestazione
colonna dataset Concetto/proprietà ontologia
CAP
hasAddress (ha indirizzo)
postCode (codice postale)
Suggerimento: nel tagging semantico usare direttamente postCode
codice postale)
Frazione
hasAddress (ha indirizzo)
hasAddressArea (ha area dell’indirizzo)
AddressArea (Area dell’indirizzo – Frazion/Località)
46
47. Mapping dataset su ontologia
Intestazione
colonna dataset Concetto/proprietà ontologia
Comune
hasAddress (ha indirizzo), hasCity (ha comune)
City (Comune / Città)
name (nome)
Suggerimento: nel tagging semantico usare direttamente City
Pubblicheremo a breve un vocabolario controllato sull’archivio storico
dei comuni d’italia
Codice Comune Identifier (identificativo)
Prov
hasAddress (ha indirizzo), hasProvince (ha provincia)
Province (Città Metropolitana / Provincia)
acronym (sigla automobilista)
Suggerimento: nel tagging semantico usare direttamente acronym (sigla
automobilistica).
Pubblicheremo a breve un vocabolario controllato sulle province
47
55. Ontologia servizi
Inizialmente l’ontologia è stata pensata partendo dai servizi pubblici
SERVIZIO PUBBLICO
Un insieme di atti (obbligatori o discrezionali) espletati da una Pubblica
Amministrazione (o espletati per conto di una Pubblica Amministrazione) a
vantaggio di cittadini, professionisti e imprese
Servizi pubblici possono essere online e disponibili fisicamente, attivi o in
fase di sviluppo
ESEMPI
Rilascio certificato anagrafico
Rilascio licenza di caccia
55
56. Ontologia servizi
• Estesa anche a servizi interni all’organizzazione
– E.g., prenotazione sale riunioni
• Estesa anche a servizi tra organizzazioni (per modellare
concetti legati alle piattaforme abilitanti)
– E.g., SPID, PagoPA
http://ontopia.daf.teamdigitale.it/lode/extract?url=https:
//w3id.org/italia/onto/CPSV&lang=it
https://github.com/italia/servizi-gov
56