Linee guida IMS per lo sviluppo
di applicazioni accessibili per la formazione

Versione 1.0 del Libro bianco

| WGBH | NCAM | PROGETTO SALT | CONSORZIO IMS GLOBAL LEARNING |

4. Utilizzo di XML per l'accessibilità

Come accennato nella sezione 3, XML può facilitare l'accessibilità attraverso contenuti trasformabili, strutturati e basati su testo. XML permette una gamma di trasformazioni flessibili dei fogli di stile. Consente cambiamenti semplici alla dimensione ed al colore dei caratteri così come l'uso di complesse grammatiche di trasformazione utilizzate per trasformare una presentazione in modalità totalmente differenti. Poiché tutto il contenuto in un documento di XML è dichiarato ed identificato, gli autori possono generare contenuti che successivamente possono essere ridisegnati in altre modalità a cui l'autore non ha mai pensato.

4.1 XML è personalizzabile e flessibile

XML è il metalinguaggio per il web raccomandato dal W3C. Utilizzando XML, gli autori possono sviluppare contenuti che possono essere controllati sia da linguaggi da loro scelti che persino da linguaggi di loro produzione. Per gli scopi di queste linee guida, si raccomanda agli autori di usare linguaggi basati su XML preferibilmente all'utilizzo del normale HTML. Inoltre, dovrebbero cercare di limitare la loro scelta di particolari linguaggi di interfacciamento con XML a favore di quei linguaggi di utilizzo generale, preferendo particolarmente i linguaggi progettati con disposizioni per l'accessibilità.

XML presenta molte meno limitazioni rispetto al linguaggio HTML. Mentre gli elementi e gli attributi all'interno del codice HTML si limitano ad un insieme predefinito, XML offre agli sviluppatori esperti la possibilità di utilizzare degli elementi definiti dall'autore. Questa flessibilità rende quindi XML più completo e personalizzabile.

Gli elementi di intestazione e di paragrafo possono essere resi più descrittivi. Al posto degli elementi predefiniti in HTML per intestazioni e paragrafi, XML consente agli sviluppatori di definire elementi, rendendoli quindi maggiormente intelligenti e intellegibili. Così per l'autore è possibile adattare gli archivi per descrivere chiaramente il tipo di dati in qualsiasi particolare gruppo di elementi contenuti nel file di dati.

Questa flessibilità inoltre permette all'autore di contrassegnare gli archivi con elementi che chiaramente differenziano il contenuto destinato ai diversi utenti con le diverse necessità. Per esempio, un singolo archivio di dati può contenere contenuti sviluppati sia per utenti non vedenti che con disabilità visive. La sezione 4.2.2 fornisce un esempio di come questo possa essere realizzato utilizzando XML e i fogli di stile. La flessibilità di questi elementi inoltre sostiene il processo di sviluppo consentendo agli autori di usare differenti visuali di 'modifica' di quelle che intendono visualizzare per i propri lettori. Un autore con disabilità visive, per esempio, potrebbe utilizzare una visualizzazione con caratteri ingranditi, pubblicando invece i contenuti con caratteri più piccoli.

Un'altra importante differenza fra HTML e XML è nella modalità in cui i due linguaggi gestiscono la struttura e la visualizzazione dei dati. HTML combina i dati di struttura e di visualizzazione. XML separa le informazioni della struttura dalla visualizzazione delle informazioni. Il metalinguaggio XML può generare dei linguaggi che descrivono e controllano la struttura o che impostano la visualizzazione dei dati. Le semantiche di un documento XML sono quindi definite dalle applicazioni che le elaborano e/o dai fogli di stile (Extensible Stylesheet Language Transformations, XSLT). I fogli di stile trasformano nel modo corretto i contenuti di un file XML per la presentazione in differenti formati.

4.2 XML consente la standardizzazione per l'accessibilità, la validazione e la correttezza formale

I linguaggi di marcatura basati su XML, inclusi quelli creati dagli sviluppatori, dipendono dalle DTD o da schemi disponibili in linea che forniscono le regole per la loro interpretazione. Questo significa che gli elementi, inclusi quelli contenuti in XHTML, devono essere formalmente corretti e validati. Questa severità supplementare, non richiesta da HTML, impone una disciplina agli sviluppatori di contenuti ma non è un compito eccessivo. Il W3C rende disponibili dei validatori di codice e sia i documenti con i contenuti che i relativi fogli di stile possono essere validati per la correttezza del codice. Come descritto nei principi degli standard, la validità e la correttezza formale generalmente contribuiscono all'accessibilità.

Risorse:

4.3 Linguaggi raccomandati basati su XML

La seguente sezione considera alcuni dei linguaggi basati su XML utilizzati nella formazione in linea.

4.3.1 XHTML

XHTML offre i convincenti vantaggi di HTML per la produzione di contenuti in linea accessibili.

HTML se formalmente valido può essere facilmente trasformato in XHTML, il quale indirizza il programma utente all'interpretazione standard della specifica disponibile in linea. Gli sviluppatori non devono temere che l'utilizzo di XHTML causerà problemi di compatibilità con i browser meno recenti. XHTML sarà letto come HTML quando si incontreranno dei browser non compatibili con XHTML. Questa caratteristica di retrocompatibilità è disponibile all'autore con un piccolo investimento ma offre un sostegno importante ai programmi utente che sono sviluppati per incrementare l'accessibilità utilizzando XML.

Utilizzare XHTML significa usare un linguaggio di marcatura predisposto al futuro. Gli sviluppatori non devono applicare cambiamenti significativi alle risorse ed alle attuali attività; devono soltanto seguire le regole per produrre HTML 4.1 corretto aggiungendo poi una linea supplementare alla loro risorsa che la identifica come accessibile ai sistemi che utilizzano XML. Questa linea aggiuntiva include inoltre le istruzioni per l'individuazione in linea di informazioni utilizzabili dai sistemi per interpretare la versione di XML in uso. XHTML è particolarmente utile ai programmi utenti che devono operare delle funzioni: per trovare risorse alternative, per sincronizzare documenti come ad esempio titoli e filmati, o per trasformare in contenuto in qualche modo per renderlo maggiormente accessibile.

4.3.2 Marcatura XML e fogli di stile

I fogli di stile a cascata (CSS), così come vengono utilizzati in HTML possono alterare la visualizzazione e la formattazione di tutto o parte del contenuto del documento HTML a cui si applicano. Quindi, ad esempio, gli elementi <H1> in un documento HTML possono essere definiti per apparire in grassetto, dimensione di 15 punti e di colore blu. Ma un ulteriore CSS può renderlo di dimensioni pari a 30 punti per gli alunni ipovedenti. I fogli di stile a cascata (CSS) sono capaci, tuttavia, di modificare la formattazione e la visualizzazione degli elementi e attributi selezionati dell'intero contenuto del documento HTML. Il browser visualizzerà l'intero documento HTML ad ogni utente.

Gli Extensible Stylesheet Language Transformations (XSLT) sono uno strumento più potente. Permettono la selezione e la formattazione di particolari sezioni di un documento XML. Inoltre permettono l'aggiunta (all'interno dello stesso documento XSLT) di altri elementi quali le immagini, testi o video non inclusi nella presentazione originale. In questo modo, gli autori necessitano di creare il documento una sola volta ma possono specificare una varietà di presentazioni per soddisfare le differenti necessità. Per esempio, utilizzando HTML per creare siti web multilingua è necessario predisporre la separazione dei documenti per ogni lingua. XSLT consente al foglio di stile di selezionare il testo in ogni singola lingua dai contenuti di un unico file visualizzandoli assieme con qualsiasi immagine, audio o video specifici per una particolare lingua.

Oltre all'utilizzo per gestire diverse lingue, XML può essere utilizzato per differenziare il contenuto destinato ad una varietà di utenti compresi gli studenti non vedenti, con disabilità visive o altre disabilità, tutto sempre gestito all'interno di un singolo documento.

Qui di seguito un esempio da un corso di scienze biologiche:

<introduzione_robustus> <descrizione audio> Questa pagina contiene le informazioni concernente i fossili del'Australopithecus Robustus. Mostra un'immagine di un esemplare del cranio scoperto nel 1950 da Robert Broom che mostra una cresta sagittale leggera ed i grandi archi zigomatici avanzati dal progetto, nascondenti la zona nasale del dispersore. </descrizione audio> <caratteri grandi> La suddetta immagine mostra il cranio dell'Australopithecus Robustus, scoperto nel 1950 da Robert Broom. Osserva ed annota le caratteristiche peculiari. </caratteri grandi> <predefinita> La suddetta immagine mostra il cranio dell'Australopithecus Robustus, scoperto nel 1950 da Robert Broom. Osserva ed annota le caratteristiche peculiari. </predefinita> </introduzione_robustus>

Diverse versioni sull'Australopithecus Robustus possono essere aggiunte per le necessità di visualizzazione per l'allievo tramite XSLT, anche come risposta ad una impostazione delle preferenze in cui l'utente può indicare l'esigenza di caratteri grandi e/o della descrizione audio. Questo breve esempio illustra la capacità di XML di includere elemento definiti dall'utente che aumentano sia la flessibilità che la leggibilità del documento.

4.3.3 Grafica Vettoriale Scalare (SVG)

Lo Scalable Vector Graphics language (SVG) è un linguaggio di grafica vettoriale raccomandato e sostenuto dal W3C e utilizzato da molte aziende associate al W3C che sviluppano applicazioni e programmi utenti di rilievo. La grafica vettoriale differisce dalla grafica di tipo "raster". La grafica "raster", o grafica mappata a bit, immagazzina le immagini come una semplice collezione di punti, rendendo difficile la manipolazione delle immagini. La grafica vettoriale, invece, definisce la descrizione delle immagini. Ad esempio, un'immagine vettoriale di un cubo è definita da una descrizione matematica della relativa figura. In questo modo, il cubo può essere allargato, ridotto o ruotato nello schermo. La descrizione dell'oggetto può essere interpretata da altre periferiche, come un display tattile. nel caso di illustrazioni tecniche, l'immagine visualizzata deriva spesso da una base di dati contenente le informazioni. Queste informazioni possono essere rappresentate graficamente ma possono essere rappresentate anche come tabella o tramite suoni.

I dati che definiscono un'immagine vettoriale possono anche includere una descrizione dettagliata degli stessi dati. Così sia i testi ALT che i testi LONGDESC possono far parte dell'oggetto 'immagine'. In aggiunta, SVG supporta i meta-dati relativi all'oggetto in modo da poter indicare un oggetto immagine ed una descrizione alternativa relativi ad un oggetto individuato altrove.

Ovunque le immagini sono costruite da altri elementi immagine, i diversi oggetti mantengono le proprie descrizioni. In un progetto di ingegneria, per esempio, gli oggetti inclusi in un diagramma di flusso possono essere descritti separatamente. In questo modo, il fornitore di contenuti ha la possibilità di raggruppare gli insiemi di oggetti per generare un oggetto grafico più complesso. Se gli elementi grafici e il loro rapporto possono essere descritti, allora anche l'utente che non può utilizzare un'interfaccia grafica ha ancora una buona possibilità di poter decodificare l'immagine.

Gli autori necessitano di porre attenzione alle potenzialità di SVG. Le immagini complesse possono contenere molti sottoelementi ed accumulare così tantissime descrizioni associate all'intera immagine. Gli autori dovrebbero organizzare le informazioni dei sottoelementi in modo gerarchico in modo che l'utente che non può visionare l'intera immagine possa ascoltarla o leggere del testo, e ancora possa avere la capacità di creare un adatto modello mentale dell'immagine.

SVG fornisce un formato per le immagini che supporta un certo numero di caratteristiche di accessibilità. Queste caratteristiche includono:

Risorse:

4.3.4 Linguaggio di integrazione di multimedia sincronizzati (SMIL)

Synchronized Multimedia Integration Language (SMIL) è un altro linguaggio XML. SMIL, che si pronuncia "smile", è raccomandato per la creazione di presentazioni multimediali per il web ed è supportato da popolari programmi utente inclusi RealPlayer e QuickTime Media Player.

Molte delle soluzioni ai problemi discussi in queste linee guida richiedono che l'autore fornisca dei formati alternativi equivalenti quali testi, suoni o legende accanto ai grafici. L'integrazione e la sincronizzazione di questi elementi può essere gestita tramite SMIL. All'interno di queste linee guida, sono presenti dei riferimenti a SMIL e, ove necessario, ci sono alcuni esempi che mostrano come può essere usato.

Risorse:

4.3.5 XML per i libri in formato elettronico

Due importanti formati elettronici per i libri sono basati su XML: il Digital Audio-based Information System (DAISY) e la Open eBook Publication Structure.

La missione di DAISY è di sviluppare uno standard internazionale e implementare delle strategie per la produzione, scambio e utilizzo dei libri digitali parlanti sia in paesi sviluppati che in via di sviluppo. Per garantire l'accesso alle informazioni alle persone con disabilità legate alla stampa, DAISY è destinato ad aumentare l'integrazione con tecnologia tradizionale.

Maggiori informazioni sono disponibili nel sito web di DAISY.

La finalità della Open eBook Publication Structure è di fornire una specifica per rappresentare i contenuti tramite libri elettronici. Specificamente:

La Open eBook Publication Structure è basata sull'ipotesi che la tecnologia del libro elettronico ottenga un diffuso successo nel mercato, con sistemi di lettura che abbiano un accesso conveniente a tantissimi titoli attraverso una varietà di generi. La specifica quindi è basata sul HTML e su XML, gli stessi linguaggi primari che definiscono il World Wide Web e che sono destinati a permettere che gli editori e gli autori distribuiscano i propri materiali in un solo formato. Queste ed altre informazioni sono disponibili nel sito web di Open eBook.

4.3.6 Altri linguaggi di marcatura

MathML, ChemML, MusicML e altri linguaggi di marcatura per l'ac-cesso di specifici oggetti sono discussi nella sezione 11 di queste linee guida. Questi sono linguaggi di marcatura sviluppati sul formato XML e possono essere mescolati ed integrati con XHTML.