Codifica elettronica dei testi letterari ed e-book:
la marcatura XML TEI ed il trattamento informatico del romanzo Baltico di Matteo Collura

I.4. I LINGUAGGI DI CODIFICA

La codifica dei caratteri, come sopra detto, rappresenta il livello più basso della codifica informatica di un testo[14]. Tuttavia a livelli rappresentazionali più accurati è possibile prendere in considerazione elementi relativi sia all'aspetto formale del testo, focalizzando l'attenzione sulle caratteristiche grafiche dello stesso quali l'allineamento, il tipo di carattere, l'interlinea e via di seguito tutti quei particolari tipici della rappresentazione tipografica di un testo; sia, d'altra parte, considerando il testo da un punto di vista più astratto, tener presente le strutture funzionali, la segmentazione logica, le partizioni interne del testo.

Per aggiungere al flusso dei caratteri costituenti il testo tutte le ulteriori informazioni relative a caratteristiche tipografiche o strutturali si ricorre a dei linguaggi di marcatura del testo, i cosiddetti markup language[15].

Grazie ad un linguaggio di markup vengono inserite insieme alla successione ordinata dei caratteri una serie di istruzioni, dette tag, ovvero delle etichette che definiscono determinate caratteristiche per la parola o il blocco di testo cui fanno riferimento.

Riporto un frammento di codice HTML, il linguaggio di marcatura per la creazione delle pagine web, per spiegare con un esempio pratico quanto detto:

<div align="center"><strong>questo e del testo in grassetto allineato al centro</strong></div>

intuitivamente tutti i comandi HTML (tag) sono facilmente riconoscibili: sono racchiusi tra i segni di minore e maggiore (< e >) e presentano un comando di apertura (ad esempio <div align="center">) ed uno di chiusura identificato dalla presenza dello slash / (ad esempio </div>), il testo contenuto fra i tag di apertura e chiusura è quello cui si applicano le istruzioni definite dal tag.

I.4.1. I programmi di text processing WYSIWYG

Un caso particolare di marcatura del testo è quella realizzata dai cosiddetti programmi di text processing WYSIWYG (acronimo inglese che sta per What You See Is What You Get, cioè "quello che vedi è quello che ottieni"), si tratta di programmi, primi fra tutti i word processor quali il celebre Microsoft Word, utilizzati per la stesura ed elaborazione di documenti a prevalente contenuto di testo nel quale le caratteristiche grafiche del documento appaiono sullo schermo così come saranno sulla pagina stampata.

Nel caso dei word processor la marcatura è invisibile all'utente, il quale si limita ad interagire con l'interfaccia del programma per definire le varie caratteristiche del testo; le etichette di marcatura vengono automaticamente inserite dal programma in relazione alle scelte dell'utilizzatore, in un formato spesso non intellegibile dall'utente, ma solo dal programma stesso; si suole per questo parlare di formati proprietari o chiusi, in quanto, un documento in un formato proprietario può esser visualizzato solo dalla stesso tipo di applicazione in cui è stato creato oppure da un apposito visualizzatore (quando disponibile). Come si potrà comprendere questo comporta grossi problemi per quanto riguarda la distribuzione del documento che potrà esser aperto solo su determinati sistemi e solo con specifici programmi.

I formati proprietari o chiusi vengo anche detti formati binari, per distinguerli dai cosiddetti formati aperti, in cui sia il contenuto testuale sia le informazioni di codifica sono memorizzate sotto forma di testo.[16]

I.4.2. Codifiche procedurali e codifiche dichiarative

Convenzionalmente si distinguono due tipologie di linguaggi di markup: i linguaggi procedurali e quelli dichiarativi.

I linguaggi procedurali, conosciuti anche come specific markup language, sono costituiti da istruzioni operative che, analogamente ai programmi, eseguono delle procedure computazionali sulle porzioni di testo cui fanno riferimento.

I linguaggi dichiarativi, detti anche generic markup language, invece, non attivano con i loro tag una procedura informatica, ma piuttosto specificano, dichiarano, la funzione astratta assolta dal blocco di testo cui si riferiscono.

I.4.3. Linguaggi di codifica procedurali

I linguaggi procedurali vengono abitualmente usati per codifiche di tipo presentazionale, finalizzate alla definizione precisa della resa grafica del documento.

Uno dei più comuni linguaggi di codifica procedurali è l'RTF (Rich text format, "formato di testo ricco"), realizzato dalla Microsoft, che ne è proprietaria, al fine di agevolare lo scambio di documenti fra diverse applicazioni.

L'RTF è un tipo di codifica del testo "tagged", in cui il documento viene codificato come puro testo, e degli "identificatori" (tag) indicano quale tipo di strutture di formattazione (allineamento, impaginazione, tipo di carattere) applicare al semplice testo.

Per mezzo della marcatura il testo del documento RTF (definito sfruttando soltanto set di caratteri molto semplici e diffusi, tipo l'ASCII) viene arricchito di nuove informazioni riguardanti la formattazione, di cui i formati di puro testo sono privi: da ciò la spiegazione del nome di "formato di testo ricco".

I tag RTF sono in genere definiti dal carattere \ (back slash) seguito da alcune lettere che specificano il tag e da uno o più numeri nel caso il tag richieda un parametro numerico (ad esempio i tag che specificano la dimensione del carattere richiedono che la dimensione sia indicata in numeri); il tag deve essere separato dal testo a cui si applica da uno spazio, questo spazio però non apparirà nel testo stampato, il tag ed il testo a cui questo deve essere applicato sono racchiusi tra parentesi graffe { }.[17]

Un esempio di testo marcato con tag rtf è:

{\b Questo testo è in grassetto, {\i e questo è anche in corsivo.}}

Sebbene teoricamente possibile, i tag RTF non sono stati pensati perché il file possa essere letto o codificato da un operatore umano, bensì da un programma; nato come formato per lo scambio di documenti, oggi tutti i word processor più diffusi hanno la possibilità di importare e di esportare dei file in RTF.

Tra gli altri linguaggi di codifica procedurale si ricordano lo Script, il TROFF, il TEX.

Particolarmente efficaci nel definire la resa grafica di un testo, i linguaggi di codifica procedurale, palesano un grave limite allorché si sposti la nostra analisi sul messaggio di cui il testo è veicolo. In una codifica procedurale informazioni indispensabili sulla natura funzionale dei blocchi testuali quali, ad esempio, le divisioni in sezioni o capitoli, la presenza di discorso diretto, citazioni etc. non sono rappresentate.

I.4.4. Linguaggi di codifica dichiarativi

Un approccio completamente diverso rispetto alle codifiche procedurali è quello dei cosiddetti linguaggi dichiarativi.

Mentre i linguaggi di codifica procedurale dicono al computer come fare qualcosa, ossia come rendere graficamente un testo, i linguaggi di markup generico dicono al computer cosa è qualcosa, identificano la funzione strutturale dei blocchi testuali.

Allo stesso modo della codifica procedurale anche nella codifica dichiarativa si ricorre a tag per la marcatura del testo.

Pure le istruzioni (tag) dei generic markup language sono delle etichette, dei marcatori inseriti nel flusso del testo, costituiti da sequenze di caratteri delimitati da segni (caratteri) speciali (<...>) che hanno la funzione di permettere al computer di distinguere i tag dal testo.

Ecco un esempio di testo codificato con un linguaggio di codifica dichiarativo:

<capitolo n="1" id="I.1">
<titolo tipo="convenzionale">I</titolo>
<titolo tipo="tematico">L'ubriaco che sapeva auscultare la terra</titolo>
<paragrafo> Dalle parti di <nome tipo="luogo.reale">Montedoro</nome> dicono che fu un pastore, per caso.[...] </paragrafo>
[...]
</capitolo>

Un linguaggio basato su di una codifica di tipo procedurale si concentra sull'aspetto del documento, invece un linguaggio di codifica dichiarativa, rappresentando la struttura astratta del testo, si concentra sul messaggio.

Questo comporta degli indubbi vantaggi per quanto riguarda il trattamento informatico dei testi; ad esempio, un'applicazione per l'estrazione delle informazioni (information retrival) ci potrebbe permettere di sapere se e quante volte determinate parole compaiono dentro un titolo, oppure pronunciate da un personaggio specificato.

Inoltre il markup generico presenta vantaggi anche per quanto riguarda la rappresentazione grafica dei testi, infatti grazie all'uso di strumenti noti come fogli di stile, è possibile associare, sul modello dello specific markup, delle istruzioni di resa grafica ai tag. Tutto questo si rivela particolarmente vantaggioso in virtù del fatto che si ha così la possibilità di ottenere numerosi output con caratteristiche tipografiche e di impaginazione anche molto varie tra di loro, che possono così soddisfare esigenze diverse, il tutto partendo da uno stesso documento sorgente.

Sono molteplici le possibilità che i linguaggi di marcatura offrono agli umanisti: "Se il linguaggio scelto è abbastanza potente, è possibile rappresentare il testo (i suoi elementi e i rapporti che intercorrono tra loro) a vari livelli. Si possono costruire vari modelli del testo: accanto alla struttura editoriale possiamo immaginare di codificare la sua struttura grammaticale (per esempio i tempi verbali), la struttura retorica (le figure, ma anche la distribuzione del discorso diretto e indiretto), i luoghi; e poi è solo questione di voglia e fantasia."[18]

I.4.5. SGML

Il padre dei moderni linguaggi di codifica dichiarativi è l'SGML Standard Generalized Markup Language.

Le origini dell'SGML risalgono alla fine degli anni sessanta. All'epoca il markup utilizzato nei documenti era di tipo procedurale, ciò comportava numerosi problemi all'interscambio di documenti tra macchine ed applicazioni diverse, in particolare i sistemi di tipocomposizione[19], macchine molto costose, utilizzavano ognuno il proprio metodo proprietario per descrivere l'impostazione tipografica di un documento. Di conseguenza, l'impostazione di un testo creato in un sistema non poteva esser trasferita in un altro. Ciò rendeva assai difficoltoso e costoso l'interscambio di documenti ed il riutilizzo di parte degli stessi.[20] Per queste ragioni si cominciò a pensare ad un nuovo tipo di linguaggio in cui le istruzioni sulla rappresentazione fossero mantenute separate dal contenuto del documento, che invece sarebbe stato marcato per mezzo di etichette che indicavano la struttura astratta delle varie parti del documento.

Una prima elaborazione di un markup di tipo generico si ebbe alla fine degli anni sessanta presso i laboratori della GCA Graphic Communications Association dove fu definito il "GenCode concept", che stabiliva che codici generici differenti erano necessari per documenti di tipo diverso. Inoltre sottolineava che i documenti più piccoli potevano essere incorporati come elementi di documenti più grandi. Si gettavano così le basi teoriche dei moderni linguaggi dichiarativi.

Il progetto si trasformò successivamente nel comitato GenCode che rivestì un ruolo strumentale nello sviluppo dello standard SGML.

All'incirca nello stesso periodo in cui la GCA elaborava GenCode, nasceva GML Generalized Markup Language, si trattava di un linguaggio realizzato nell'ambito di un progetto di ricerca della IBM sui sistemi integrati per la gestione dei documenti legali. A capo del progetto c'era l'ingegnere Charles Goldfarb , il quale insieme ai propri collaboratori Edward Mosher e Raymond Lorie, diede vita ad un sistema per consentire ai programmi di modifica di testi, di formattazione e di information retrieval la condivisione degli stessi documenti. Con GML veniva introdotto il concetto di un tipo di documento formalmente definito con una struttura annidata esplicita. GML era implementato su mainframe dell'IBM che lo adottò come standard di codifica per i propri documenti. Al completamento di GML Goldfarb continuò la sua ricerca sulle strutture nei documenti, creando nuovi concetti che non facevano parte di GML ma che successivamente furono introdotti in SGML.

Nel 1978 l'American National Standards Institute (ANSI) istituì un comitato per la definizione di uno standard per la trasmissione e l'archiviazione di documenti. La direzione del comitato fu affidata a Goldfarb. Questo comitato fu supportato anche dal comitato GenCode e partendo da GML fu avviata la standardizzazione di un linguaggio per la descrizione di documenti che divenne SGML. La prima versione delle specifiche dello standard fu pubblicata nel 1980. Negli anni seguenti lo sviluppo, sempre sotto la direzione di Goldfarb, fu proseguito in seno all'ISO.

Nel 1986 SGML divenne uno standard ISO col nome di "ISO 8879: 1986 Infor­mation processing - Text and Office systems - Standard Generalized Markup Language (SGML)".[21]

Fu chiamato "Linguaggio di Marcatura Generalizzato standard", in quanto si trattava del primo sistema di codifica dichiarativa altamente astratto e generalizzato.

SGML è stato progettato con l'intento di favorire lo scambio di documenti fra diverse piattaforme informatiche, per tal motivo indipendentemente dall'hardware o dal sistema operativo utilizzato, è in grado di funzionare sui più vari dispositivi.

SGML è stato per così dire il capostipite dei linguaggi di marcatura in cui i tag sono sempre delimitati dalle cosiddette parentesi angolari, ossia tra '<' e '>', e sono caratterizzati da un nome (come ad esempio capitolo, titolo, ...) ed eventualmente accompagnati da attributi espressi come tante coppie NomeAttributo="valore".

SGML non definisce direttamente i tag per la marcatura della struttura logica del testo, infatti più che di un vero e proprio linguaggio, si tratta di un metalinguaggio, esso infatti fornisce una serie di norme sintattiche astratte con cui definire le regole da applicare nella marcatura di un determinato tipo di documenti. SGML è una sorta di supergrammatica con cui definire la grammatica. SGML è un linguaggio per creare altri linguaggi, ognuno di questi linguaggi costituisce un'applicazione SGML, una delle più note è HTML (Hypertext markup language) il linguaggio con cui si costruiscono le pagine Web.

Uno dei concetti teorici su cui si basa l'impostazione di tutto il linguaggio è quello di tipo di documento. Il tipo di documento descrive le caratteristiche di una classe di documenti strutturalmente omogenei, identificandone la struttura, gli elementi che compongono la struttura, le relazioni di dipendenza tra gli elementi, le relazioni di ricorrenza degli elementi. Visivamente un tipo di documento può essere rappresentato graficamente con un grafico ad albero che rappresenta la struttura del documento.

Ad esempio il codice mostrato sopra può esser così rappresentato:

grafico della struttura ad albero di un documento SGML

La DTD (Document Type Definition) è lo strumento con cui si definisce il tipo di documento e, in sostanza, si crea un'applicazione SGML.

"Una DTD... mette a disposizione un modello per la marcatura di documenti che indica la presenza, l'ordine e la posizione degli elementi e dei loro attributi in un documento."[22]

Più precisamente nella DTD sono elencati e definiti tutti gli oggetti necessari all'elaborazione di un determinato tipo di documento:

Riportiamo a titolo di esempio una ipotetica DTD per il codice riportato precedentemente

<!ELEMENT capitolo
(titolo+, paragrafo+) >
<!ATTLIST capitolo
n CDATA #IMPLIED
id ID #REQUIRED>


<!ELEMENT titolo
(#PCDATA) >
<!ATTLIST titolo
tipo (convenzionale|tematico|indefinito) "indefinito">


<!ELEMENT paragrafo
(#PCDATA|nome)* >


<!ELEMENT nome
(#PCDATA) >
<!ATTLIST nome
tipo CDATA #IMPLIED>

Come si può vedere abbiamo una serie di dichiarazioni denominate markup declaration.

Ogni dichiarazione è aperta dal simbolo di minore e dal punto esclamativo (<!) cui segue una parola chiave che identifica il tipo di dichiarazione: ELEMENT per gli elementi, ATTLIST per gli attributi. Di seguito troviamo l'identificatore dell'elemento, in pratica il nome del tag. In fine racchiuso tra parentesi tonde si trova il modello di contenuto dell'elemento, costituito dall'elenco degli elementi figli che possono esser contenuti dall'elemento padre.

Gli elementi figli nel modello di contenuto possono essere separati da una virgola oppure da una barra (|), nel primo caso questo significa che gli elementi si devono necessariamente presentare nell'ordine definito dalla dichiarazione di markup, ad esempio nel nostro caso l'elemento paragrafo deve sempre seguire l'elemento titolo.

La barra invece indica che gli elementi possono presentarsi in qualsiasi ordine, per esempio l'elemento paragrafo può contenere caratteri[23] ed elementi nome in qualsiasi ordine.

Nelle dichiarazioni di elemento notiamo la presenza di simboli quali + oppure *, si tratta degli indicatori di ricorrenza, i quali specificano quante volte un elemento può esser presente dentro un altro. Il più '+' indica che un elemento ricorre una o più volte, l'asterisco '*' che l'elemento ricorre zero o più volte, il punto interrogativo '?' che l'elemento ricorre una volta o non ricorre affatto. Nel nostro esempio l'elemento capitolo deve contenere almeno un elemento titolo ed uno paragrafo, ma può averne anche altri, mentre l'elemento paragrafo può contenere un qualsiasi numero di elementi PCDATA e nome, ma può anche non contenere nessun elemento.

Leggermente diversa è la dichiarazione degli attributi. Dopo il delimitatore d'apertura ed il nome dell'elemento con cui è associato, si incontra il nome dell'attributo seguito dai valori possibili dello stesso, nel caso in cui si presenti un elenco di valori prestabiliti questi sono racchiusi tra parentesi tonda e separati dalla barra (|), è il caso dell'attributo tipo dell'elemento titolo; altrimenti si può incontrare una speciale parola chiave quale CDATA, che indica che il valore dell'attributo sarà costituito da dati di tipo carattere. Infine viene indicato il valore di default dell'attributo, valore che può consistere anche in una parola chiave tipo #IMPLIED che indica che l'attributo è facoltativo oppure #REQUIRED che specifica l'obbligatorietà dell'attributo.

I.4.6. HTML

Una delle più fortunate applicazioni SGML è HTML, acronimo che sta per Hyper-Text Markup Language e che può essere tradotto come linguaggio di marcatura per ipertesti.

L'inventore di HTML è stato Tim Berners-Lee, un ricercatore del CERN (Conseil Européenne pour la Recherche Nucléaire) di Ginevra, egli nel marzo del 1989 presentò ai dirigenti dei laboratori una relazione dal titolo "Information Management: a Proposal", in cui illustrava la sua idea di "un sistema universale di informazioni fra loro collegate, in cui la generalità e la portabilità sono molto più importanti della bella grafica"[24].

L'obiettivo di Berners-Lee era quello di sviluppare un sistema di pubblicazione e reperimento dell'informazione distribuito su rete geografica che tenesse in contatto la comunità internazionale dei fisici, alla base dell'idea dello studioso stava il potente concetto di "ipertesto".

Secondo la definizione data nel 1965 dall'ideatore del termine, il filosofo e sociologo Theodor Holm Nelson, l'ipertesto è "scrittura non sequenziale, testo che si dirama e consente al lettore di scegliere: qualcosa che si fruisce al meglio davanti a uno schermo interattivo. Così come è comunemente inteso, un ipertesto è una serie di brani di testo tra cui sono definiti legami che consentono al let­tore differenti cammini.
[...]
L'ipertesto include come caso particolare la scrittura sequenziale, ed è quindi la forma più generale di scrittura. Non più limitati alla sola sequenza, con un ipertesto possiamo creare nuove forme di scrittura che riflettano la struttura di ciò di cui scriviamo, e i lettori possono scegliere percorsi diversi a seconda delle loro attitudini, o del corso dei loro pensieri, in un modo finora ritenuto impossibile."
[25]

Per materializzare questa sua idea di un sistema di documenti collegati reticolarmente, Berners-Lee nel 1990 ideò un linguaggio di formattazione per creare ipertesti consultabili via rete, l'HTML, ed un protocollo[26] basato su TCP/IP[27], l'http (Hypertext Transer Protocolol), definì inoltre un nuovo metodo universale di indirizzamento di documenti in internet, l'URL (Universal Resource Locator). Nasceva così il World Wide Web, la più nota applicazione ospitata dalla rete internet, quasi un'incarnazione della rete stessa, tanto che spesso i termini web ed internet vengono usati come sinonimi[28]. Nell'idea originale di Berners-Lee obiettivo del nuovo sistema doveva essere il reperimento e la navigazione di informazioni tra loro interrelate in un tessuto complesso e non sequenziale di associazioni, non concentrandosi sull'aspetto grafico di queste, ma piuttosto sul loro contenuto; il primo browser realizzato dallo scienziato aveva infatti una interfaccia a caratteri, tuttavia lo sviluppo del linguaggio seguì una strada ben diversa.

Un avvenimento epocale per lo sviluppo del Web come noi lo conosciamo oggi fu, nel 1993, la realizzazione da parte di Marc Andressen ed Eric Bina, dottorandi presso il National Center for Supercomputing Applications (NCSA) dell'Università dell'Illinois, della prima interfaccia grafica multipiattaforma per l'accesso ai documenti presenti su World Wide Web, il browser Mosaic. Esso divenne così famoso ed utilizzato, che venne creata da Marc Andreesen e Jim Clark la Mosaic Communications (successivamente ribattezzata come Netscape Communications Corp.), che nel 1994 rilasciò la prima versione del browser Netscape.

Il passaggio ai browser grafici rappresentò una importantissima svolta per quanto riguarda la storia di internet, programmi come Netscape rendevano molto semplice la navigazione e favorirono un vero e proprio boom del WWW, che in quegli anni iniziava a non esser più soltanto prerogativa del mondo accademico, ma si diffondeva rapidamente nella società intera.

Si passava allora dall'ipertesto puro del Web concepito nei laboratori del CERN, verso una nuova impostazione di tipo ipermediale, immagini e suoni cominciavano a rappresentare un nuovo fulcro nell'esperienza della navigazione in internet.

HTML in origine non doveva essere un linguaggio per il "rendering" nei browser, ma per la marcatura dei dati in modo da consentirne la condivisione su reti e su piattaforme diverse. Come conseguenza della nuova linea di sviluppo della rete occorsero revisioni del linguaggio maggiormente incentrate sull'aspetto del documento.

La prima versione di HTML non ebbe mai un documento di riferimento ufficiale fu costruita e migliorata tra i vari ricercatori impegna­ti nello sviluppo del Web. La prima versione ufficiale di HTML fu la 2.0 pubblicata nel novembre 1995 a cura di Tim Berners-Lee e Dan Connolly per conto dell'Internet Engineering Task Force (IETF).

Sin dalle prime revisioni, sono stati inseriti marcatori speciali con un senso tipografico, come il corsivo <I>, il grassetto <B>, le interruzioni di riga <BR>, in seguito si è aggiunta la possibilità di inserire nel documento immagini e tabelle. La versione 3.2 di HTML includeva l'utilizzo di Javascript, un linguaggio di scripting atto a favorire l'interattività con le pagine web, la versione 4.0 comprendeva le specifiche per il DHTML (Dynamic HTML), nel 1996 fu rilasciata le prima versione delle specifiche per i CSS (Cascading Style Sheets), i fogli di stile a cascata, si tratta di strumenti di formattazione per le pagine HTML attraverso i quali è possibile definire numerosi aspetti riguardanti la resa grafica dei documenti sul web.

In seguito al grande successo avuto dal World Wide Web, nell'ottobre del 1994 Tim Berners-Lee fondò il World Wide Web Consortium (W3C) presso il Laboratory for Computer Science del Massachusetts Institute of Technology, in collaborazione con il CERN, dove il web è nato, e con il supporto del Dipartimento della Difesa americano (Defense Advanced Research Project Agency, DARPA) e della Commissione Europea.

Il W3C è costituito da un consorzio di aziende del settore informatico che si occupa di stabilire standard di riferimento per il Web. Obiettivo del W3C è quello di favorire l'interoperabilità e la standardizzazione di tutte le tecnologie riguardanti il web e per mezzo di documenti pubblici detti "raccomandazioni" ufficializzarne l'utilizzo.


[14] Infatti alcune delle prime esperienze di digitalizzazione di testi presenti su internet si basavano su formati testuali, in pratica il testo è poco più che una sequenza ordinata di caratteri e segni ortografici; a tal proposito merita di esser ricordato il progetto Gutenberg <www.gutenberg.net> nato nel 1971 dall'iniziativa individuale di Michael Hart. Il Progetto Gutenberg nel corso degli anni ha costituito, grazie all'apporto di numerosi volontari, un archivio che supera ormai i 6.000 testi. I titoli sono relativi ad opere non solo in inglese ma anche in francese, tedesco, spagnolo e italiano. I testi sono in for­mato ASCII a sette bit al fine di garantire l'universalità dell'accesso. Per quanto riguarda l'Italia merita di essere menzionato il Progetto Manuzio <www.liberliber.it>. Gestito dall'associazione Liber Liber, attiva sin dal 1993, il Progetto Manuzio rende disponibili in rete numerosi testi della letteratura italiana ormai liberi dai diritti d'autore. Le opere in origine erano accessibili prevalentemente in formato txt, oggi si è dato spazio anche ad altri formati aperti quali: html, rtf ed alcuni formati e-book quali oeb e lit.
[15] "L'espressione markup deriva dalla analogia tra questi linguaggi e le annotazioni inserite da autori, curatori editoriali e correttori nei manoscritti e nella bozze di stampa di un testo al fine di indicare correzioni e trattamenti editoriali, chiamate in inglese mark up". Marco Calvo, Fabio Ciotti, Gino Roncaglia, Marco Zela, Come funziona World Wide Web, in Internet 2000 (versione online)
<http://www.laterza.it/[...]/30_testo.htm>
[16] Propriamente si parla di markup language solo per quei linguaggi che si basano sul testo, sia per il markup sia per il contenuto. Si tenga presente che per "formato sotto forma di testo" si intende un file in cui le informazioni sono memorizzate esclusivamente come una sequenza di caratteri ASCII (o altra tavola di codifica dei caratteri) e visualizzabile per mezzo di qualsiasi editor di testi, quale può essere l'Edit del sistema operativo Microsoft DOS, oppure il Notepad (Blocco Note) del sistema operativo Microsoft Windows.
[17] Davide Bianchi, Breve introduzione al formato RTF, in Articoli, documenti, faq e tutto quello che fa programmazione
<http://www.soft-land.org/documenti/rtf.html>
21 Dicembre 2000, (1 Ottobre 2003).
[18] Cfr. Gigliozzi Il testo e il computer. Manuale di informatica per studi letterari, (vedi n.3) p.109.
[19] Si tenga presente che il riferimento è per un periodo che può esser considerato la preistoria dell'era informatica: basti pensare che all'epoca non esistevano i personal computers.
[20] Cfr. Ed Tittiel, Norbert Mikula, Ramesh Chandak, XML for Dummies, Milano,Apogeo, 1998, pp. 43-46 (ed. orig. XML for Dummies, IDG Books Worldwide, Inc., 1998).
[21] Per maggiori informazioni riguardo la storia di SGML si veda: SGML Users' Group,A Brief History of the Development of SGML, in The CoverPages
<http://www.oasis-open.org/cover/sgmlhist0.html>
11 giugno 1990, (02 ottobre 2003).
[22] Cfr. Devan Shepherd, XML. Guida completa, trad. it. staff Apogeo, Milano, Apogeo, 2002, p. 54 (ed. orig. Teach yourself XML in 21 Days second edition, Sams, 2001).
[23] #PCDATA è la parola chiave utilizzata nelle DTD per descrivere elementi di base contenenti dati di tipo carattere, costituiti da testo non elaborato che potrebbe contenere riferimenti a entità, ma non altri elementi figlio o markup.
[24] Tim Berners-Lee, Information Management: A Proposal, in W3 archive
<http://www.w3.org/History/1989/proposal.html>
(06 ottobre 2003)
[25] Cfr. Theodor Holm Nelson, Literary Machines 90.1, Padova, Franco Muzzio Editore, 1992 ,pp. 0/2-0/3.
[26] In informatica, insieme di regole formali semantiche e sintattiche che regolano la comunicazione tra computer connessi in una rete.
[27] Il TCP/IP o Transmission Control Protocol / Internet Protocol è il protocollo su cui si basa l'intera rete Internet.
[28] In realtà la rete internet nasce nel 1966 nell'ambito del progetto Arpanet del Dipartimento della Difesa americano. Obiettivo del progetto era quello di garantire le comunicazioni anche in caso di attacco nucleare.
<DigiSic />
[ AccessKey: Top=T Precedente=Z Successiva=C Indice=X?]