Les dades estructurades inclouen objectes com
ara els fulls de càlcul, les llibretes d'adreces, els paràmetres de
configuració, les transaccions financeres o els dibuixos tècnics. XML
és un conjunt de regles (si voleu, podeu considerar-les com directrius
o convencions) per a dissenyar documents de text, les quals permeten
l'estructuració de les dades. XML no és un llenguatge de programació;
per tant, no cal que sigueu programadors o programadores per usar-lo
o per aprendre'l. XML facilita que l'ordinador generi dades, en llegeixi,
o s'asseguri que l'estructura de les dades no és ambigua. XML evita
problemes típics del disseny de llenguatges: és extensible,
independent de la plataforma, i suporta la internacionalització i la
traducció. XML és completament compatible amb Unicode.
Com HTML, XML fa servir marques
(paraules entre '<' i '>') i atributs (de la forma
nom="valor"
). Mentre que HTML especifica què vol dir
cada marca i cada atribut i, sovint, quina aparença tindrà el text que
hi ha entre les marques en un navegador, XML usa les etiquetes només per a
delimitar porcions de les dades, i deixa la interpretació de les dades
completament en mans de l'aplicació que les llegeix. Dit d'una altra
manera, si veieu "<p>" en un document XML, no assumiu que es
tracta d'un paràgraf. Dependrà del context: pot ser un preu, un
paràmetre, una persona, un p... (i qui diu que hagi de ser una paraula
que comenci per "p"?).
Els programes que produeixen fulls de càlcul, llibretes d'adreces i
altres dades estructurades poden guardar aquestes dades en el disc
usant un format binari o un format de text. Un avantatge dels formats de text és
que permeten que les persones, si és necessari, puguin veure les dades
sense el programa que les va produir, perquè el format de text el
podeu llegir amb el vostre editor preferit. Els formats de text també
permeten que els desenvolupadors puguin depurar més fàcilment els
programes. Com els fitxers HTML, els fitxers XML són textos que les
persones no haurien de llegir, però que poden ser llegits si es fa
necessari. A diferència de HTML, les regles dels fitxers XML són
estrictes. L'oblit d'una marca o de les cometes al voltant d'un
atribut fan el fitxer XML inservible, mentre que en HTML aquestes
pràctiques es toleren o es permeten explícitament. L'especificació
oficial de XML prohibeix que els programes d'aplicació intenten endevinar
les intencions de l'autor d'un document XML erroni; si el fitxer és
erroni, l'aplicació s'ha d'aturar allà mateix i produir un missatge
d'error.
Com que XML és un format de text i usa marques
per a delimitar les dades, els fitxers XML són quasi sempre més
grossos que els formats binaris corresponents. Aquesta va ser una
decisió deliberada dels dissenyadors de XML. Els avantatges d'un
format de text són evidents (vegeu el punt 3), i els desavantatges
normalment es
poden compensar a un altre nivell. L'espai en disc és ara més barat
que solia, i els programes compressors com gzip poden
comprimir fitxers molt bé i molt ràpidament. A més, els protocols de
comunicació com ara com els protocols dels mòdems o HTTP/1.1, el protocol
bàsic de la Web, poden comprimir les dades al vol i estalviar ample
de banda tan eficientment com quan s'usen formats binaris.
XML 1.0
és la especificació que defineix què són les "etiquetes" i els
"atributs". Més enllà de XML 1.0, "la família XML" és un conjunt
com més va més gros de mòduls que ofereixen serveis útils per a
realitzar tasques importants i freqüentment exigides. Xlink descriu una manera estàndard
d'afegir hiperenllaços a un fitxer XML.
XPointer i
XFragments són sintaxis en desenvolupament per a apuntar a
parts d'un document XML. Un XPointer és una mica com un URL, però en
comptes d'apuntar a documents en la Web apunta a porcions de dades
dins d'un fitxer XML. CSS, el llenguatge dels fulls
d'estil, és aplicable tant a XML com a HTML. XSL és el llenguatge avançat per a
expressar fulles d'estil. Està basat en XSLT, un llenguatge de
transformació usat per a reordenar, afegir i esborrar marques i
atributs. DOM és
un conjunt estàndard de funcions per a manipular fitxers XML (i HTML)
des d'un llenguatge de programació. Els esquemes XML 1
i 2 ajuden els
desenvolupadors per a definir amb precisió les estructures dels formats propis
basats en XML. Hi ha diversos mòduls i eines disponibles o en
desenvolupament: vigileu la pàgina d'informes
tècnics del W3C.
El desenvolupament de XML va començar el 1996 i ha
estat una norma W3C des de febrer del 1998, cosa que us pot fer
sospitar que es tracta d'una tecnologia més aviat immadura.
Però, de fet, la tecnologia no és tan nova. Abans de XML hi havia
SGML, desenvolupat als primers vuitanta, estàndard ISO des de
1986, i àmpliament usat per a grans projectes de documentació. El
desenvolupament de HTML va començar el 1990. Els dissenyadors de XML
senzillament van agafar les millors parts de SGML, guiats per
l'experiència amb HTML, i van produir quelcom que no és menys potent
que SGML, però radicalment més regular i més senzill d'usar. Algunes
evolucions, això no obstant, són difícils de distingir de les
revolucions... I s'ha de dir que mentre SGML s'usa fonamentalment per
a la documentació tècnica i molt menys per a altres classes de dades,
amb XML succeeix exactament al revés.
Hi ha una important aplicació XML que és un format de document:
XHTML, del W3C, el successor d'HTML. XHTML té molts dels elements de
HTML. S'ha canviat la sintaxi perquè segueixi les regles de XML. Un
document que està "basat en XML" hereta la sintaxi de XML i
la restringeix en determinats aspectes (per exemple, XHTML permet
"<p>", però no "<r>"); també afegeix significat a aquesta
sintaxi (XHTML diu que "<p>" vol dir "paràgraf", no "preu", ni
"persona", ni cap altra cosa).
XML us permet definir un nou format de
document tot combinant i reutilitzant d'altres formats. Com que dos
formats desenvolupats independentment poden contenir elements o
atributs amb el mateix nom, s'ha de tenir cura quan es combinen (vol
"<p>" dir "paràgraf" com diu aquest format o "persona" com diu
aquell altre?). Per a eliminar la confusió de noms quan es combinen
formats, XML ofereix un sistema d'espais de noms. XSL i RDF són bons exemples de formats
basats en XML
que usen espais de noms. Els esquemes XML estan
dissenyats per a emular aquest suport de la modularitat, ja que
simplifiquen la combinació d'esquemes per a produir un tercer que
cobreix una estructura fusionada de documents.
XML proporciona una sintaxi
no ambigua per al RDF del W3C, el llenguatge per a expressar metadata
(de fet, coneixement en general). RDF és com l'hipertext elevat al
següent nivell. Mentre l'hipertext enllaça porcions de text
especificant la relació entre ells només vagament, RDF pot enllaçar
qualsevol cosa amb qualsevol cosa i assigna noms a les relacions: "A
és el preu de B" pot ser la relació entre un objecte i una quantitat
de diners; "A és més pesat que B" pot ser la relació entre dos
lluitadors de sumo;
"A és la causa de B" pot ser la relació entre un xàfec i el fet que
estigueu mullats. Per a comunicar coneixement, tant en XML/RDF com en
català planer, tant les màquines com les persones s'han de posar
d'acord sobre quins mots cal usar. Un conjunt acuradament definit de
mots que descriuen un determinat àmbit de la vida (des de "anar de compres" a
"lògica matemàtica") s'anomena una "ontologia". RDF, les ontologies,
i la representació del significat de manera que els ordinadors puguin
ajudar les persones a treballar són alguns dels temes de les activitats sobre la Web semàntica.
Si elegiu XML com a base per a un projecte, accediu a una comunitat
com més va més gran d'eines (alguna de les quals pot fins i tot fer ja
el que necessiteu) i d'enginyers amb experiència en la
tecnologia. Optar per XML és una mica com elegir SQL per a les bases
de dades: encara heu de construir la vostra pròpia base de dades i els
vostres propis programes que la manipulen, però hi ha moltes eines
disponibles i molta gent que us pot ajudar. I, com que XML no
necessita llicència, podeu muntar el vostre programari sobre XML sense
haver de pagar res a ningú. El fet que el suport siga gran i creixent
comporta que no estigueu lligats a un únic proveïdor. XML no és
sempre la millor solució, però sempre mereix ser considerada.
Copyright © 1999-2000 W3C® (MIT, INRIA, Keio), All Rights Reserved.