Codifica elettronica dei testi letterari ed e-book:
la marcatura XML TEI ed il trattamento informatico del romanzo Baltico di Matteo Collura
vedi: appendice 8, appendice 9, appendice 10, appendice 11, appendice 12, appendice 13.
Sino ad ora nella trattazione si è discusso della produzione di output (dai dati XML/TEI), destinati ad essere fruiti esclusivamente per mezzo dell'ausilio di un browser web; passiamo adesso a parlare degli output realizzati nei formati e-book, "propriamente detti", per l'edizione digitale del romanzo di Collura, l'OEBPS/LIT ed il PDF.
Intraprendiamo la nostra disamina da quello che, a nostro modesto giudizio, è il formato che, al momento, garantisce una delle esperienze di lettura più gradevoli su di un dispositivo informatico, il Microsoft LIT.
Come sappiamo gli e-book LIT vengono prodotti a partire da un pacchetto OEBPS, lo standard aperto per gli e-book elaborato dall'Open e-Book Forum col fine di favorire lo sviluppo e la diffusione dell'editoria elettronica, pertanto il nostro lavoro è partito dalla creazione di una pubblicazione (pacchetto) conforme agli standard OEBPS che poi abbiamo provveduto a compilare, mediante opportuni strumenti, nel formato Microsoft LIT. In realtà, il pacchetto OEBPS è già di per sé una pubblicazione fruibile autonomamente grazie ad alcuni, pochi per la verità, speciali reader software[204]. Va tuttavia detto che al momento attuale dello sviluppo questi strumenti non denotano una buona efficacia[205] ed una ergonomia paragonabile a quella del lettore Microsoft; inoltre, in taluni casi si sono rivelati poco stabili ovvero il sito che avrebbe dovuto ospitare i file per il download non è stato raggiungibile per lunghi periodi di tempo, per questo motivo abbiamo deciso di non tenerli in considerazione nel nostro lavoro e di puntare principalmente su una delle versioni compilate ottenute a partire da OEBPS[206], appunto il formato LIT di Microsoft.
Come di consueto si è adoperata la tecnologia XSLT per la manipolazione e la trasformazione dei dati XML/TEI in un pacchetto OEBPS, in appendice è riportato il codice dei fogli di stile utilizzati.
Abbiamo già parlato per linee generali delle caratteristiche dello standard OEBPS nella seconda parte di questa relazione, ci accingiamo adesso ad illustrare nello specifico come si sia proceduto per produrre una versione LIT di Baltico a partire dal testo da noi codificato secondo la sintassi XML/TEI.
Come sappiamo un pacchetto OEBPS è costituito da un gruppo di file (pagine HTML, fogli di stile CSS, immagini), collegati fra di loro ed organizzati per mezzo di un file XML detto package file e caratterizzato dall'estensione ".opf". Di conseguenza la nostra prima attività è stata la creazione di un foglio XSLT per la produzione del package file; di questo si occupa il primo foglio di stile (Lit - opf.xsl) il cui codice è riportato in appendice. Come possiamo vedere l'intero documento opera su di un solo template, quello del nodo radice, e poi mediante riferimenti assoluti XPath estrae dati da altri elementi, principalmente dal TEI Header, e li inserisce nel nuovo file XML (.opf). Compito di questo foglio è quello di creare un file XML (il package file ".opf"). All'inizio del documento è indicata la dichiarazione di doctype del file di output (+//ISBN 0-9673008-1-9//DTD OEB 1.2 Document//EN) e la DTD di riferimento che come vediamo è quella dei documenti conformi alla versione 1.2 delle specifiche OEBPS (http://openebook.org/dtds/oeb-1.2/oebdoc12.dtd).
Nella prima sezione del documento .opf, il Package Identity (<package>), l'identificatore univoco della pubblicazione è stato ottenuto combinando il nome dell'autore con il titolo dell'opera codificata, informazioni prelevate appunto dal TEI Header; per esigenze di compatibilità mediante la funzione translate() sono stati rimossi gli spazi tra le parole e sostituiti con degli underscore (_).
L'elemento <metadata> del package file ospita, invece tutte le informazioni relative alla pubblicazione OEBPS, come forse il lettore ricorderà, per la definizione dei metadata la specifica OEBPS fa ricorso ad un sottoinsieme del Dublin Core metadata element set, nel file XML gli elementi in questione sono identificati dal prefisso di namespace "dc". Anche in questa occasione nella maggior parte dei casi le informazioni sono prelevate semplicemente dalla testata del documento TEI sorgente, soltanto in poche circostanze si è intervenuti manualmente, ovvero in tutti quei casi in cui non vi sia una buona corrispondenza fra metadata TEI e metadata Dublin Core/OEBPS, come ad esempio nel caso dei tag <dc:Description> oppure <dc:Subject> di cui mancano dei corrispettivi nello schema TEI. La funzione di XSLT si esaurisce con l'elemento <metadata> del package file, gli altri elementi infatti servono a combinare ed organizzare i file costituenti il pacchetto OEBPS, non vi è quindi necessità di operare sul sorgente XML.
Il foglio appena illustrato può essere adottato con qualsiasi file conforme alla TEI-Lite per produrre documenti .opf (destinati alla compilazione LIT); l'unica accortezza, che dovrà avere l'eventuale utente, sarà quella di rispettare i nomi dei file del pacchetto definiti nel foglio[207] oppure di modificare nel codice XSLT i nomi dei file.
Una volta realizzato il package file il secondo passo è stato la creazione del file con i contenuti testuali veri e propri, di ciò si occupa il nostro secondo foglio XSLT (Lit - contenuto.xsl). Sostanzialmente il codice di questo foglio ripropone solo con pochi necessari aggiustamenti il codice per la trasformazione HTML di Baltico già visto precedentemente; il dizionario di markup dei documenti testuali OEBPS è costituito da un sottoinsieme dello standard XHTML 1.1, nella sostanza il foglio di stile che stiamo illustrando provvede appunto a creare un file XHTML conforme agli standard OEBPS.
Il terzo XSLT da noi realizzato (Lit - TOC.xsl) serve a produrre la TOC (Table of Contents) ossia l'indice del documento, la tecnica adottata per la creazione di collegamenti ed ancore, in questo come nel precedente foglio di stile, riprende interamente il sistema già visto in occasione del foglio di stile per l'output HTML, non appare quindi necessario spiegarlo nuovamente, l'unica differenza è nel foglio TOC dove l'indice è creato mediante espressioni <xsl:for-each> invece che semplici template. L'ultimo file XHTML che normalmente compone un pacchetto OEBPS è la dichiarazione di copyright dell'opera; in questo caso abbiamo preferito procedere creando manualmente il file con le informazioni sul copyright, in quanto in genere vengono in esso riportate sempre i medesimi dati e poiché alcune delle notizie sui diritti che abbiamo deciso di inserire, come ad esempio le informazioni sulla copertina, non sono presenti nel documento TEI.
Una volta realizzati i file grafici per le copertine[208] della pubblicazione, il nostro pacchetto OEBPS poteva dirsi pronto; tuttavia, come detto, sin da principio si è previsto che questi venisse fruito non mediante i reader di documenti OEBPS attualmente a disposizione, bensì fosse destinato ad essere trasformato in formato LIT in modo tale da consentirne la visualizzazione grazie al Microsoft Reader. Per la compilazione del nostro pacchetto OEBPS in formato LIT ci siamo giovati di un'applicazione open source[209] gratuita di nome Bulk Lit[210] prodotta dalla Ficsprout[211]. Di seguito riportiamo alcune schermate, che mostrano come venga visualizzata la versione LIT del romanzo di Collura da noi realizzata nel Microsoft Reader: la prima immagine mostra la Biblioteca, ossia l'area del software che funge, per così dire, da Home Page dell'e-book reader e contiene un elenco degli e-book disponibili; dalla Biblioteca è possibile aprire, organizzare ed eliminare e-book, Baltico è il primo della lista ed è identificato da una miniatura dell'immagine di copertina e dal titolo del libro elettronico, nel nostro caso: "Baltico. Un'epopea siciliana: edizione elettronica".
La seconda schermata riproduce l'immagine di copertina da noi realizzata per l'occasione rielaborando la copertina originale dell'edizione cartacea. Infine l'ultima immagine mostra la prima pagina del libro così come è visualizzata nel reader.
L'area Biblioteca del Microsoft Reader
La nuova copertina per l'edizione LIT del romanzo.
La prima pagina del romanzo.
Il file LIT da noi prodotto si presta ad essere visualizzato su computer e Tablet PC con sistema operativo Microsoft, oltre che su palmari con sistema operativo Pocket PC.
In origine, durante le prime fasi di elaborazione del nostro progetto di codifica e distribuzione di testi digitali nell'ottica di una eventuale creazione di un archivio elettronico/biblioteca digitale, avevamo preso in considerazione il formato Microsoft LIT oltre che per le sue buone caratteristiche di ergonomia nella visualizzazione su schermo dei testi (layout dinamico, Clear Type), anche per le sue doti nella protezione dei testi. Sebbene con strumenti freeware come quelli da noi utilizzati fosse possibile creare documenti soltanto al più basso livello di protezione "Sealed"[212], l'opportunità di distribuire un testo senza possibilità alcuna di essere modificato ci appariva più che sufficiente per le nostre esigenze di distribuzione per fini accademici e non di sfruttamento economico dei testi. Tuttavia, ormai da alcuni mesi ha visto la luce un piccolo software[213] che permette di bypassare completamente le protezioni del formato Microsoft, l'applicazione in questione provvede a decompilare il file LIT fornendo l'insieme di file, il pacchetto OEBPS originale, da cui è stato prodotto. È da notare che questo programma funziona indifferentemente con tutti i tipi di file LIT, indipendentemente dal tipo di protezione, e quindi anche con gli e-book Inscribed e Owner Exclusive. Quanto appena detto dimostra come sia ancora lungo il cammino da percorre nel campo della protezione dei contenuti digitali.