Modulo 13

Realizzazioni di pagine Web

World Wide Web Pages and Browsing

Il best seller come libro di introduzione all'argomento è sicuramente "Computer Network and Internet" di Douglas Comer della Prentice Hall (quarta edizione). Questo libro ha il pregio di essere molto sintetico e molto chiaro tanto che quando lo si legge può sembrare di sentire delle banalità. Spero che qualcuno di voi abbia la possibilità di leggerlo.

In internet sono pubblicate delle slide che riassumono in modo molto sintetico il contenuto dei capitoli e quindi le possiamo usare come guida. Iniziamo dalla parte XVI associata a "Web technologies". Ho messo anche a disposizione l'esperienza virtuale Web per la sperimentazione dei semplici esempi illustrati nel libro.

XML

Come documenti guida saranno usati i corsi di laurea di informatica in Tecnologie Web dell'Università di Bologna e quello di dell'Università di Udine dove possiamo trovare anche degli esercizi con le relative soluzioni.
Una lettura interessante è il linguaggio XML che riguarda un progetto XML per la documentazione giuridica del CNR di Firenze per conto del Ministero della Giustizia. Per chi vuole approfondire nel sito NormeInRete (NIR) ho trovato una utile introduzione ai DTD di NIR e Note al DTD dei documenti NIR.

Un esempio: Gentoo Linux

Come applicazione per questo modulo ho preso in considerazione la documentazione di una distribuzione linux che si chiama Gentoo Linux. In questa distribuzione ci sono dei documenti chiari e precisi, anche in lingua italiana, che illustrano installazioni e configurazione dei vari software. In particolare hanno curato la tipologia della documentazione mista a spezzoni di codice o file di configurazione. Questo è anche lo stile che sarebbe necessario alla documentazione delle pagine che stai leggendo e quindi visto che l'effetto complessivo mi piace, ho deciso di provarlo assieme ai corsisti. È interessante la lettura di una serie di quattro articoli in cui Daniel Robbins spiega il percorso che lo ha portato a realizzare il portale con XML/XLTS.

La prima cosa utile da leggere è sicuramente la Gentoo Linux XML Guide. Ricorda che per tutti i documenti di questa distribuzione esiste la possibilità di inserire in coda all'URL specificato nel browser la stringa ?style=printable che permette di avere la stampa depurata dalla barra informativa laterale.

L'obiettivo degli ideatori di questo strumento è stato quello di definire una sintassi semplice ma espressiva in modo che fosse semplice da imparare ma sufficiente per esprimere la tipica documentazione associata ad una distribuzione GNU/Linux. Inoltre è stata considerata importante la possibilità a partire dai file XML di generare documenti in altri formati quali DocBook, SGML e ovviamente HTML.

La conversione di un file XML in HTML viene fatto da:

Tutti i sorgenti XML che generano il sito web di Gentoo Linux sono contenuti in un unico file ricercabile come English documentation e visto che ci interessa la documentazione in italiano cerchiamo Italian documentation.
Se si desidera accedere al repository CVS che contiene questi file basta puntare su Online CVS Repository.

Sia $DOC_ROOT la variabile che contiene il nome della directory di lavoro dove ci sono i file XML da trasformare. In questa directory estraiamo il file xml-guide-latest.tar.gz:

$ export DOC_ROOT=~/g
$ cd ${DOC_ROOT}
$ wget http://www.gentoo.org/dyn/doc-snapshots/docs-latest-en.tar.bz2
$ tar jxf docs-latest-en.tar.bz2
$ export LANG=it
$ mkdir ${LANG}
$ cd ${LANG}
$ wget http://www.gentoo.org/dyn/doc-snapshots/docs-latest-${LANG}.tar.bz2
$ tar jxf docs-latest-${LANG}.tar.bz2
$ mkdir test
$ cd test
$ mkdir css images
$ wget -P css/ http://www.gentoo.org/css/main.css
$ wget -P images/ http://www.gentoo.org/images/gbot-s.gif \
                  http://www.gentoo.org/images/gridtest.gif \
                  http://www.gentoo.org/images/gtop-s.jpg \
                  http://www.gentoo.org/images/line.gif \
                  http://www.gentoo.org/images/netraverse-gentoo.gif

$ cd ..
$ wget http://dev.gentoo.org/~swift/gentoo/downloads/guide.xsl
$ wget http://bfs.itlab.musc.edu/pubcvs/viewcvs.cgi/~checkout~/sluice/ \
         xsl/guide-print.xsl?rev=1.1.1.1&content-type=text/plain
$ mv guide-print.xsl?rev=1.1.1.1 guide-print.xsl

Modifichiamo il file /etc/xml/catalog aggiungendo all'interno dell'elemento catalog la seguente riga:


Occorrono delle piccole aggiustature per adeguarci allo standard usato in Gentoo. Nel file in output va poi aggiustato il path da dove si carica il file main.css che abbiamo spostato nella directory corrente. Inoltre nel file guide.dtd occorre impostare gli accenti italiani aggiungendo in coda al file guide.dtd l'include dei file ISOlat1.dtd e ISOlat2.dtd contenenti le entità ISO Latin:

$ wget http://www.tic.fdns.net/tic/html/ISOlat1.dtd \
       http://www.tic.fdns.net/tic/html/ISOlat2.dtd
$ echo "
    <!ENTITY % ISOlat1 SYSTEM "./ISOlat1.dtd"> %ISOlat1;
    <!ENTITY % ISOlat2 SYSTEM "./ISOlat2.dtd"> %ISOlat2;" >> \
    dtd/guide.dtd

Il comando per trasformare, in stile stampa, un documento quale Knoppix.xml (scaricalo e poi aprilo con un editor a tua scelta) è:

$ xsltproc guide-print.xsl test/Knoppix.xml > test/Kno.html

Prova a vedere il risultato Kno.html e confrontalo con il "solito" Knoppix.html.

Creative Commons License FREE THE MOUSE Valid HTML! Sandro Doro (email me)
Ultima modifica: $Date: 2007-02-12 12:37:11 $