Pubblicazione di Linked Data in e-commerce: Progettazione e Sperimentazione (Riassunto)



Documenti analoghi
Generazione Automatica di Asserzioni da Modelli di Specifica

Volumi di riferimento

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

La georeferenziazione delle banche dati gli Uffici Giudiziari in Toscana

Introduzione al Semantic Web

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

La Metodologia adottata nel Corso

UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI

Introduzione al Private Equity Strumenti di capitale di rischio per la PMI

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

UNIVERSITA DEGLI STUDI ROMA TRE

Attività federale di marketing

OFI ITC. Come nasce questo sito 05/06/2015. Severini Piertommaso Valenti Andrea Zallocco Riccardo

La progettazione centrata sull utente nei bandi di gara

creazione e gestione di siti L'agenzia di comunicazione Artistiko internet propria attività al centro dell'attenzione

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria

Un portale semantico per i Beni Culturali

Il Modello Relazionale

Database. Si ringrazia Marco Bertini per le slides

DESY è un prodotto ideato e sviluppato da

Capitolo 4 Pianificazione e Sviluppo di Web Part

Confindustria Genova

Come creare una pagina Facebook e collegarla al sito mosajco

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

Guida Compilazione Piani di Studio on-line

PROXYMA Contrà San Silvestro, Vicenza Tel Fax

Progettazione e realizzazione di un applicativo Web Annunci Immobiliari

Raggruppamenti Conti Movimenti

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

Manuale di utilizzo del sito ASUWEB

SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2011/12

Alla c.a. Sindaco/Presidente Segretario Generale Dirigente competente

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

ControlloCosti. Cubi OLAP. Controllo Costi Manuale Cubi

EXPLOit Content Management Data Base per documenti SGML/XML

ascoltare ispirare e motivare miglioramento problem solving Flex360 pianificare comunicare la vision organizzare

COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING

Ata_NiAg02. Modulo Gestione Agenti

GIOCHI MATEMATICI PER LA SCUOLA SECONDARIA DI I GRADO ANNO SCOLASTICO

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

Ottimizzazione delle interrogazioni (parte I)

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

SOFTWARE PER LA RILEVAZIONE PRESENZE SUL WEB

La ricerca empirica in educazione

Dispensa di database Access

Piano di gestione della qualità

HR - Sicurezza. Parma 17/12/2015

marketing highlights Google Analytics A cura di: dott. Fabio Pinello

I WEBQUEST SCIENZE DELLA FORMAZIONE PRIMARIA UNIVERSITÀ DEGLI STUDI DI PALERMO. Palermo 9 novembre 2011

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

DATABASE. nozioni di base

Corso di Sistemi di Elaborazione delle informazioni

IPERCA. Il metodo a sei fasi Per gestire con successo progetti, incarichi e situazioni di vita e per accrescere continuamente l esperienza.

SISTEMI DI MISURAZIONE DELLA PERFORMANCE

Una piattaforma per la negoziazione di servizi business to business attraverso la rete Internet

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO

Comunicazione per le PMI nuove soluzioni a un problema di sempre una practice di Orga 1925

Il nuovo browser italiano dedicato alla navigazione e comunicazione sicura in internet per bambini

Titolare del trattamento dei dati innanzi descritto è tsnpalombara.it

Magazzino Virtuale Clienti

condivivere DA SOLO PUOI CRESCERE NEL MERCATO. INSIEME, PUOI CAMBIARLO.

SOMMARIO. Sistemi Self-Adaptive Motivazioni Ciclo di vita della cellula Paradigma. Future Work

Università Politecnica delle Marche. Progetto Didattico

SOLUZIONE Web.Orders online

Linguaggi e Paradigmi di Programmazione

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

A T I C _W E B G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O. Rev. 2.1

MAGAZZINO FISCALE (agg. alla rel )

Il Gruppo di lavoro ha articolato l operazione in fasi:

Configurazione della ricerca desktop di Nepomuk. Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith

Cercare documenti Web

SISTEMA NAZIONALE DI VALUTAZIONE - AUTOVALUTAZIONE ANNAMARIA BIANCO

DEPLOY YOUR BUSINESS

Bachelor of Science in Ingegneria informatica

MANUALE DELLA QUALITÀ Pag. 1 di 6

INNOVAZIONE XNOTTA PER PORTALI TURISTICI

Architettura MVC-2: i JavaBeans

Verso l autonomia I nostri servizi per le organizzazioni non profit

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Progettazione : Design Pattern Creazionali

Guida alla registrazione on-line di un DataLogger

Presentazione Photo Agency

REALIZZAZIONE DI UN LABORATORIO REMOTO PER ESPERIENZE DI ROBOTICA EDUCATIVA: LATO CLIENT

DELIBERAZIONE DELLA GIUNTA REGIO- NALE 20 dicembre 2011, n. 2883

INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI

Gestione Risorse Umane Web

MODULO PER LA GESTIONE DEI RESI

Piano di Sviluppo Competenze

WorkFLow (Gestione del flusso pratiche)

Il motore semantico della PA piemontese. Marta Garabuggio - Regione Piemonte Carlo Fortunato CSI - Piemonte

SISTEMI INFORMATIVI AVANZATI -2010/ Introduzione

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

PROCEDURE PER LA VALUTAZIONE DELLE COMPETENZE INFORMATICHE DI BASE (v.3)

Informatica Applicata 3.3 OWL. Antonella Poggi. Anno Accademico DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO FILOLOGICHE E GEOGRAFICHE

STUDIO MESSANO UFFICIO SVILUPPO NUOVE TECNOLOGIE

SCHEMA DI REGOLAMENTO DI ATTUAZIONE DELL ARTICOLO 23 DELLA LEGGE N

Programmare in ambiente Java Enterprise: l offerta formativa di Infodue

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

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

Il Digital Signage. Utilizzi. Il Digital Signage

Transcript:

Universitá degli Studi di Milano Bicocca Dipartimento di Informatica, Sistemistica e Comunicazione Corso di Laurea in Informatica Pubblicazione di Linked Data in e-commerce: Progettazione e Sperimentazione (Riassunto) Relatore: Dott. Matteo Palmonari Co-relatore: Dott. Riccardo Porrini Relazione della prova finale di: Davide Brando Preda Matricola: 735850 Cellulare: 3498938931 Mail: b.preda91@gmail.com Anno Accademico 2012-2013 Appello di laurea 31/10/2013

L obiettivo del Semantic Web è quello di affiancare al Web tradizionale composto da documenti, dati strutturati in modo da favorire l interpretazione da parte delle macchine delle informazioni disponibili. L idea di Tim Berners-Lee, l ideatore del Semantic Web, è quella di un web intelligente. Per questo motivo, parallelamente al web composto da documenti, si è sviluppato il Semantic Web, che ha garantito alle applicazioni la possibilità di sviluppare funzionalità basate sulla presenza di dati strutturati. Ad esempio, mentre i motori di ricerca elaborano interrogazioni sotto forma di insiemi di key-word per poi mostrare documenti rilevanti rispetto a quelle interrogazioni; grazie al Semantic Web è possibile rispondere ad interrogazioni fattuali che producano risultati precisi. Ad esempio, se in un motore di ricerca venissero inserite le parole chiave Scarpe sportive donna Mizuno, si correrebbe il rischio di ottenere risultati approssimativi e parziali. Sfruttando i dati strutturati, invece, si possono effettuare interrogazioni fattuali complesse, specificando, ad esempio, per un paio di scarpe la marca, la tipologia, il colore, il tessuto, etc.. Le basi su cui si fonda il Semantic Web sono la presenza di dati strutturati e l esistenza di vocabolari condivisi per poterli interpretare. Tuttavia, uno dei problemi più grandi incontrati finora nel contesto del Semantic Web è stato la difficoltà di reperimento di dati disponibili pubblicamente. Questo succede perchè la maggior parte dei dati accessibili sul web non è strutturata. In questa direzione l invito di Tim Berners-Lee fatto agli utenti del web 1 è proprio quello di mettere online i dati di cui si è in possesso. In questo modo i dati possono essere utilizzati per la creazione di applicazioni basate sull analisi o sull integrazione di informazioni. Da quell appello in poi si è avuto un aumento esponenziale di dati resi pubblici sul web. I dati presi singolarmente hanno una certa rilevanza, ma una volta integrati tra loro possono essere combinati e utilizzati per creare scenari applicativi più interessanti di quelli realizzabili con singole sorgenti. Per poter integrare i dati pubblicati sul web si necessita di uno standard comune di strutturazione e definizione. In questo verso si è mossa la comunità del Semantic Web, definendo alcuni linguaggi standard per la pubblicazione, la strutturazione e l interrogazione dei dati (RDF 2, RDFS 3, OWL 4, SPARQL 5 ). I dati strutturati secondo questi standard vengono definiti Linked Data. Le caratteristiche innovative dei Linked Data non derivano solo dalla quantità di dati, ma dalla possibilità di connettere i dati gli uni con gli altri rispetto alle relazioni che li legano. Quando i dati sono connessi tra di loro si possono abilitare meccanismi di fruizione e analisi dei dati non realizzabili nel web tradizionale composto da documenti. Inoltre, i dati così strutturati se interrogati restituiscono informazioni precise e ogni informazione viene fornita 1 http://www.ted.com/talks/tim berners lee on the next web.html 2 http://www.w3.org/tr/2004/rec-rdf-primer-20040210/ 3 http://www.w3.org/tr/rdf-schema/ 4 http://www.w3.org/tr/owl2-primer/ 5 http://www.w3.org/tr/rdf-sparql-query/ 2

sotto forma di Linked Data. In questo progetto si è definito un modello per la rappresentazione semantica di prodotti di consumo nell ambito dell ecommerce e lo si è sperimentato pubblicando un catalogo di prodotti esistente in forma di database relazionale. Si è progettata un ontologia per rappresentare la struttura del catalogo. Si è definito un mapping tra gli elementi del database e i concetti dell ontologia, che stabilisse le regole per pubblicare i contenuti del catalogo sotto forma di Linked Data. Infine, si è condotta una sperimentazione per dimostrare che le interrogazioni effettuate sulla nuova base di conoscenza abbiano dei tempi di risposta ragionevoli rispetto alle interrogazioni eseguibili sul database, e che siano sintatticamente più semplici da scrivere. Come risultato del lavoro svolto il catalogo di prodotti è stato modellato sotto forma di Linked Data. Si è reso possibile interrogare il catalogo sfruttando il linguaggio SPARQL che consente di eseguire interrogazioni articolate. Inoltre, si è resa possibile la navigazione attraverso il catalogo seguendo le relazioni semantiche che sussistono tra i diversi prodotti. Utilizzando i Linked Data e l apposito linguaggio RDF è stato possibile creare contenuti strutturati che permettano di arricchire le descrizioni di prodotti di consumo e cataloghi. In questo modo si fornisce un contributo per le applicazioni che necessitano di effettuare disambiguazione semantica o Named Entity Recognition, che possono utilizzare informazioni strutturate e non solo del testo. I Linked Data nell ambito dell E-Commerce possono essere utilizzati per effettuare disambiguazione nella ricerca di prodotti di consumo. Infatti, quando un utente consulta un catalogo ed effettua una ricerca desidera trovare specifici prodotti, con specifiche caratteristiche e si aspetta di incontrare la minor ambiguità possibile tra i risultati proposti. In questo progetto si è lavorato in ambito E- Commerce, e la base di dati utilizzata nel progetto come sorgente è una base di dati reale appartenente all azienda 7Pixel 6, la quale possiede i siti di comparazione di prezzi Shoppydoo 7 e TrovaPrezzi 8. La base di dati è privata e non accessibile dal web. In essa è contenuto il catalogo, composto da diverse tabelle, all interno delle quali sono presenti più di 217000 prodotti. Ad ogni prodotto sono associate più offerte di diversi venditori, ciascuna con il suo prezzo di vendita. Il vantaggio dato dalla presenza di un catalogo ricco di prodotti è che, una volta associata un offerta al prodotto corrispondente, si eredita dal catalogo la scheda tecnica che contiene le caratteristiche tecniche del prodotto. 6 www.7pixel.it 7 www.shoppydoo.com 8 www.trovaprezzi.it 3

Alcune aziende di E-Commerce hanno cominciato ad aggiungere annotazioni semantiche ai loro cataloghi, utilizzando ad esempio i vocabolari GoodRelations 9 e Schema.org 10. Tuttavia, nel contesto di questo progetto, questi vocabolari non sono stati ritenuti sufficientemente completi ed espressivi, perciò si è deciso di definirne uno apposito. Non si è a conoscenza di altri progetti nei quali sia stato definito un vocabolario dedicato per la descrizione semantica dei prodotti né si è a conoscenza di altri progetti che abbiano trattato ed esposto una quantità di dati paragonabile al catalogo di 7Pixel. Dunque, gli obiettivi che ci si è posti nell ambito di questo progetto sono: definire un ontologia che rappresenti la struttura del catalogo di prodotti; pubblicare un catalogo di prodotti partendo da una rappresentazione relazionale, per formare una base di conoscenza strutturata secondo il paradigma dei Linked Data; rendere possibile l esecuzione di interrogazioni approfondite e significative sulla base di conoscenza, sfruttando la sintassi SPARQL; dare la possibilità di navigare tra i dati del catalogo seguendo collegamenti semantici relazionali; fare in modo che la base di conoscenza esposta sia dinamica e si adatti automaticamente in relazione alle modifiche effettuate sul catalogo. Inizialmente è stato necessario definire un ontologia, con l obiettivo di definire in maniera formale il vocabolario utilizzato. Per strutturare l ontologia si è optato per l utilizzo del linguaggio RDFS, in modo da attenersi agli standard per la pubblicazione dei Linked Data. L obiettivo, nel definire l ontologia, è stato quello di garantire il massimo dell espressività nella descrizione dei prodotti. A tal fine, nell ontologia vengono rappresentati i principali concetti (prodotti, categorie, marche, etc..) e le principali relazioni (features, sotto-categorie, etc..) che sussistono tra essi. Per poter esporre il catalogo come Linked Data, è stato utilizzato il tool D2R- Server che ha consentito di mappare gli elementi del database relazionale ai concetti definiti nell ontologia. Prima di decidere quale tool utilizzare, sono stati valutati i tool esistenti che consentono di mappare in maniera automatica o semi-automatica da schemi relazionali ad RDF, in modo da poter scegliere il più adatto e maturo. In particolare, si è scelto un tool che consentisse la mappatura dei dati solo in lettura, poiché non era interessante, nell ambito del progetto, poter scrivere direttamente 9 http://www.heppnetz.de/projects/goodrelations/ 10 http://schema.org/ 4

sul database. L obiettivo era quello di garantire il massimo dell espressività nelle descrizioni, e i tool di sola lettura ne garantivano un grado più alto; perciò si è scelto di utilizzarne uno appartenente alla categoria Read-only General-purpose. Nello specifico, si è deciso di utilizzare il tool D2R-Server, che supporta il linguaggio D2RQ, poiché al momento dell avvio del progetto era il tool più maturo e completo da utilizzare. Sebbene il W3C 11 abbia adottato come standard per il mapping da schemi relazionali a RDF il linguaggio R2RML 12, all inizio del progetto non era ancora disponibile un tool che supportasse tale linguaggio e per questo motivo si è optato per il linguaggio D2RQ con un tool pienamente supportante. Inoltre, il team di sviluppo del tool D2R-Server è attualmente al lavoro per rendere conforme il linguaggio D2RQ agli standard del W3C. Per permettere di effettuare le interrogazioni SPARQL sulla base di conoscenza pubblicata sotto forma di Linked Data, si è utilizzato un endpoint SPARQL integrato nel tool D2R. L endpoint SPARQL accetta richieste via HTTP e restituisce informazioni strutturate. Il tool D2R si occupa autonomamente di tradurre le interrogazioni eseguite in SPARQL in interrogazioni SQL da sottoporre al database relazionale. La traduzione avviene sfruttando il mapping precedentemente definito che stabilisce le corrispondenze tra gli elementi del database relazionale e i concetti dell ontologia. In questo modo si riesce a sfruttare la semplicità del linguaggio SPARQL che consente di effettuare interrogazioni approfondite. Il tool D2R permette di generare automaticamente pagine HTML attraverso le quali è possibile navigare tra i dati del catalogo seguendo i collegamenti semantici che mettono in relazione i vari prodotti. Ad esempio, visualizzando un prodotto, tutte le sue caratteristiche sono navigabili. In questo modo, seguendo il collegamento ad una di esse si possono ottenere ulteriori informazioni sulla caratteristica stessa o visualizzare gli altri prodotti che la possiedono. I dati del catalogo sono aggiornati in maniera dinamica rispetto ai dati contenuti nel database relazionale poiché si è scelto di utilizzare la pubblicazione virtuale invece che la migrazione dei dati. In questo modo tutte le modifiche che vengono effettuate sul database si riflettono automaticamente su ciò che viene pubblicato. Inoltre, sfruttare la pubblicazione virtuale ha reso possibile non avere sulla macchina due copie degli stessi dati. Infine, sulla base di dati di 7Pixel è stata condotta un analisi delle interrogazioni in termini di tempi ed espressività. La sperimentazione è stata condotta effettuando interrogazioni SPARQL sulla base di conoscenza, e interrogazioni SQL sul database usato come sorgente. Sono state effettuate interrogazioni di diversa tipologia e complessità, e i dati ottenuti sono il risultato della media di più 11 http://www.w3.org/ 12 http://www.w3.org/tr/r2rml/ 5

test effettuati sulle singole interrogazioni. La fase di sperimentazione è servita a dimostrare la soddisfazione dei seguenti vincoli: i tempi di risposta delle interrogazioni SPARQL devono essere ragionevoli rispetto alle corrispondenti interrogazioni SQL; la complessità e la lunghezza delle interrogazioni SPARQL devono essere ragionevoli rispetto alle corrispondenti interrogazioni SQL. Dalla sperimentazione è risultato che, sebbene le interrogazioni SPARQL necessitino di più tempo rispetto alle corrispondenti interrogazioni SQL, questa discrepanza tra tempi non è elevata e può essere considerata ragionevole. Infatti, dai risultati della sperimentazione, è emerso che le interrogazioni SPARQL impiegano in media il 9% in più di tempo rispetto alle stesse interrogazioni formulate in linguaggio SQL. L overhead è inevitabile dato che le interrogazioni SPARQL, per essere sottoposte al database, devono prima essere tradotte in linguaggio SQL e poi eseguite. Tuttavia è un overhead ragionevole considerando che i tempi medi di risposta sono nell ordine dei secondi. Inoltre, è emerso che le interrogazioni SPARQL non solo possiedono una complessità ragionevole rispetto alle interrogazioni SQL, ma che anzi possono essere scritte con una sintassi più semplice in termini di numero di caratteri. I risultati ottenuti grazie a interrogazioni SPARQL effettuate sul database esposto come Linked Data, possono essere ottenuti anche effettuando direttamente l interrogazione sul database relazionale sfruttando il linguaggio SQL; tuttavia conducendo una analisi comparativa tra le due tipologie di interrogazioni, si è dimostrata la maggior semplicità necessaria a scrivere le interrogazioni SPARQL. Infatti, i dati emersi dalla sperimentazione dimostrano che in termini di numero di caratteri le interrogazioni sono più corte in media dell 86%. Inoltre non si necessita di effettuare nessun join tra tabelle poiché sono tutti implicitamente contenuti all interno del mapping. In conclusione il contributo di questo progetto è stato quello di progettare un ontologia per la pubblicazione di un catalogo di prodotti di consumo. Si è partiti da una rappresentazione attraverso schemi relazionali del database, per formare una base di conoscenza strutturata secondo il paradigma dei Linked Data. Si è condotta una sperimentazione sulle interrogazioni effettuabili sulla base di conoscenza, dalla quale sono sono state tratte interessanti conclusioni riguardo le tempistiche di risposta e la complessità semantica delle interrogazioni stesse. 6