Validazione del codice

La validazione del codice è inizialmente uno dei momenti più critici, soprattutto per coloro che hanno scarsa dimestichezza con l’X-HTML, ma si rivela generalmente un passo importante per il raggiungimento di un buon grado di accessibilità.

La conformità sintattica e semantica agli standard del W3C è un buon trampolino di lancio verso l’accessibilità, in quanto va incontro alle esigenze degli utenti e delle eventuali tecnologie assistive da essi utilizzate. Ma il codice valido è anche un ottimo punto di riferimento in chiave cross-browsing, e di compatibilità futura per le tecnologie al momento emergenti o addirittura inesistenti. Per approfondire questo aspetto, puoi consultare l’articolo “Tag Soup? No, grazie!!!”

La corretta validazione del codice (X-HTML e CSS) passa necessariamente attraverso i seguenti due passi:

  • Validazione del codice automatica, utilizzando i tanti validatori online presenti sul Web;
  • Verifica manuale riguardante il corretto utilizzo di elementi ed attributi secondo le specifiche del linguaggio di marcatura utilizzato.

La prima fase, quella automatica, può essere tranquillamente affidata al validatore del W3C [http://validator.w3.org/]. In questo modo ci si accerta della conformità sintattica delle pagina alle regole della DTD dichiarata (è obbligatorio dichiarare una DTD), senza che questo ci dia garanzie esplicite di funzionamento della pagina su tutti i programmi utente, o di accessibilità della stessa.

Infatti il validatore è in grado di effettuare soltanto una scansione meccanica del codice della pagina e non è quindi capace di intercettare tutti i possibili problemi, e tanto meno di suggerirne la soluzione ottimale. In ogni caso, allo scopo di ottenere il massimo aiuto dal W3C validator, bisognerà ricordarsi di attivare sempre l’opzione “outline” così da introdurre nel responso anche la visualizzazione dell’albero delle intestazioni (sempre che ve ne siano di intestazioni); così si avranno “armi” più affilate durante la fase successiva, quella dedicata alla validazione manuale e all’analisi di tutti quegli aspetti (semantica degli elementi, struttura della pagina, contenuto di elementi ed attributi) che l’approccio automatico lascia inevasi.

Recentemente il W3C ha rilasciato anche una sorta di “validatore semantico” [http://www.w3.org/2003/12/semantic-extractor.html] , che effettua una scansione alla ricerca della struttura semantica del documento. Anche in questo caso non ha senso attendersi da questo strumento un responso definitivo, ma è certamente un’”attrezzo” interessante che può dare informazioni utili.

Un altro strumento molto utile è il validatore CSS del W3C, [http://jigsaw.w3.org/css-validator/], recentemente pubblicato in una nuova versione.

La parte manuale della validazione del codice riguarderà necessariamente i seguenti aspetti, tutti ugualmente importanti:

  • Strutturazione della pagina: una pagina XHTML costruita in maniera corretta non può non avere una struttura gerarchica, che deriva dalla tipologia dei suoi contenuti, dall’architettura delle informazioni e dall’organizzazione del database sottostante.
  • Semantica degli elementi/attributi: rispettare i dettami delle specifiche senza snaturare gli elementi e gli attributi utilizzati è fondamentale ed altrettanto importante è mantenere il polso della situazione con continui controlli.
  • Contenuto degli elementi/attributi: un tag scritto secondo la corretta sintassi può facilmente contenere testo (o attributi legati al suo contenuto) non coerente con la struttura logica ed il significato della pagina nel suo insieme. Un attributo alt non appropriato è l’esempio più evidente di marcatura sintatticamente corretta, ma dal contenuto fuorviante.

Per nessuno di questi aspetti esiste (e presumibilmente esisterà mai) un algoritmo in grado di effettuare una valutazione automatica.

 

Condividi:

Roberto Castaldo

Sono nato e vivo a Napoli, ed opero professionalmente nel mondo dell'informatica da più di vent'anni. In realtà l'informatica, insieme alla musica e ad altre poche cose, è stato da sempre un mio chiodo fisso, e la buona sorte mi ha aiutato a trasformarlo in un mestiere. Sin dalle mie primissime esperienze lavorative - insegnavo dattilografia ed i primi rudimenti di informatica in una scuola privata - mi sono trovato a mio agio nel settore della formazione e della divulgazione, certamente aiutato dai miei studi classici. Nel 1987 ho iniziato la mia attività come insegnante d'informatica in un Istituto Professionale Statale - per circa due anni sono stato il più giovane insegnante di ruolo d'Italia. Ho avuto svariate esperienze anche nel settore privato come sviluppatore (TPascal - lo ricordate? - VB, ASP e, più di recente VB.NET ed ASP.NET), ma soprattutto come docente e come divulgatore. Ho effettuato attività di formazione presso le più grandi realtà imprenditoriali italiane (IBM, Omnitel, Telecom Italia, TIM, Unicredito, Ekip, BNL, SSGRR), ma anche all'estero in qualità di docente e/o progettista di percorsi formativi; gli argomenti spaziano dal mondo Office fino al multimedia ed alla programmazione avanzata ASP ed ASP.NET. Ho collaborato con l'Istituto Italiano per gli Studi Filosofici di Napoli, ho redatto articoli/tutorial per un'importante rivista informatica (Win98 Magazine), ed ho partecipato allo sviluppo di CD-Rom Multimediali (IBM, Selfin, BNL) curando personalmente la registrazione dei commenti audio ed il montaggio delle musiche (CoolEdit), l'eventuale connessione a database remoti, l'assemblaggio degli elementi testuali, grafici e multimediali (Director 8) fino alla creazione del master definitivo. Negli anni 1998-2000 ho collaborato con la Gazzetta dello Sport Online curando, in occasione dei più importanti avvenimenti sportivi (Mondiali ed Europei di calcio, Giro d'Italia, Campionato di Serie A) le pagine contenenti la traduzione in inglese e francese degli articoli in italiano. Il mio compito consisteva nell'inviare ai miei traduttori la cronaca in italiano, riceverne la traduzione, creare le pagine inglesi e francesi del sito www.gazzetta.it e pubblicarle sul server, il tutto entro 90 minuti dalla fine dell'evento. Nel frattempo, mi avvicinavo in maniera sempre più approfondita alle problematiche legate all'accessibilità di siti web, progettando percorsi di formazione ad hoc, ed aderendo entusiasticamente al progetto webaccessibile.org. Sono stato per diversi mesi membro del XML Protocol Working Group del W3C, ed attualmente partecipo ai lavoro del WAI Web Content Accessibility Guidelines (WCAG) Working Group e del E&O Education ad Outreach Working Group.