Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Accesso ai dati su file Localizzazione dei dati File system locali e distribuiti Protocolli.

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

I tipi Strutturati.
I Namespace Mario Arrigoni Neri.
Introduzione all’HTML
Introduzione al DTD Mario Arrigoni Neri.
Introduzione ad XML Mario Arrigoni Neri.
Accesso ai dati su file LSA: Laboratorio di Sistemi Informativi Economico Aziendali Salvatore Ruggieri Dipartimento di Informatica, Università di Pisa.
Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Accesso ai dati su file Localizzazione dei dati File system locali e distribuiti Protocolli.
Unit à D1 Archivi: i concetti fondamentali. Obiettivi Conoscere le diverse organizzazioni logiche degli archivi Conoscere le operazioni di base che si.
Java Stream e File.
Java Stream e File. La classe File Per operare con lintero file java mette a disposizione la classe File Per utilizzare la classe File è necessario importare.
Commenti C#.
Array multidimensionali
A. FERRARI Alberto Ferrari. L'HyperText Markup Language (HTML) (traduzione letterale: linguaggio di marcatura per ipertesti) è un linguaggio usato per.
CODIFICA DELLE INFORMAZIONI
1 Introduzione ad XML. 2 Problemi con SGML Complesso da comprendere ed utilizzare Non è pensato per la rete: mancano link ipertestuali e specifiche grafiche.
Lezione 18 MIDI e XML Programmazione MIDI (Prof. Luca A. Ludovico)
Introduzione ai CSS. Cosa è successo allHTML Perché usare i CSS Introduzione ai CSS Fondamenti.
DTD Laurea Magistrale in Informatica Chapter 03 Modulo del corso Thecnologies for Innovation.
XSLT (eXtensible Stylesheet Language Transformation) Laurea Magistrale in Informatica Reti 2 (2005/06) dott. Francesco De Angelis
Query OQL e XQUERY a confronto
G. Mecca – – Università della Basilicata Tecnologie di Sviluppo per il Web XML: Dettagli e Approfondimenti versione 2.0 Questo lavoro è
XML Prof. Alfredo Pulvirenti. XML XML (eXtensible Markup Language) è un meta linguaggio. Può essere definito come un insieme di regole e convenzioni che.
1 System Call per Comunicazione tra Processi Pipe.
SC che operano su file (1)
XML Prof. Barbara Pernici Politecnico di Milano. Introduzione a XML.
XML Prof. Barbara Pernici Politecnico di Milano aggiornato 10/12/2002.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
Corso di Informatica (Basi di Dati)
XML e XSL. XSL - eXtensible Stylesheet Language XSL è un linguaggio di annotazione che serve a "trasformare" la struttura di un documento in formato XML.
XML e DTD. –il "PROLOG contiene: dichiarazione della versione di XML; commenti (facoltativi); dichiarazione del DOCUMENT TYPE. –il "DOCUMENT INSTANCE.
Algoritmi e strutture dati
Architettura del World Wide Web
CAPITOLO 4 LINGUAGGIO JAVA: COSTRUTTI DI BASE. ALFABETO Java adotta la codifica standard Unicode della società Unicode, Inc. (ftp://ftp.unicode.org) definito.
Introduzione e nozioni fondamentali di sintassi
Java Serialization.
Linguaggi di markup1 LINGUAGGI DI MARKUP. Linguaggi di markup2 Documenti su Internet Internet permette (tra laltro) di accedere a documenti remoti In.
XML per documenti e applicazioni transazionali su Internet Alessio Saltarin Progetto XML Factory.
Organizzazione della Memoria (Unix) Text contiene le istruzioni in linguaggio macchina del codice eseguibile, può essere condiviso in caso di processi.
Esercizio: Copiare un file in un nuovo file mediante le funzioni read e write.
1 File System ed Input/Output UNIX Implementazione del File System Caratteristiche del File System Unix/Linux System Call relative al File System Linput/output.
I File.
XSLT Trasformazioni XSL Ing. Luca Sabatucci. XSLT Uno dei vantaggi principali nell'utilizzo dell'Extensible Markup Language è la facilità con cui si possono.
Informatica Umanistica A.A. 2009/2010 eXtensible Markup Language (XML)
Importanza DTD La DTD (Document Type Definition) consente di dichiarare in maniera univoca la struttura di markup mediante la definizione dello schema.
Linguaggi di codifica.
HyperText Markup Language 17-23/6/08 Informatica applicata B Cristina Bosco.
Chinosi Michele – matr.: La seconda release di Virtuose basata su database XML La seconda release di Virtuose basata su.
Creare pagine web Xhtlm. Struttura di una pagina.
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
Informatica Umanistica A.A. 2005/2006 LEZIONE 6 Ripasso XML – DTD XSL.
HTML HyperText Markup Language Linguaggio per marcare un’Ipertesto
Informatica Umanistica A.A. 2007/2008 LEZIONE 4 eXtensible Markup Language (XML) INTRODUZIONE.
HTML Gli elementi principali di una pagina Web. Titolo: 2  Attribuisce un titolo alla pagina  Il titolo è visibile nella “barra del titolo” del browser.
XHTML Corso linguaggi per il web a.s. 2011/2012 ITIS A. Righi – Corsico Relatore – Aldo Guastafierro.
HTML I tag HTML (parte 1). I tag HTML  I comandi che il browser interpreta  Etichette per marcare l’inizio e la fine di un elemento HTML  Formato e.
Tecnologie di InternetDocument Type Definition Dott. Nicola Dragoni Document Type Definition  Document Type Definition (DTD)  Documento XML valido 
File binari Accesso a file con record di lunghezza costante Struct Persona { Int id; Char nome[50];// nome e cognome Double stipendio; }; Persona dipendente;
WWW XSLT Ing. Michele Vindigni. WWW 2 Introduzione Oggi esaminiamo in breve: u XSLT, ovvero il linguaggio trasformazione per documenti XML con sintassi.
Laboratorio di Servizi Web - XML - Ardissono 1 Rappresentazione ad oggetti di documenti XML Parser fanno analisi sintattica di documento XML ma, a meno.
A.a. 2004/05Tecnologie Web1 Introduzione a XML: Document Type Definition; parser XML; XML-schema; eXtensible Stylesheet Language.
Ingegneria del software Modulo 3 -Tecniche di implementazione Unità didattica 1 -Ingegneria dei componenti Ernesto Damiani Università degli Studi di Milano.
Servizi Internet Claudia Raibulet
1 File system Casi di studio. 2 Esempi di File System Il file system di un CD-ROM Rappresentazione di un elemento di una directory nel file system ISO.
Documenti XML ben formati Altre componenti di un documento XML – Struttura dei documenti XML.
Tecnologia per la comunicazione
XML (eXtensible Markup Language). XML è stato progettato per descrivere dati HTML è stato progettato per visualizzare dati XML (eXtensible Markup Language)
Il linguaggio XML per la rappresentazione dei dati Lo Extensible Markup Language o XML è stato concepito da un gruppo di lavoro del World Wide Web Consortium.
1 Il linguaggio XML per la rappresentazione dei dati Lo Extensible Markup Language o XML è stato concepito da un gruppo di lavoro del World Wide Web Consortium.
Linguaggio SQL. Linguaggi per database La diffusione del modello relazionale ha favorito l’uso prevalente di linguaggi non procedurali: in questo modo.
Transcript della presentazione:

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Accesso ai dati su file Localizzazione dei dati File system locali e distribuiti Protocolli di rete: ftp, http, ssh/scp, rcp Rappresentazione dei dati File di testo CSV, FLV, ARFF Accesso ai dati in Java File XML File binari Archivi, Database File compressi

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Rappresentazione in XML XML = eXtensible Markup Language XML permette la definizione di linguaggi di markup per la rappresentazione di informazione strutturata Markup: tutto ciò che ha un significato speciale che deve essere ben caratterizzato, reso esplicito

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Esempio duso linguaggio markup Problema: scambio di dati tra due applicazioni Formati proprietari difficilmente scambiabili CSV con differenti separatori /ordine delle colonne FLV, ARFF, Binari, ecc. Soluzione: definizione di un formato di interscambio … … che marchi i dati con il loro significato … … in modo che siano facilmente interpretabili

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali XML con un esempio Iron Maiden Killers 1980 The Ides of March 1:55 Iron Maiden Powerslave Another Life 3:12 …

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Prologo: dichiarazione XML … Obbligatoria allinizio del file Gli attributi sono: version: (obbligatorio) la versione di XML usata. encoding: (opzionale) nome della codifica dei caratteri usata nel documento. (default: UTF-8 o 16) standalone: (opzionale) se vale yes indica che il file non fa riferimento ad altri file esterni. (default: no)

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Tag di apertura Elementi Un elemento è un frammento di dati, limitato ed indentificato (tramite un nome) da un tag. Iron Maiden The Ides of March Elemento artist Elemento title Elemento song Tag di chiusura

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Elementi: Il tag di apertura ha la forma: nome è il nome dellelemento. attributi è una lista opzionale di attributi per lelemento Il tag di chiusura ha la forma: nome è lo stesso identificatore usato nellapertura Elementi privi di contenuto: Esiste un unico elemento radice (root)

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Attributi Gli attributi permettono di specificare proprietà degli elementi nella forma nome=valore Sono usati per definire proprietà che non possono o non si vogliono inserire nel contenuto dellelemento Vengono specificati allinterno dei tag di apertura degli elementi Lordine non è significativo

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Testo Comprende tutti i caratteri UNICODE Caratteri riservati: >, < e & È possibile inserire caratteri speciali o riservati tramite entità carattere > < & amp; à Sezioni CDATA Permettono di definire esplicitamente aree in cui si trova solo testo semplice.

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali XML, cosa altro … … (non) vedremo in seguito: Namespaces tag relativi a spazi di nomi Document Type Definition definizione delle strutture sintattiche ammissibili in un documento XML Riferimenti e hyperlink, definizione di schemi, Linguaggi e API di interrogazione XPath, XQuery, DOM, SAX Uso nel WWW: trasformazione di documenti XSLT fogli di stile CSS

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Dati tabellari nomecognomeetaprof stringstringintstring MarioBianchi23Studente LuigiRossi30Operaio AnnaVerdi?Insegnante RosaNeri20Studente

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali File XML: dati tabellari Come rappres. una tabella di valori come un documento XML? Formato ROW un tag con un attributo per ogni colonna con valore non NULL

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali File XML: dati tabellari Come rappres. una tabella di valori come un documento XML? Formato ELEMENTS un tag con un sottoelemento per ogni colonna con valore non NULL Mario Bianchi 23 Studente Luigi Rossi 30 Operaio

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali File XML: dati tabellari Come rappres. i meta-dati in un documento XML? un tag con un elemento per ogni colonna

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali XML: classi JAVA Un documento XML può essere acceduto come un normale InputStream parsing a carico del programma mediante una classe che effettua il parsing sintattico ritorna un albero navigabile del documento DOM – Document Object Model Riferimenti: javax.xml.parsers.DocumentBuilder org.w3c.dom.Document mediante una classe che effettua il parsing sintattico effettuando delle call-back su determinati eventi SAX – Simple API for Xml Riferimenti: javax.xml.parsers.SAXParser org.xml.sax.XMLReader

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Accesso ai dati su file Localizzazione dei dati File system locali e distribuiti Protocolli di rete: ftp, http, ssh/scp, rcp Rappresentazione dei dati File di testo CSV, FLV, ARFF Accesso ai dati in Java File XML File compressi File binari Archivi, Database

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali File compressi Programmi di compressione: gzip, zip, rar, bzip2, 7z, … Fondamenti teorici: Corso: Compressione di testi Operazioni: selezione della colonna Nome di una tabella compressa indirette via decompressione dirette sul compresso XDCE permette ricerche sul compresso di doc. XML

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Esercitazione: FORMATO 1. Scrivere un programma (Java) che dato un file ARFF produce il corrispondente XML (ROW o ELEMENTS).

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Accesso ai dati su file Localizzazione dei dati File system locali e distribuiti Protocolli di rete: ftp, http, ssh/scp, rcp Rappresentazione dei dati File di testo CSV, FLV, ARFF Accesso ai dati in Java File XML File compressi File binari Archivi, Database

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Rapp. di strutture dati in memoria Mario Bianchi 23 Studente … … // struttura in C struct riga { char nome[20]; char cognome[20]; int eta; char prof[30]; } var; // memoria occupata int spazio = sizeof( var ); var

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Mario Bianchi 23 Studente Mario Bianchi 23 Studente Persistenza su file di strutture dati … … fd = open(file.data, O_RDWR); lseek( fd, 2*sizeof( var ) ); read( fd, &var, sizeof(var) ); var.eta++; lseek( fd, 2*sizeof( var ) ); write( fd, &var, sizeof(var) ); close(fd); varvar file.data

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali File binari File contenenti strutture dati in codica binaria Codifica binaria di un carattere codice ASCII/UNICODE del carattere a viene codificato in ASCII con il byte Codifica binaria di interi, es assumendo sizeof(int) = 4 bytes Big endian Little endian

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali File binari Codifica binaria di floating point numbers Standard IEEE Codifica strutture dati struct si considera la composizione delle codifiche degli elementi array si considera la sequenza delle codifiche degli elementi alberi, indici, basi di dati … In generale, per strutture dati generiche si serializza la struttura dati in una sequenza di tipi base

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali File binari: classi Java Accesso random java.io.RandomAccessFile metodi: seek, readInt / writeInt, readDouble / writeDouble Codifiche caratteri (ASCII, ISO , UTF-8, UTF-16, …) java.nio.charset.Charset interi (big/little endian) java.nio.ByteOrder buffers (int, float, dobule) java.nio.Buffer

Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Esercitazione: FORMATO Consideriamo una tabella con due colonne, codiceCliente (di tipo int) e importo (di tipo double), e sia sizeof(int) = 4, sizeof(double) = 8 1. Supponiamo di generare file di questo tipo in modo casuale nei formati CSV, FLV, XML e binario. Qualè il formato che occupa maggior spazio disco? E quello che ne occupa di meno? 2. Come cambia la risposta in (1) per un tabella con una sola colonna di tipo stringa (es., nomeCliente)?