Università degli Studi di Modena e Reggio Emilia

Slides:



Advertisements
Presentazioni simili
Presentazione della tesi di laurea di Flavio Casadei Della Chiesa Newsletter: un framework per una redazione web.
Advertisements

Gli ipertesti del World Wide Web Funzionamento e tecniche di realizzazione a cura di Loris Tissìno (
Corso di Fondamenti di Informatica
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
ASP .NET & Web Service: Introduzione
PHP.
INTERNET : ARPA sviluppa ARPANET (rete di computer per scopi militari)
Java Enterprise Edition (JEE)
Connessione con MySQL.
una interfaccia internet per il sistema Momis
Query OQL e XQUERY a confronto
WebProfessional Web Content Management System
Università degli studi di Modena e Reggio Emilia
1 Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Relatore:
Motore di news per portali Web: progetto ed implementazione Relatore: Chiar.mo Prof. Sonia Bergamaschi Tesi di Laurea di: Roberto Delfini Anno Accademico.
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Analisi.
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di.
Re-engineering del wrapper XML Schema per il sistema MOMIS
Peer to Peer DBMS: il sistema FOAF Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Università degli.
Il mio nome è Alain Fergnani e nel corso della tesi mi sono occupato della dinamica delle ontologie per il Web Semantico, e in particolare dell’approccio.
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica MOMIS: servizi di wrapping.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Progetto e realizzazione del software "Solar Data Manager"
Analisi e Contromisure di tecniche di Sql Injection
UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA
Università degli studi di Modena e Reggio Emilia Progetto e realizzazione di un tool di sincronizzazione database server – palmare per il controllo del.
SINCRONIZZAZIONE E TRASFERIMENTO VIA WEB DI IMMAGINI E DATI MULTIMEDIALI CON INFORMAZIONI GEOGRAFICHE E RAPPRESENTAZIONI CARTOGRAFICHE Laureando: Mitja.
1 Università della Tuscia - Facoltà di Scienze Politiche.Informatica 2 - a.a Prof. Francesco Donini Active Server Pages.
1 Basi di dati e Web Prof. Stefano Paraboschi Prof. Barbara Pernici.
Analisi dettagliata e design B. Pernici M.G. Fugini AA
Informatica.science.unitn.it Un esempio di architettura basata sulluso di XML e XSL per la pubblicazione di un sito web.
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
Corso di Informatica A.A
Progettazione di una base di dati
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Scienze dellInformazione Applicazione.
Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria Enzo Ferrari Modena Corso di Laurea in Ingegneria Informatica PROGETTO E SVILUPPO.
Introduzione ad ASP.net
Architettura Java/J2EE
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... ASP. Net View State e controlli Elaborazione di Franco Grivet Chin.
DBMS ( Database Management System)
Introduzione alla modellazione di sistemi interattivi
Ing. Enrico Lecchini BetaTre S.r.l.
Chinosi Michele – matr.: La seconda release di Virtuose basata su database XML La seconda release di Virtuose basata su.
La progettazione di un sistema informatico
Analisi (Analista) Progettazione (Progettista) Sviluppo o Traduzione (Sviluppatore) Documentazione.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria “Enzo Ferrari” – Sede di Modena Corso di Laurea Specialistica in Ingegneria Informatica.
Creare pagine web Xhtlm. Struttura di una pagina.
Il World Wide Web Lidea innovativa del WWW è che esso combina tre importanti e ben definite tecnologie informatiche: Documenti di tipo Ipertesto. Sono.
1 Applet ed HTML Fondamenti di Informatica Corso D.
ASP.NET. …un po’ di ASP ASP (Active Server Pages) è una tecnologia Microsoft che consente di scrivere codice eseguibile (script) lato server, inserendo.
1 Ontology languages. Strato dei modelli LA SCELTA DEL LINGUAGGIO Una volta selezionati i componenti dell’ontologia occorre esprimerli in maniera esplicita,
Lezione 8.
DAL WEB AL SEMANTIC WEB Aspetti teorici e tecnologici Carmagnola Francesca Dipartimento Informatica C.so Svizzera 185, Torino
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
Esercitazione su Vector. Permette di definire collezioni di dati generiche, che sono in grado di memorizzare elementi di ogni sottotipo di Object Definito.
Analisi dettagliata e design
Carluccio Antonio Carluccio Alessandra Caricola Giovanni Vizzino Anna Università degli Studi di Bari.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Strumenti per la gestione efficiente di connessioni tra terminali mobili Android Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso.
Relatore: Prof. Ing. Stefano SalsanoLaureando: Flaminio Antonucci.
Servizi Internet Claudia Raibulet
LIP: 15 Marzo 2005 Vettori di interi. Esercizio proposto Definire una classe VectorInt i cui oggetti sono vettori omogenei di interi ordinati in modo.
Università degli Studi di Firenze Facoltà di Ingegneria Dipartimento di Sistemi e Informatica Corso di Laurea in Ingegneria Informatica Modelli e strumenti.
Eprogram informatica V anno.
1 Lixto tools evaluations for HTML data Integration in Momis Lixto tools evaluations for HTML data Integration in Momis Università degli Studi di Modena.
Eprogram informatica V anno. Programmare in rete.
Progetto WELL-FIR Manuale Utente del Web GIS Versione 0.1.
Transcript della presentazione:

Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Realizzazione di una interfaccia Web per la progettazione di uno schema ER e la sua traduzione in RDF Relatore: Candidato: Prof. Sonia Bergamaschi Mattia Bonacorsi Anno Accademico 2003-2004

Scopo e strumenti Scopo: creazione pagine Web dinamiche per la progettazione concettuale di database con il formalismo grafico del modello ER e loro traduzione nello standard W3c RDF Tecnologie Utilizzate: ASP.NET, adottato per lo sviluppo della applicazione, utilizza una emulazione di modello ad eventi in sostituzione del modello lineare di ASP RDF: (Resource Description Framework) è un linguaggio per la descrizione delle informazioni su Web. RDF è stato creato per produrre informazioni che devono essere elaborate, insieme al loro significato da un agente software Strumenti Utilizzati: Visual Studio .NET Internet Information Service 5.0

ASP.NET Benefici di ASP.NET rispetto ad ASP Separazione del codice che implementa la logica dal codice per la presentazione delle informazioni Modello di programmazione basato sugli eventi Più funzioni integrate. Non è più necessario accedere esplicitamente alle variabili modulo ma è sufficiente aggiungere runat=“server” al modulo e a ogni suo elemento Miglioramento della interfaccia grafica per creare pagine: è possibile disegnare elementi con un semplice drag-and-drop Debug reale. Con Visual Studio .NET si può esaminare passo passo il codice ASP.NET

Round Trip Analizziamo la divisione di lavoro di un form in una pagina Web Il browser presenta il form all’utente L’utente interagisce con il form L’iterazione dell’utente con i componenti server causano un invio della pagina al server Il server elabora la pagina inviata e la restituisce al browser Il browser presenta nuovamente il form all’utente Visto che le pagine Web sono ricreate ogni volta che sono spedite al server, le informazioni associate alla pagina devono essere, in qualche modo, salvate e ricaricate ad ogni round trip. Le modalità per realizzare ciò sono: Modalità che memorizzano le informazioni nel client o nella pagina: View State, Campi Nascosti, Cookies, Query String Modalità che memorizzano le informazioni nel server: Variabili Applicazione, Variabili Sessione, Supporto Database

RDF è un linguaggio per la descrizione delle risorse Web La pagina http://www.example.org/index.html è stata creata il 16 agosto 1999 Dichiarazione RDF Grafo RDF http://www.example.org/index.html http://www.example.org/terms/creation-date 16 agosto 1999 <?xml version=“1.0”?> <rdf:RDF xmlns:rdf=“http://www.w3.org/1999/02/22-rdf-syntax-ns#” xmlns:exterms=“http://www.example.org/terms/”> <rdf:Description rdf:about=“http://www.example.org/index.html”> <exterms:creation-date>August 16, 1999</exterms:creation-date> </rdf:Description> </rdf:RDF> Codice RDF/XML Terna RDF

RDF Schema RDF Schema fornisce gli strumenti necessari per creare un vocabolario RDF. Un vocabolario RDF descrive le classi e le proprietà utilizzate nell’applicazione RDF Schema definisce delle classi e delle proprietà che sono contenuti nel vocabolario dei termini di W3c (rdf:type, rdfs:Class …) Sulla base di questo vocabolario è possibile definire nuovi vocabolari che definiscono le classi e le proprietà necessarie per l’applicazione; le proprietà sono definite in termini di dominio e di range <?xml version=“1.0”?> <!DOCTYPE rdf:RDF [<!ENTITY xsd “http://www.w3.org/2001/XMLSchema#”>]> <rdf:RDF xmlns:rdf=“http://www.w3.org/1999/02/22-rdf-syntax-ns#” xmlns:rdfs=“http://www.w2.org/2000/01/rdf-schema#” xmlns:exterms=“http://www.example.org/terms/”> <rdfs:Class rdf:ID=“MotorVehicle”/> <rdfs:Property rdf:ID=“weigth”> <rdfs:domain rdf:resource=“#MotorVehicle”/> <rdfs:range rdf:resource=“&xsd;integer”/> </rdf:Property> </rdf:RDF> Ex:MotorVehicle rdf:type rdfs:Class Ex:weightInKg rdf:type rdf:Property Ex:weigthInKg rdfs:domain ex:MotorVehicle Ex:weigthInKg rdfs:range xsd:integer

Due applicazioni realizzate una applicazione per la progettazione concettuale di database attraverso interfacce Web grafiche che permette il disegno di schemi ER Un applicazione permette la traduzione degli schemi disegnati in codice RDF/XML <?xml version="1.0"?> <! DOCTYPE rdf:RDF [<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#">]> <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# xmlns:er="http://localhost/TESI/RDF/Vocabulary/" xmlns:dt="http://localhost/TESI/RDF/Datatype/" xml:base="http://localhost/TESI/RDF"> <rdf:description rdf:about="#Persona"> …

Pagina Web per il disegno di schemi ER Per disegnare gli oggetti grafici sono state create delle classi ed è stato ereditato il metodo Render, comune a tutti i controlli, che viene richiamato ad ogni round trip e permette di generare il codice HTML corrispondente all’elemento public void SalvaComponenti() { Control[] cl = new Control[Panel1.Controls.Count]; Panel1.Controls.CopyTo(cl,0); Session["Controls"] = cl; } L’interfaccia grafica realizzata permette di disegnare schemi ER selezionando gli elementi da disegnare dalla barra in alto e posizionandoli nel disegno Per mantenere i controlli disegnati in precedenza, essi sono stati inseriti in una variabile sessione, dato che il meccanismo view state non funziona per le collezioni di oggetti. Gli oggetti inseriti nella variabile sessione vengono ricaricati all’interno della pagina ad ogni round trip Procedura per salvare i componenti public void CaricaComponenti() { if (Session["Controls"]!=null) Control[] cc = (Control[])Session["Controls"]; foreach(Control c in cc) if ((c as Control)!=null) if (c.GetType().ToString().IndexOf("LibreriaDiClassi")>=0) Panel1.Controls.Add(c); } } } } Procedura per caricare i componenti

Dichiarazione di nuovi tipi di dato RDF Per poter creare un vocabolario RDF degli elementi utilizzati dall’applicazione è necessario definire nuovi tipi di dato RDF mette a disposizione tre modalità, che possono essere combinate tra loro per definire nuovi tipi di dato: Derivazione con restrizione Lista Derivazione per unione <xsd:simpleType name="maxCard"> <xsd:union> <xsd:simpleType> <xsd:restriction base="xsd:positiveInteger"/> </xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:enumeration value="N"/> <xsd:enumeration value="n"/> </xsd:restriction> </xsd:union> Gerarchia dei tipi di dato definiti in RDF Schema Esempio di dichiarazione di un nuovo tipo di dato

Creazione di un vocabolario RDF per la descrizione di schemi ER Per la traduzione di uno schema ER in RDF è necessario creare un vocabolario che contenga tutti gli elementi che possono essere disegnati. Oltre agli elementi, il vocabolario deve contenere tutte le definizioni delle proprietà di questi elementi. A questo proposito: Il metodo di definizione delle proprietà di RDF, in termini di dominio e range, ha portato alla creazione di una gerarchia degli elementi che compongono uno schema ER In RDFS è permesso definire classi che ereditano direttamente da più di una classe Gerarchia degli elementi all’interno del vocabolario RDF

Traduzione dello schema ER disegnato in RDF La pagina Web dinamica per la traduzione dello schema ER disegnato in codice RDF/XML: Legge la variabile sessione che contiene tutti gli oggetti che rappresentano gli elementi disegnati e riceve tramite query string un parametro che indica se tradurre le informazioni di posizionamento Scorre più volte la collezione di oggetti traducendo ogni volta una tipologia di elementi, le sue proprietà e gli elementi in esso contenuti Per produrre un frammento di codice si serve della funzione AggiungiRiga passandogli il testo da visualizzare Pagina per la traduzione in RDF public void AggiungiRiga(int tab, string text) { for(int i=0;i<tab;i++) txtRDF.Text= txtRDF.Text+"\t"; txtRDF.Text= txtRDF.Text+text+"\n"; } Procedura Aggiungi Riga

Conclusioni e lavoro futuro Il lavoro svolto ha portato alla realizzazione di un’applicazione Web che permette il disegno di schemi ER che: Permette di disegnare tutti e 9 gli elementi che compongono uno schema Effettua numerosi controlli sui dati immessi dall’utente e sul posizionamento degli elementi e traduce gli schemi disegnati in RDF Includendo o meno le informazioni di posizionamento Presentando, nell’ultimo capitolo della tesi, una bibliografia ragionata su RDF che riassume dove trovare risorse utili su questo nuovo standard Possibili sviluppi dell’applicazione sono: Il recupero di uno schema ER disegnato in precedenza partendo dal codice RDF/XML con le informazioni di posizionamento che aveva generato Modifica e Cancellazione degli elementi disegnati Eliminazione di vincoli grafici che non permettono, ad esempio, di poter creare una qualsiasi identificazione esterna Controlli complessi sugli elementi dello schema come, ad esempio, il controllo che lo schema sia connesso