<- SKIP - Copertina - Makefile ->

Articolo


Verso XML: il progetto di Documentazione di Linux diventa una biblioteca digitale

Questo articolo tratta un excursus storico degli strumenti legati a SGML ed utilizzati dai documentatori di Linux dalla nascita ad oggi. Viene anche analizzata la migrazione verso lo standard emergente XML ed i vantaggi che si otterranno dalla sua adozione. L'analisi è il risultato di mesi di lavoro degli sviluppatori di SGMLtools ed è stata formalizzata da Kendall Clark nel documento che potete trovare all'url http://www.ntlug.org/~kclark/roadmap/.
Altre informazioni/definizioni provengono dai siti indicati a fondo articolo.

Linux è un sistema operativo veramente documentato. Agli albori della sua storia, sotto la leadership di persone come Matt Welsh, Greg Hankins, gli autori del Linux Documentation Project sparsi in tutto il mondo decisero astutamente che il progetto di documentazione di Linux dovesse essere basato su sistema strutturato di informazione come SGML (ISO 8879).

Basato sul QWERTZ DTD di Tom Gordon e sul parser di James Clark venne presto sviluppato un nuovo DTD (Document Type Definition): Linuxdoc. In questa fase iniziale sono state poste le basi dello strumento di documentazione conosciuto inizialmente con il nome di Linuxdoc-SGML, più tardi evoluto in SGMLtools.
SGMLtools è diventato lo strumento de facto per la scrittura della documentazione dell'LDP. Il nome del pacchetto è stato cambiato in SGMLtools per chiarire che è uno strumento utilizzabile non esclusivamente con Linux e per Linux.

Nel frattempo, come molti programmatori e scrittori professionisti si sono accorti, è in atto una collisione fra le sorti di alcuni progetti del consorzio del World Wide Web, la comunità SGML, Sun, e Microsoft che sta lavorando su XML (Extensible Markup Language).

L'obiettivo più importante del gruppo di sviluppo di SGMLtools è di far migrare lo strumento attuale verso XML. Il passaggio avverrà per fasi distinte. Il primo passo consiste nell'abbandono di Linuxdoc e l'adozione di DocBook. SGMLtools, sotto la conduzione di Cees de Groot, è impegnato in un ciclo di sviluppo attivissimo.
L'obiettivo del ciclo attuale è di muovere SGMLtools e, di riflesso il LDP, ai cosiddetti SGML industry standards: il DTD DocBook e gli strumenti basati su DSSSL come Jade di James Clark.

DocBook è sviluppato e manutenuto da OASIS (Organization for the Advancement of Structured Information Standards)ed è utilizzato dalle più grandi compagnie di software nel mondo per la documentazione dei propri prodotti. Pensate che viene utilizzato anche dal quotidiano "Le Monde" di Parigi. Oasis sta abbracciando totalmente la transizione da SGML a XML.

Il DSSSL (Document Style Semantics and Specification Language) è quasi uno standard ISO, ed è complementare a SGML per la specificazione della semantica: indirizza la semantica della composizione di alta qualità in maniera indipendente dai sistemi o processi di formattazione. DocBook fornisce un ambiente molto ricco per gli autori del LDP; è scritto specificamente per la documentazione riguardante computer e software. Sono in corso notevoli sforzi implementativi per supportarne una transizione automatizzata.

Norm Walsh ha costruito un foglio di stile DSSSL per documenti DocBook: il risultato del suo lavoro e del processore Jade di James Clark è che ogni documento DocBook SGML valido può essere trasformato nei seguenti formati:

TeX
DVI
Postscript
PDF
Framemaker MIF
RTF
XML flow object tree

Questo è un miglioramento considerevole sul numero di formati offerti al LDP, eccetto per l'assenza di un backend Groff per produrre output di qualità in solo testo. Il problema dell'output del solo testo viene attaccato su diversi fronti ma si dimostra un problema non insormontabile.

Alla fine di questo primo passo, che si pensa possa accadere all'inizio del 1999, il Linux Documentation Project avrà decisamente aumentato la sua funzionalità e qualità in quanto: fornirà un documento finale più ricco a livello semantico ed inoltre renderà disponibile un migliore accesso a nuovi formati (particolarmente PDF e RTF) basando i suoi sforzi sull'industria degli standards: DocBook, DSSSL, e Jade.

Un punto fondamentale del cambio di policy che migliorerà la transizione è senza dubbio l'utilizzo "obbligatorio" (mandatory) di DocBook e SGML per tutti gli autori LDP.

Il secondo passo è di spostarsi da SGML/DSSSL in favore di XML e XSL. XML (Extensible Markup Language) non è un singolo markup language ma è un meta-linguaggio che permette all'utente di costruire il proprio linguaggio di markup. Si chiama appunto extensible perché non ha un formato fisso come HTML. Un normale linguaggio di markup definisce un modo di descrivere le informazioni in una determinata classe di documenti. XML permette di definire un proprio linguaggio di markup personalizzato per molte classi di documenti. Può farlo perché è scritto in SGML, lo standard internazionale.

XSL non è ancora uno standard, ma sta evolvendo molto rapidamente e si pensa possa essere completato per la fine del 1998. Nonostante questo, lo spostamento verso l'accoppiata XML e XSL sarà inevitabile e soprattutto senza grossi problemi.

Oggigiorno l'utilizzo più estensivo del progetto LDP è collegato al Web. Questo fatto, assieme all'inevitabile evoluzione dei browser Web verso l'adozione di XML/XSL significa che muoversi da SGML/DSSSL a XML/XSL avrà ancora più senso per il LDP.
James Clark, uno degli capi-progetto del gruppo di lavoro su XSL del W3 Consortium, con l'ultima bozza degli standard XSL, mostra che la direzione verso cui evolve è la stessa di DSSSL (ma senza la sintassi di DSSSL basata su Scheme).

Una volta che si avranno browser che supportano XML/XSL il LDP potrà convertire la sua collezione da SGML-DocBook a XML-DocBook. Un DTD XML per DocBook è già disponibile (download partire dal sito di Norman Walsh). Una volta che il lavoro di conversione dei fogli di stile di DSSSL verso fogli di stile XSL sarà completato, sarà possibile vedere documenti XML direttamente all'interno di un Web browser. Questo diminuirà drasticamente i costi di manutenzione associati al mantenimento della libreria digitale del LDP.

Il secondo vantaggio di una collezione digitale basata su XML/XSL è il migliore supporto per i meta-dati: dopotutto è duro tenere una bibilioteca senza un catalogo.
Il secondo passo è inevitabile, e deve essere raggiunto alla comparsa dei primi Web-browser che supportano XML e XSL; alla conclusione del passo due il LDP sarà evoluto in una biblioteca digitale.

Due miglioramenti significativi si intravvedono all'orizzonte:
1) la costituzione, all'interno del LDP, di un motore di ricerca in grado di processare informazioni strutturate. Esistono, ovviamente, molti motori di ricerca grauiti ma nessuno è stato sviluppato specificamente per trattare le informazioni strutturate.
2) la nascita di uno strumento analogo a rpmfind (che esegue delle query su una gerarchia RDF di meta-dati riguardanti i pacchetti RPMs). L'utilizzo di XML e RDF per la collezione digitale del LDP sarà in grado di fare la stessa cosa. Molto probabilmente si chiamerà ldpfind e sarà in grado di eseguire delle query su documenti del LDP a seconda di criteri specifici.

Per chi volesse approfondire l'argomento consiglio i seguenti link:

-SGML-
SGMLTools project
SGML Head Quarter (Oasis)
Norman Walsh HomePage
http://www.sil.org/sgml/wlw11.htm l.html Tutorial su SGML

-DSSSL-
HomePage di Paul Prescod (comprende un tutorial su DSSL)
Cookbook
DSSSL Handbook

-DocBook DTD-
HomePage del Davenport group
Tutorial di Mark Galassi

-XML/XSL-
Extensible Markup Language (XML) 1.0
Extensible Linking Language (XLL)
Extensible Style Language (XSL)

di Luca Rossetti


<- SKIP - Copertina - Makefile ->