Disegno di ontologie owl partendo da cataloghi di metadati.
Nelle sperimentazioni fatte in passato con Carlo Batini, insieme a Manuel Garasi ho realizzato dei tools che fanno inferenza nei metadati descrittivi delle strutture delle basi dati.
Si cercano entità per somiglianza nei nomi e descrizioni di tavole e campi dei database.
Tali tools hanno come input:
- Un top level costituito da ontologie leggere, ovvero modelli concettuali costituiti da gerarchie di entità e relazioni tra entità delle gerarchie. Il top level che ho sperimentato è costituito da ontologie avute in dote da Carlo Batini, nulla vieta di rifarsi ad ontologie maggiormente attualizzate, riferendosi a lavori del w3c o del semic.
- Un low level costituito dalle strutture logico fisiche delle basi dati, con particolare enfasi a nomi e descrizioni di tavole e campi, chiavi primarie e chiavi straniere. Il low level può essere costituito in generale da metadati di oggetti informatici (nomi e descrizioni di oggetti correlati)
I tools “taggano” i metadati con criteri di somiglianza fatti sui nomi delle entità. Nulla vieta di perfezionare i criteri adottando algoritmi di text mining, o meglio ancora di natural language processing (http://www.celi.it/index.shtml )
Per ogni database (insieme di tavole e campi con descrizioni e chiavi) i tools producono una suite di text files contenenti:
- Le gerarchie di entità inferite nei metadati
- Le relazioni concettuali al top e i constraints al low
- Gli attributi
Tale suite (ecco un esempio: https://www.dropbox.com/s/surj6aqvzsb5qt1/somma-table-column.txt?dl=0 ) viene data in pasto ad un web service (http://www.dmi.unict.it/~longo/dbschemaparser/schema_parser_form.html )
Che la trasforma in owl (https://www.dropbox.com/s/akyd6zmv890745s/owl-table-column.txt?dl=0 )
Al momento il parser web service non tratta ancora gli attributi, è imminente una release che lo farà.
L’owl ottenuta è disegnabile con un tool free, eccola:
http://owlgred.lumii.lv/online_visualization/hp6q
Recentemente Regione Piemonte ha pubblicato in open data gli elenchi di basi dati e applicazioni:
cliccare su “Catalogo di dati, metadati e banche dati” per ottenere:
Ho applicato gli stessi criteri descritti sopra, ma anziché lavorare su tavole e campi, applicando le inferenze a nomi e descrizioni di basi dati e applicativi.
La suite di text files prodotta dai tools è la seguente:
https://www.dropbox.com/s/3h9u8hkjvvb47pv/somma-db-app.txt?dl=0
Tale suite viene data in pasto al web service (http://www.dmi.unict.it/~longo/dbschemaparser/schema_parser_form.html )
Che la trasforma in owl:
https://www.dropbox.com/s/jiqirxvzgdx8v26/owl-db-app.txt?dl=0
L’owl ottenuta è disegnabile con un tool free, eccola:
http://owlgred.lumii.lv/online_visualization/cv00
Quando sarà pronta la release del parser web service che tratterà gli attributi, i nomi delle applicazioni figureranno come attributi. Avremo così una specie di ontologia dei servizi.
Un grazie sentito e di cuore a chi ha collaborato con me per realizzare quanto esposto in questo articolo:
https://www.facebook.com/EtnaRosso?fref=ts Cristiano Longo
https://www.facebook.com/profile.php?id=100002717900887&fref=ts Fabio Galgani
I riferimenti ai miei lavori, in inglese e in italiano, sono correlati alla mia biografia: