Capítol 3. Conceptes previs.

Sumari

3.1. Llenguatges i Estàndards.
3.1.1. El llenguatge XML.
3.1.2. El llenguatge DocBook.
3.1.3. El procés de transformació.
3.1.4. La família de llenguatges XSL.
3.1.5. La publicació de documents DocBook.
3.2. El procés de transformació, una visió més a fons.
3.2.1. Transformant arbres, no documents.
3.2.2. Actors que intervenen al procés de transformació.
3.2.3. El model de publicació de DocBook.

3.1. Llenguatges i Estàndards.

3.1.1. El llenguatge XML.

Com que la majoria de llenguatges emprats en aquest projecte segueixen el format XML, cal fer una breu descripció abans de començar per a poder entendre'ls millor.

XML és una recomanació del W3C, un consorci internacional dedicat a establir els estàndards de la World Wide Web.

Un document XML està format per etiquetes i text. Cada etiqueta va entre els símbols de < i >, i ha de tindre la corresponent etiqueta de tancament, amb el mateix nom però precedida pel símbol /. Al conjunt de la parella d'etiquetes d'obertura i tancament i al text que va enmig s'anomena element. Les etiquetes poden tindre o no atributs i es poden anidar, però sempre que estiguen ben balancejades, és a dir, que en tancar una etiqueta, aquesta serà la corresponent a la etiqueta d'obertura més pròxima. Les regles que defineixen un document XML es poden consultar a la recomanació W3C per a XML 1.0.

Quan un document XML segueix aquestes normes, es diu que és un document ben format. A més d'aquestes normes, l'usuari en pot definir més i personalitzar el XML generant un llenguatge propi, aquestes normes es defineixen en un fitxer apart i que posteriorment es vincula el document XML a aquest fitxer, que s'anomena esquema. Aquest esquema pot tindre diversos formats, el més comú és el DTD, i el W3C ha definit un llenguatge XML per a definir esquemes com a substitut del DTD, amb més funcionalitats, anomenat XML Schema. Bàsicament aquests esquemes defineixen el conjunt d'etiquetes a emprar i la relació entre elles, definint una estructura del document, una gramàtica. Quan un document XML, segueix les normes definides per l'esquema associat, diguem que aquest document és vàlid.

Amb la definició d'esquemes es poden crear nous estàndards de documents XML, com ara el DocBook.

3.1.2. El llenguatge DocBook.

És un llenguatge de marques, com l'HTML, un estàndard SGML/ XML amb un esquema propi, pensat inicialment per a crear documents de tipus tècnic com la documentació de programes informàtics però que s'ha ampliat en el transcurs de les seves versions, arribant a tindre quasi 400 etiquetes diferents en la versió 4.5, permetent crear quasi tot tipus de documents com llibres, articles i documents didàctics.

En l'actualitat un comité tècnic en OASIS (Consorci internacional dedicat al desenvolupament, convergència i adopció d'estándards en el món del comerç electrònic), és qui s'encarrega d'actualitzar i mantindre aquest estàndard.

L'objectiu d'aquest llenguatge és de dotar a la informació que conté d'una estructura llògica, amb significat a nivell semàntic i sense tindre en compte la presentació d'aquesta informació, de manera que siga més fàcil la seva manipulació de forma automàtica per part d'algun software, com ara el processador XSLT que s'utilitza en aquest treball.

Les principals ventajes d'aquest estàndard les podríem resumir com a:

  • Moltes representacions diferents del mateix document. D'una forma ràpida podem presentar el document en format DocBook mitjançant ferramentes com la utilitzada en aquest projecte en formats com ara per exemple l'HTML o el PDF.

  • Reutilització de la documentació. Com que la informació no té format visual, és fàcil reutilitzar aquesta informació en altres documents.

  • L'autor del contingut no ha de preocupar-se de la presentació, només de la informació que conté.

Totes aquestes ventajes fan que cada vegada més DocBook siga escollit com a format per a crear continguts. Com per exemple a les plataformes de teleformació o e-learning (veure [CPTF1] i [CPTF2]), permetent publicar aquests continguts en el format que es considere més adient i amb la presentació adaptada al context on es presente. El docent encarregat de crear els continguts no s'ha de preocupar del format d'aquest, de la seva publicació en Internet, i potser ni tansols de l'estructura a nivell d'etiquetes de DocBook, poguent utilitzar ferramentes amb una interfície gràfica més intuïtiva i fàcil d'aprendre.

3.1.3. El procés de transformació.

Abans de començar amb les diferents parts que componen aquest procés de transformació cal donar una ullada per damunt a la cadena de transformació, al paper que juga cada element i al conjunt de estàndards emprats.

Figura 3.1. Cadena simplificada de transformació

L'autor crea els continguts en format DocBook: fitxer.xml. Aquest fixter és l'entrada del processador XSL, que segons les transformacions especificades a les fulles d'estil (arxiu.xsl) dona com a resultat un arxiu amb la mateixa informació però en diferent format.

Actors que intervenen:

  • Autor de continguts: és la persona que crea el contingut, escollint com a format el DocBook. El resultat és un arxiu XML que segueix l'esquema definit per el estàndard DocBook.

  • Fulla d'estil: un o més arxius amb extensió .xsl perteneixents a la família de llenguatges XSL que defineixen les transformacions a aplicar a cada element de DocBook, identificat segons uns patrons.

  • Processador XSL: software que s'encarrega d'aplicar les transformacions definides per les fulles d'estil a cada element DocBook de l'arxiu que processa.

  • Resultat de la Transformació: conté la mateixa informació creada per l'autor de continguts, però amb un format apte per a la seva visualització com puga ser un arxiu PDF o un HTML, o seguint un altre esquema d'un llenguatge XML diferent al DocBook.

A continuació una breu descripció dels formats i demés estándards que formen part d'aquesta transformació:

  • XML: Llenguatge extensible de marcat. Serveix per a marcar un text amb etiquetes definides per l'autor o per l'esquema associat, donant d'aquesta manera una estructura a aquest text. Un exemple de llenguatges XML són l'XHTML i el DocBook.

  • Esquema associat a un arxiu XML: arxiu amb format XML que defineix la sintaxi i semàntica de les etiquetes utilitzades en l'arxiu XML on està associat.

  • DocBook: Estándar XML per a marcar textos de tipus tècnic, com per exemple documentació de software, articles, i llibres.

  • XSL: és una família de llenguatges basats en l'estàndard XML que permet descriure com la informació continguda en un document XML qualsevol ha de ser transformada o formatada per a la seva presentació en un mitjà específic.

  • XSLT: forma part de la família de llenguatges XSL i és el que permet convertir documents XML d'una sintaxi a una altra. En aquest projecte transforma DocBook a HTML i XSL:FO.

  • XSL:FO: forma part de la família de llenguatges XSL i és el que permet especificar el format visual amb el qual es vol presentar un document XML. És un pas intermedi entre DocBook i qualsevol altre format d'impressió com el PDF.

  • HTML: llenguatge d'etiquetat dissenyat per estructurar textos i relacionar-los en forma d'hipertext. Un dels formats més popular per a fer pàgines web.

  • XPath: una sintaxi no basada en XML i que forma part de la família de llenguatges XSL. És usada per les fulles d'estil XSLT per tal d'accedir als diferents elements que formen l'arxiu XML a transformar.

3.1.4. La família de llenguatges XSL.

XSL és una família de llenguatges per a la transformació de documents en format XML a altres documents de diferents formats, no només XML. Les sigles corresponen a Llenguatges Extensible de Fulles d'Estil. Aquests llenguatges venen recollits en una sèrie de recomanacions del W3C.

Amb aquests llenguatges és defineixen les fulles d'estil. Aquestes fulles d'estil són documents amb format XML que és recullen en arxius amb extensió .xsl i defineixen una sèrie de patrons per a reconéixer les etiquetes del document que van a transformar, i les transformacions a aplicar.

Utilitzar el terme fulles d'estil pot fer entendre que el funcionament és similar a la fulles d'estil CSS amb els documents HTML, que serveixen per a donar apariència al document i en aquest cas no sempre és així.

Podem dividir la família de llenguatges XSL en dos parts:

  • XSLT: Llenguatge de fulles d'estil per a la transformació de documents XML en altres documents XML. La finalitat d'aquesta transformació és mantenint la informació continguda en el document XML, canviar la seva estructura, és a dir, l'esquema associat al document.

  • XSL:FO: Llenguatges de fulles d'estil per a la formatació d'objectes. Dóna apariència a la informació d'un arxiu XML. S'utilitza com un pas intermedi cap a la publicació de documents XML: amb XSLT es transforma qualsevol format XML a aquest llenguatges de formatació, i en una fase posterior, el document obtés per aquesta transformació és finalment passat al format final com puga ser PDF per un processador XSL:FO.

A més d'aquest dos llenguatges, la família XSL també està composta pel llenguatge XPath: un llenguatge no XML que és utilitzat dintre de les fulles d'estil XSL per a accedir als diferents elements que componen l'estructura lògica d'un document XML. Té una sintaxi similar a la utilitzada per UNIX en el seu sistema d'arxius i està recollida a la recomanació W3C per a XPath. Amb aquest llenguatge les fulles d'estil poden recórrer l'estructura lògica en forma d'arbre que té un document XML i que ve donada pel seu esquema associat, localitzar els diferents elements i aplicar les transformacions.

3.1.5. La publicació de documents DocBook.

El document en format DocBook per sí mateixa no és adequat per a la presentació a una persona, resulta molt complicat extreure la informació d'entre mig de totes les etiquetes que componen el document. És per això que hem d'escollir un format per a presentar la informació que el document vol transmetre.

Si escollim DocBook com a format per a continguts d'una plataforma de teleformació, la presentació més adequada és l'HTML, ja que es pretén que la informació siga accessible a través de la web. Aprofitant la ventaja de que podem tindre múltiples presentacions del mateix contingut, el format PDF resulta adequat per a l'accés fora de línia d'aquesta informació, i per a la seva impressió en paper. Ja tenim dos formats per a publicar els documents.

3.1.5.1. El llenguatge HTML.

HTML (Acrònim de Hyper Text Markup Language, o llenguatge de marques d'hipertext), és un llenguatge de marques que deriva de l'SGML dissenyat per estructurar textos i relacionar-los en forma d'hipertext. Gràcies a Internet i als navegadors web, s'ha convertit en un dels formats més populars que existeixen per a la construcció de documents. El W3C és l'encarregat de formular aquest llenguatge, a la recomanació de HTML 4.0

En el context de la teleformació, la informació ha de ser accessible a través d'Internet, i l'HTML és un dels formats més estesos. També s'espera que la informació presentada a la plataforma de teleformació siga accessible, que estiga disponible per a totes les persones independentment del les seves condicions físiques i de la tecnologia emprada per a visualitzar-la. Aquest concepte d'accessibilitat s'explica amb profunditat més avant. I l'HTML és un llenguatge que té els elements suficients per a complir aquest objectiu.

3.1.5.2. La maquetació amb fulles d'estil CSS.

CSS (Acrònim de Cascading Style Sheet o Fulles d'estil en cascada) és un llenguatge formal usat per a definir la presentació d'un document estructurat escrit en HTML o XML (i per extensió en XHTML). El W3C (World Wide Web Consortium) és l'encarregat de formular l' especificació dels fulls d'estil CSS nivell 2 que servirà d'estàndard per als agents d'usuari o navegadors.

Segons les directrius d'accessibilitat definides pel W3C, la creació d'una web accessible passa per separar la presentació del contingut, mitjançant les fulles d'estil CSS. D'aquesta manera el codi HTML pot ser accessible i el resultat visual no té perque ser pobre.

Hi ha diversos llocs web dedicats a ensenyar el potencial que tenen les fulles d'estil CSS per al disseny web. A www.csszengarden.com o a www.camaleoncss.com es pot vore un exemple, de com un mateix codi HTML ben etiquetat pot donar lloc a dissenys molt espectaculars i diferents només per canviar la fulla d'estil CSS associada.

A més de l'accessibilitat l'ús de CSS per a la maquetació i disseny d'una web aporta més vantages, com per exemple reduir el tràfic d'un lloc web, ja que el mateix full d'estil s'aplica a tots els arxius HTML i només es carrega una vegada, també facilita el redisseny d'una web ja que no cal tocar el contingut.

3.1.5.3. El format PDF.

PDF (de l'anglès Portable Document Format, Format de Document Portàtil) és una forma d'emmagatzematge de documents, desenvolupat per l'empresa Adobe.

Degut al seu ampli ús ha esdevingut un estàndard de facte. L'especificació és oberta, permet fins i tot distribuir eines per a crear, visualitzar o modificar documents en format PDF com programari lliure i pot xifrar-se per a protegir el seu contingut. És el format més estes per als llibres electrònics.

Aprofitant una de les ventajes que ofereix el format DocBook, la de tindre múltiples presentacions per al mateix document, el PDF resulta adequat per a la impressió i visualització fora de línia.