Tecnologie informatiche per la codifica dell’informazione musicale Luca Andrea Ludovico Laboratorio di Informatica Musicale Dipartimento di Informatica “Giovanni Degli Antoni” Università degli Studi di Milano
Progettazione e implementazione di archivi multimediali per la musica Incontro 1 - 14 maggio 2018
Conservare e valorizzare con il digitale Digitalizzazione a fini conservativi: informazioni smaterializzabili come immagini, video, audio materiali deperibili come carta, pellicole o altri (conservazione sostitutiva) Attenzione: massima (?) qualità delle codifiche Digitalizzazione a fini di fruizione e valorizzazione: archivi digitalizzati (eventualmente degradati) per la fruizione da parte di un’utenza specialistica o generale; altri beni culturali da rendere disponibili in forma digitale, come beni immobili, sculture, pitture, etc. virtualizzazione di beni culturali per motivi logistici o di preservazione del bene materiale (beni architettonici, originali deperibili, etc.) Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Alcune domande preliminari Con il digitale si conserva? In generale sì, ma… deperibilità dei supporti deperibilità (ed eventuale difficoltà di ricostruire) i dispositivi per la loro lettura obsolescenza dei formati, soprattutto se non standard e/o pubblicamente documentati Stele di Rosetta, granodiorite, 196 a.C. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Qualsiasi oggetto fisico è digitalizzabile? Fotografia di scena e figurino di Lauretta, Gianni Schicchi, allestimento del Metropolitan Opera House, New York (14/12/1918) Proprietà dell’Archivio Storico Ricordi
Qualsiasi oggetto fisico è digitalizzabile? Alcuni oggetti informativi «nascono» in forma digitale (fotografie digitali, ricostruzioni 3D, partiture prodotte al pc, …) riversamento (sostituzione supporto fisico), conversione di formato Alcuni oggetti fisici, pur essendo tridimensionali, possono essere ricondotti a due dimensioni (fotografie, partiture, bozzetti, figurini, …) eventualmente attraverso più scansioni (il caso del verso dei bozzetti dell’Archivio Storico Ricordi) Alcuni oggetti fisici 3D non possono essere completamente catturati (sculture, costumi, …). Anche una scansione + stampa 3D al momento non può coglierne tutti gli aspetti, ad esempio la sensazione al tatto di un tessuto. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Valorizzazione degli archivi in rete Principali vantaggi: Fruizione online in alternativa a quella presso l’archivio (distribuita nel tempo e nello spazio, senza accesso fisico al bene culturale, …) Navigazione di metadati e contenuti, con possibilità di far emergere relazioni con altri oggetti informativi Aggancio di oggetti multimediali Interoperabilità con altri archivi Storicizzazione delle competenze Possibilità di sfruttamento economico attraverso forme di e-commerce Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Requisiti tecnici Principali requisiti hardware Server (application server, web server) Dispositivi di storage collegati al server Infrastruttura di rete (locale? Intranet? Extranet? Web?) Principali requisiti software Web server Database Management System (DBMS) Progettazione e implementazione di un database Strumenti di catalogazione e alimentazione del DB Strumenti di interrogazione del DB Applicazioni dedicate, portale Web, … Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Database relazionali
Definizioni Dato: registrazione della descrizione di una qualsiasi caratteristica del dominio di interesse su un supporto che ne garantisca la conservazione e, mediante un insieme di simboli, ne garantisca la comprensibilità e la reperibilità. I dati hanno bisogno di un contesto interpretativo che permetta di estrarre da essi le informazioni di interesse. Base di dati (database): collezione di dati tra loro correlati, utilizzati per rappresentare le informazioni di interesse in un sistema informativo Sistema di gestione di basi di dati (DBMS – Data Base Management System): sistema software che fornisce gli strumenti necessari a gestire le informazioni Quindi una base di dati (database) è una collezione di dati gestita da un DBMS. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Problemi dei sistemi informativi Sistema informativo: gestisce e rende disponibili informazioni. All’interno di un sistema informativo, una base di dati progettata correttamente permette di risolvere i seguenti problemi: Ridondanza e inconsistenza Difficoltà nell’accesso ai dati Accesso concorrente ai dati Protezione dei dati e profilazione degli utenti Integrità dei dati Esempio della biblioteca di un conservatorio. Meccanismo fondamentale per risolvere: lo schema (o schema logico) della base di dati descrive il contenuto della base di dati tramite un formalismo ad alto livello che esula dai dettagli della sua effettiva implementazione fisica, detto modello dei dati. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Modello di dati: principali concetti Entità - Insieme di «oggetti» della realtà applicativa di interesse, aventi caratteristiche comuni Istanza di entità - Singolo oggetto della realtà applicativa di interesse, modellato da una certa entità Attributo - Proprietà significativa di un’entità, ai fini della descrizione della realtà applicativa di interesse. Ogni entità è caratterizzata da uno o più attributi Un attributo di un’entità assume uno o più valori per ciascuna delle istanze dell’entità, detti valori dell’attributo, in un insieme di possibili valori, detto dominio dell’attributo Associazione - Corrispondenza tra un certo numero di entità. Anche le associazioni possono avere degli attributi che corrispondono a proprietà dell’associazione Istanza di associazione - Corrispondenza tra le istanze di un certo numero di entità Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Modello di dati relazionale Qualsiasi modello dei dati deve rispondere a due domande fondamentali: come rappresentare le entità e i loro attributi come rappresentare le associazioni e i loro attributi La maggioranza dei modelli usa strutture come il record, in cui ogni componente rappresenta un attributo. Il modello relazionale, sviluppato negli anni ‘70 e tuttora in voga, è basato su una singola struttura dati: la relazione. Una relazione può essere vista come una tabella con righe, dette tuple, e colonne contenenti dati di tipo specificato (ad esempio interi e stringhe). Relazione = insieme di istanze di un’entità Tupla = istanza di un’entità Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Esempio di relazione Relazione Compositori Attributo Tupla cognome data nascita data morte Bach Johann Sebastian 31/3/1685 28/7/1750 Beethoven Ludwig van 16/12/1770 26/03/1827 Mozart Wolfgang Amadeus 27/1/1756 5/12/1791 … Tupla Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
I principali DBMS relazionali Microsoft Access Integrato nel pacchetto Office, di immediato utilizzo Nessuna profilazione utente, supportato solo sotto Windows, mancano funzionalità quali i trigger, codice chiuso Oracle Molto ricco di funzionalità, stabile, affidabile, ottimizzato, licenza non commerciale gratuita Molto complesso, licenza commerciale costosa (Enterprise Edition: 47500$ a processore), assistenza costosa, codice chiuso MySQL e Postgres Software con licenza libera, stabili, affidabili, molto supportati da strumenti di editing e linguaggi di programmazione Rispetto ad Oracle, alcune limitazioni (dimensioni BLOB, viste materializzate, …) Per un confronto dettagliato: https://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Schema vs. Istanza Indipendentemente dal modello dei dati prescelto, in un DBMS distinguiamo: Schema della base di dati: descrizione dei dati, specificata tramite il modello dei dati (cambia raramente, descrizione intensionale) Istanza della base di dati: insieme dei dati presenti in un dato momento in una base di dati (cambia molto spesso nel tempo, descrizione estensionale) In una base di dati relazionale: schema della base di dati = insieme degli schemi delle relazioni in esso presenti schema di relazione: nome della relazione + nome e dominio per ogni attributo (ricordiamo che la relazione sussume il concetto tanto di entità quanto di attributo) Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Progettazione di basi di dati
Progettare una base di dati La progettazione di una base di dati è uno dei compiti maggiormente strategici e delicati del progetto di un sistema informativo. Progettare una base di dati significa definirne il contenuto e la struttura Poiché le basi di dati sono sempre più complesse e di dimensioni elevate è necessario un approccio sistematico alla progettazione, suddividendo l’attività in diverse fasi. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Progettare una base di dati Il primo passo nello sviluppo di una base di dati è la definizione dello schema della base di dati. Successivamente vengono immessi i dati veri e propri che devono conformarsi alla definizione data dallo schema. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Fasi della progettazione
Livelli nella rappresentazione dei dati Livello fisico - E’ il livello di astrazione più basso, in cui viene definito lo schema fisico della base di dati, precisando come i dati sono effettivamente memorizzati tramite strutture di memorizzazione (file, record, ecc.) Livello logico - E’ il livello intermedio, in cui viene descritto lo schema logico tramite le strutture del modello dei dati, ossia: quali sono i dati memorizzati nella base di dati eventuali associazioni tra di essi vincoli di integrità semantica e di autorizzazione Livello esterno o livello delle viste - E’ il livello di astrazione più alto: descrive una porzione dell’intero schema della base di dati (vista); possono essere definite più viste di una stessa base di dati. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Livelli nella rappresentazione dei dati Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Esempio Livello fisico Livello logico Livello delle viste File partiture File locandine … Livello fisico Livello logico Livello delle viste Partiture Locandine Vista balletti Vista opere Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Perché questa rappresentazione a 3 livelli? Perché assicura alcune importanti proprietà ai dati, che facilitano l’accesso ai dati e lo sviluppo di applicazioni: indipendenza fisica - utenti ed applicazioni che accedono alla rappresentazione logica dei dati sono indipendenti da qualsiasi modifica a livello di rappresentazione fisica dei dati in quanto modifiche a tale livello non influenzano la rappresentazione dei dati al livello logico; indipendenza logica - la presenza delle viste permette di nascondere (entro certi limiti) modifiche alla rappresentazione dei dati al livello logico alle applicazioni/utenti che vedono la rappresentazione esterna (tramite vista) dei dati. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Il modello Entità-Relazione Il modello Entità‐Relazione è uno dei modelli più utilizzati nell'ambito della progettazione concettuale Ha una tipica rappresentazione grafica, detta diagramma (o schema) ER. Costrutti di base: Entità Associazioni (o relazioni, da non confondere con le relazioni del modello relazionale Attributi Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Entità, associazione e grado di associazione Compositore Entità Associazione binaria (di grado 2) Compositore scrive Opera Ruolo maestro Compositore allievo di Associazione unaria (di grado 1) allievo Ruolo: funzione che un'istanza di entità esercita nell'ambito di un'associazione. Sempre necessario per le associazoni unarie Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Associazioni n-arie (di grado > 2) Associazione ternaria (di grado 3) Compositore realizzano Committente Opera Ove possibile, è meglio evitare associazioni n-arie. Ad esempio: Persona collabora a Opera Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Attributi Persona Opera Gli attributi sono proprietà possedute da un'entità o da un'associazione. Possono essere mono-valore (es.: data nascita) o multi-valore (es.: telefono) Possono essere composti (es.: indirizzo = via, civico, …) Hanno un dominio di appartenenza (stringa, numero, booleano, …) nome cognome data di nascita Compositore Persona collabora a Opera ruolo data Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Vincoli di cardinalità Il modello ER fornisce costrutti per definire dei vincoli di cardinalità, che coinvolgono associazioni e attributi. Cardinalità minima: numero minimo di istanze di un’associazione a cui le istanze delle entità coinvolte nell’associazione possono partecipare Cardinalità massima: numero massimo… Graficamente, data un’entita E ed un’associazione A, la cardinalità minima e massima di E rispetto ad A si indica tramite la coppia (c_min,c_max) sulla linea che congiunge E ad A Sulla base delle cardinalità, si riconoscono 3 tipi di associazione: 1 a 1, 1 a molti, molti a molti. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Esempi di vincoli di cardinalità Associazione 1 a 1 (1,1) (0,1) Teatro ha Indirizzo Associazione 1 a molti (0,n) (1,1) Compositore scrive Opera Associazione molti a molti (1,n) (1,m) Librettista scrive Opera Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Vincoli di identificazione Identificatori per un’entità: insieme di attributi che identificano univocamente le istanze dell'entità. Un identificatore è minimale se qualsiasi sottoinsieme proprio non è un identificatore. Esiste sempre? Sì, nell’ipotesi peggiore è l’intera tupla. Esempio: per un’entità Persona, l’attributo cognome non è un identificatore, la coppia di attributi codice fiscale + cognome è un identificatore non minimale, il solo codice fiscale è un identificatore minimale. Nell'insieme di istanze di un'associazione si hanno tutte tuple distinte, quindi non c'è bisogno di identificatori: non esistono identificatori per le associazioni. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Tipologie di identificatori Identificatori semplici: un solo elemento Identificatori composti: più elementi Identificatori interni: uno o più attributi dell'entità Identificatori esterni: uno o più entità collegate da una associazione all'entità a cui si riferiscono Identificatori misti: combinazioni delle due tipologie precedenti nome cognome codice fiscale Compositore titolo data di composizione luogo della prima rappresentazione Opera Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Analisi di uno schema concettuale Schema logico del database del Teatro Alla Scala Tratto da: Haus, G., Ludovico, L.A.: The Digital Opera House: An Architecture for Multimedia Databases. Journal of Cultural Heritage, vol. 7(2), pp. 92–97. Elsevier B.V. (2006). Rapporto tra versione base, allestimento e serata Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Gerarchia di generalizzazione
Interoperabilità tra archivi musicali
Definizione Interoperabilità = capacità di un sistema di cooperare e scambiare informazioni o servizi con altri sistemi, con affidabilità e con ottimizzazione delle risorse. Obiettivo: favorire l'interazione fra sistemi differenti, l’interazione, lo scambio e il riutilizzo delle informazioni fra sistemi informativi non omogenei mediante procedure unificanti. Esistono protocolli per lo scambio di: metadati - Dublin Core (troppo generale per la descrizione di risorse specifiche in modo adeguato), protocolli XML avanzati dati – Unimarc, MAG. E’ fondamentale la scelta di formati standard per la codifica dell’informazione; se richiesto, anche web-oriented. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Dublin Core Nucleo di 15 elementi base, così definito nel 1996: Titolo (Title) Autore (Creator) Soggetto (Subject) Descrizione (Description) Editore (Publisher) Autore di contributo subordinato (Contributor) Data (Date) Tipo (Type) Formato (Format) Identificatore (Identifier) Fonte (Source) Lingua (Language) Relazione (Relation) Copertura (Coverage) Gestione dei diritti (Rights Management) Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Il modello OAIS (Open Archival Information System) E’ il modello logico di riferimento per i sistemi di conservazione digitale. Non fa riferimento ad un’architettura specifica, si limita a definire le funzionalità richieste. Definisce chiaramente: il ruolo degli attori esterni, i Produttori e la Comunità Designata, cioè l’insieme di soggetti che sono interessati e destinatari del processo di conservazione; le relazioni di tali attori con il sistema di conservazione; la struttura degli oggetti da scambiare con il mondo esterno e da conservare, i cosiddetti packages Concetto fondamentale: ogni oggetto digitale, per avere un significato, deve contenere al suo interno due componenti: il Data Object (una sequenza di bit che di per sé non significa nulla) e la Representation Information (la chiave di lettura che ne consente l’interpretazione). Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Il modello OAIS (Open Archival Information System) E’ il modello logico di riferimento per i sistemi di conservazione digitale. Non fa riferimento ad un’architettura specifica, si limita a definire le funzionalità richieste. Definisce chiaramente: il ruolo degli attori esterni, i Produttori e la Comunità Designata, cioè l’insieme di soggetti che sono interessati e destinatari del processo di conservazione; le relazioni di tali attori con il sistema di conservazione; la struttura degli oggetti da scambiare con il mondo esterno e da conservare, i cosiddetti packages Concetto fondamentale: ogni oggetto digitale, per avere un significato, deve contenere al suo interno due componenti: il Data Object (una sequenza di bit che di per sé non significa nulla) e la Representation Information (la chiave di lettura che ne consente l’interpretazione). Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Il protocollo OAI-PMH OAI-PMH (Open Archives Initiative Protocol for Metadata Harvesting o Protocollo per il raccoglimento dei metadati dell'Open Archive Initiative) è un protocollo sviluppato dall'Open Archives Initiative come infrastruttura di comunicazione per l'Open access. È utilizzato per raccogliere (o collezionare) i metadati dei documenti in un archivio affinché i servizi possano essere costruiti utilizzando metadati da più archivi. Un’implementazione dell'OAI-PMH deve supportare i metadati rappresentati in Dublin Core, ma può supportare altre rappresentazioni. Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Un caso di studio: la Rete della Musica Italiana (Archivi della Musica) Architettura peer-to-peer Architettura client-server
Rete della Musica Italiana e Internet Culturale
Esempi di Archivi musicali progettati e realizzati dal LIM
LaScalaDAM (Teatro alla Scala)
LaScalaDAM (Teatro alla Scala)
LaScalaDAM (Teatro alla Scala)
LaScalaDAM (Teatro alla Scala)
LaScalaDAM (Teatro alla Scala)
LaScalaDAM (Teatro alla Scala)
Live demo: Studio di Fonologia RAI Data di rilascio: 2008 Link: http://fonologia.lim.di.unimi.it/
Live demo: Archivio Storico Ricordi Data di rilascio: 2008 Link: http://ricordi.lim.di.unimi.it/ lim q'lPdPG
Controesempi Portali con navigazione ad albero gerarchico: Possibilità di navigazione assai limitate Associazioni basate su metadati testuali Soluzioni poco user-friendly per un’utenza non specialistica SBN musica http://opac.sbn.it/opacsbn/opac/iccu/musica.jsp Biblioteca musicale BEIC http://www.beic.it/it/articoli/biblioteca-musicale Internet Culturale, collezioni musicali http://www.internetculturale.it/opencms/opencms/it/main/esplora/arti/musica/ Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Sitografia Archivio storico del Teatro alla Scala http://www.teatroallascala.org/archivio/ Archivio storico Ricordi (richiede autenticazione) http://ricordi.lim.di.unimi.it/ Biblioteca musicale BEIC http://www.beic.it/it/articoli/biblioteca-musicale Internet culturale, sezione musica http://www.internetculturale.it/opencms/opencms/it/main/esplora/arti/musica/ SBN musica http://opac.sbn.it/opacsbn/opac/iccu/musica.jsp Studio di Fonologia RAI http://fonologia.lim.di.unimi.it/ Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico
Ringraziamenti Questa dispensa, realizzata da Luca A. Ludovico per il corso dottorale di «Tecnologie informatiche per la codifica dell’informazione musicale» (Corso di dottorato in Scienze del patrimonio letterario, artistico e ambientale), prende spunto dai seguenti materiali: dispense dell’insegnamento di Basi di Dati del Prof. Paolo Perlasca, Dipartimento di Informatica, Università degli Studi di Milano dispense dell’insegnamento di Organizzazione e Digitalizzazione di Teche Multimediali del Prof. Goffredo Haus, Dipartimento di Informatica, Università degli Studi di Milano presentazione «Music in the Italian Digital Library» di Luciano Scala Tecnologie informatiche per la codifica dell’informazione musicale Luca A. Ludovico