Una introducció realment bàsica a l’XML

Aquest apunt és una traducció de l’article XML basics… and I do mean basics! d’Alex Painter, publicat a BookMachine el 15 de maig de 2013. Com que em va agradar molt (sobretot perquè el vaig entendre a la primera!), el vaig desar i escampar per les xarxes. Ja llavors algú em va suggerir que no estaria malament traduir-lo, cosa que va passar a la carpeta d’idees… Fins i tot vaig demanar permís per Twitter als de BookMachine i em van dir que sí, però no vaig acabar de posar fil a l’agulla. Ara que estic fent un curs de traducció de pàgines web (a veure si ententen millor tot això s’amplien les possibilitats de feina), m’ha semblat un bon moment. En el fons només és un exercici, però el deixo aquí penjat per si fa servei a algú.

lights_lines_bright_

Aquest text és una introducció molt bàsica a l’XML (extensive markup language, ‘llenguatge d’etiquetatge extensible’). Si penseu que l’XML és només per als que hi entenen de tecnologia o de fet no teniu gaire idea de què és, aquest text està escrit per a vosaltres.
 

Quan era petit, vaig tenir un rellotge digital (sóc prou gran per recordar-me de quan els rellotges digitals eren una novetat fascinant). Un dia, estava molt avorrit i tenia molta curiositat. Vaig decidir desmuntar-lo per veure com funcionava.

L’experiència va ser decebedora. Vaig donar el primer cop d’ull a l’interior i vaig pensar: «És impossible que mai arribi a saber què passa aquí dins».

Això és més o menys el que vaig pensar la primera vegada que vaig veure un tros de codi informàtic. He dit «codi informàtic» encara que de fet això no signifiqui gran cosa, perquè el cert és que no em recordo de què era el que em mirava. Només que era una cosa d’ordinadors. I no s’entenia gens.

Per tant, si mai heu obert un fitxer XML, heu vist el que us ha semblat una colla de signes de puntuació escampats de qualsevol manera, i de tant en tant paraules que potser tenien sentit o potser no, i heu pensat «jo plego», conec perfectament aquesta sensació.

La veritat és que un fitxer XML pot semblar molt complicat.

Però en realitat és terriblement senzill, fins al punt de resultar gairebé absurd.

De fet, crec que si es té aquesta idea clara, la batalla ja està mig guanyada. És molt fàcil dir-se: «Això és una cosa tècnica, no fa per a mi, no ho entendré mai». Ho sé perquè jo pensava exactament el mateix.

Però en realitat, només cal saber una mica de terminologia i un parell de normes senzilles, i ja ho tens.

1. Què fa l’XML?

Doncs de fet, no gaire cosa. L’XML és només una manera d’emmagatzemar la informació. Però resulta útil perquè l’emmagatzema de tal manera que els programes informàtics la poden utilitzar fàcilment per fer moltes coses.

2. Els elements

Els elements són les peces que formen un arxiu XML. Us podeu imaginar que un element és com una capsa amb informació a dins.

Normalment, un element té tres parts:

a) Una etiqueta d’inici. Així és com se sap que comença un element! Té un aspecte més o menys així:

<elementTal>

b) Contingut. És la informació que s’hi vol emmagatzemar.

c) Una etiqueta de final. S’assembla molt a l’etiqueta d’inici, només que té una barra inclinada després del signe <:

</elementTal>

Per tant, un element sencer seria una cosa així:

<elementTal>Informació que vull desar-hi</elementTal>

L’XML distingeix entre majúscules i minúscules, per tant cal assegurar-se que les lletres de l’etiqueta de final són idèntiques a les de la d’inici.

3. Li puc posar a un element el nom que vulgui?

En general, sí. Li podeu posar <elementTal>, si de debò ho voleu, però el més habitual és preferir un nom una mica més descriptiu.

L’important és que no hi ha cap llista predeterminada d’elements XML.

Això no obstant, alguns fitxers XML, com ara els que van inclosos en un document ePub, han d’incloure determinats elements amb uns noms determinats. Així, el programari lector de llibres electrònics sap què ha de fer amb el contingut d’aquests fitxers.

Hi ha unes quantes regles per posar noms als elements. Per exemple, s’hauria de començar amb una lletra o un guió baix i (sense entrar en detalls) és millor no fer servir puntuació.1 Ah, i el nom de l’element no pot començar amb les lletres xml.

4. Puc posar un element dins d’un altre?

I tant que sí!

De fet, es poden incrustar molts elements diferents dins d’altres elements.

Aquest exemple conté informació sobre un llibre:

<llibre>2

<titol>Guia de monstres marins</titol>

<autor>

<pseudonim_autor>Capità Ahab von Herman</pseudonim_autor>

<nom_real_autor>J. Bloggs</nom_real_autor>

</autor>

<primera_edicio>2010</primera_edicio>

</llibre>

Tots els documents en XML han de tenir un element arrel (només un!), que conté tots els altres elements. En l’exemple anterior, l’element arrel podria ser <llibre>. Però si hi volguéssim incloure més d’un llibre, hauríem de crear una altra arrel.

Per exemple:

<cataleg_llibres>

<llibre>

<titol>Guia de monstres marins</titol>

<autor>

<pseudonim_autor>Capità Ahab von Herman</pseudonim_autor>

<nom_real_autor>J. Bloggs</nom_real_autor>

</autor>

<primera_edicio>2010</primera_edicio>

</llibre>

</cataleg_llibres>

5. Els atributs

Un atribut conté una mica més d’informació sobre un element. Per exemple, agafem l’exemple del llibre i suposem que volem incloure-hi el preu. Hi podríem afegir un element amb el preu:

<preu>9,99</preu>

Però potser també volem incloure informació sobre en quina moneda està el preu. Ho podríem fer afegint un atribut de moneda:

<preu moneda=”EUR”>9,99</preu>

Els noms dels atributs, com els dels elements, els defineix l’usuari, tot i que també hi ha algunes normes sobre com es pot dir un atribut i com no.

6. L’última coseta…

Gairebé ja tenim tot el que cal per crear un document XML. Només ens falta una cosa: una declaració XML, que l’identifica com un document XML i també pot incloure una mica més d’informació.

Tindria un aspecte més o menys així:

<?xml versio=”1.0” codificacio=”UTF-8”?>

Es posa ben bé al principi del document i serveix per indicar a qualsevol ordinador que el llegeixi com l’ha de tractar.

7. I tot això, per a què era?

Això ens porta a l’última cosa que volia dir. L’XML és útil perquè té una estructura fixa que els ordinadors poden manejar fàcilment. Quan s’ha etiquetat la informació en un fitxer XML, s’hi poden fer moltes coses. Per exemple, es podria fer servir per crear una base de dades on fer cerques o un catàleg de productes a Internet.

Aquesta guia és molt breu, i no està ni de bon tros completa, però espero que us demostri que l’XML no és tan terrible com sembla a primera vista.

Crec que això és important.

Potser d’altres no hi estaran d’acord, però crec que vivim en un moment en què a tots ens convé entendre de tecnologia, ni que sigui una miqueta. Recordo que fa temps em pensava que qualsevol que pogués fer coses amb ordinadors tenia poders gairebé de bruixeria. Quan es parla de genis de la informàtica, hi ha qui s’imagina que són com el de la llàntia.

I si bé no tots podem ser capaços d’escriure codi com els àngels, crec que almenys tenir un vocabulari compartit amb els que sí que en saben ens ajudarà a treballar millor plegats.

 

Notes de la t.

1. No ho he mirat, però diria que els accents i els caràcters estranys també són una mala idea.

2. En el món real, no em sorprendria que aquestes etiquetes estiguessin en anglès, ni que fos un anglès aproximat. Però com que aquí l’objectiu és entendre com funcionen, les poso en català, que queda  més clar.


Ampliant horitzons

Bé, ja ha arribat la crisi. Després d’anys d’anar empalmant sempre projectes més o menys intensos i concentrats, pel novembre em vaig estar un parell de setmanes, amb l’agenda buida, i des d’abans de festes que la cosa està molt aturada i aparentment sense ganes d’animar-se… Bé, per sort vaig aprofitar les èpoques bones i tinc reserves per anar tirant mentre miro de solucionar-ho.

pencilsEntre altres coses, aprofito que tinc més temps per dedicar-ne a la formació, per aprendre coses noves i recordar-ne d’altres (bé, en això faig cas al que es recomana en aquests casos). Així, abans de Nadal vaig fer un parell de cursets de temes que no toco habitualment però que són útils a la feina.

Per començar, vaig fer un curs d’estratègies de màrqueting a APTIC. Que quedi clar, el màrqueting no m’agrada. Gens. Sóc conscient que com a autònoma sóc empresària (ja es preocupen els de la Seguretat Social i Hisenda de recordar-m’ho), però en el meu cas ho sóc si us plau per força; res a veure amb l’«emprenedoria» aquesta que tant promocionen. Tinc la sensació que els «plans d’empresa» em venen grans, i la necessitat de «vendre’m» més o menys constantment és una de les coses que més costa amunt se’m fa d’aquest ofici. És a dir, que tinc moltes coses per aprendre i millorar. D’altra banda, m’agrada escoltar de tant en tant la gent amb un clar esperit empresarial i comercial —encara que segons com em semblin d’un altre planeta—, observar la seva manera de fer i de veure les coses i gaudir del seu entusiasme. (De, fet escoltar gairebé a qualsevol parlar d’una cosa que l’apassiona pot ser fascinant, independentment que hi estiguis més o menys d’acord.) La professora del curs, la Sílvia Sabrià de Tick Translations, seria una d’aquestes persones, i ho va fer força bé.

A hores d’ara ja és tard per fer un resum del curs, però sí que deixaré apuntades unes quantes idees generals que em van quedar: que el màrqueting és sobretot anàlisi i que s’ha de pensar i planejar molt abans d’actuar; que els traductors, sovint tímids de mena, hauríem de perdre la por al telèfon (tot arribarà), i que cal recordar-se d’escoltar el client, per saber què vol i necessita, i posar-se en lloc seu. També vaig anotar unes quantes coses més concretes, idees per anar concretant i posant en marxa en un termini raonable (fer allò que en diuen un «pla de màrqueting» encara ho veig massa gros). I miraré de no arxivar massa profundament els apunts per rellegir-los de tant en tant…

indesPer canviar de tema, al cap d’uns quants dies vaig anar al Cibernàrium a fer una petita introducció a l’InDesign, un programa d’autoedició. No és que ara pensi posar-me a maquetar (ja hi ha prou gent que ho fa millor que jo), però sí que volia posar-me una mica al dia amb aquest programari, per poder afegir textos o entrar correccions sense fer cap desgavell. Quan treballava en plantilla, o després quan anava sovint a corregir proves i tancar revistes a l’oficina d’un client, era una cosa que em tocava fer de tant en tant, i les versions de Quark que remenava aleshores ja deuen ser de la prehistòria… Però per sort vaig veure que la cosa no ha canviat tant i que encara me’n sortiria. A més, em va servir per fer una repassada d’aquest programa i de la maquetació en general des del punt de vista d’un professional del gremi, que sempre està bé. Gairebé tot el que corregeixo o tradueixo acaba maquetat, per tant voler saber més de la feina de dissenyadors i maquetadors per col·laborar millor amb ells és simplement qüestió de lògica. També me’n vaig endur un PDF amb apunts (i de retruc, els del nivell avançat) per tenir una referència si mai m’hi trobo.

Segurament el mes que ve tornaré al Cibernàrium, perquè la informàtica és el nostre pa de cada dia i tenen un model de cursos breus i gratuïts que em va força bé. No aconsegueixo trobar una introducció al llibre electrònic que hi havia fa anys i que mai no vaig aconseguir fer per falta de places, però hi he vist dues o tres coses interessants. També m’aniré posant al dia amb lectures i relectures, recuperaré l’escriptura al bloc i li rentaré la cara, endreçaré allò i faré allò altre… No, si de feines no en falten i tard o d’hora en sortirà alguna de remunerada. Ja us ho explicaré, espero.

***

Ostres! M’havia oblidat de dir que ja ha sortit el calendari d’activitats d’APTIC per al primer semestre del 2013. A aquestes ho tinc més complicat per anar-hi, perquè fora de l’horari escolar la planificació és més complicada i moltes són a l’hora de recollir-sopar-dormir de la menuda, quan és imprescindible la presència de la seva senyora mare. Tot i això, n’hi ha de temptadores. També les solen emetre simultàniament en streaming (i de vegades també en diferit), però per mi perden gran part de la gràcia, que per aquestes coses prefereixo sortir i veure gent.

 


Un (projecte de) corrector ortogràfic i de gramàtica en català

Llegeixo a De l’Holocè estant una ressenya sobre un nou corrector d’ortografia i gramàtica en català, que a més és programari lliure. Es diu El Corrector (gran nom!) i és un projecte del Grup de Lingüística Computacional de la Pompeu Fabra per a la Generalitat, amb versió en línia i també per a tres plataformes: Windows, Linux i Mac. I sembla que, a més de com a aplicació independent la idea és que funcioni també integrats en diferents programes: els de l’Open Office, l’Office de Microsoft i alguns navegadors. A Softcatalà també se’n fan ressò, si bé allà l’anomenen Cotig.

M’ho vaig a mirar de seguida, perquè des que van deixar de desenvolupar el meu estimat Escriu, el tema de trobar un corrector ortogràfic en català per al Word estava negre: els de Microsoft n’han promès un diccionari per a la versió del 2008, però el seu corrector no ha estat mai cap alegria. En altres aplicacions, el diccionari incorporat fa poc al Firefox va ser un gran què, i fa segles que penso que provaré l’Aspell quan em sobri temps. Però si es tracta de tocar la gramàtica (és a dir, adonar-se que coses com «els nen» no són correctes, per exemple), que jo sàpiga no hi havia res de res.

Un cop visitada la pàgina, però, sembla que ens tocarà esperar. Cap de les versions del programa ha arribat a la número 1.0, i pel que veig la de Mac està més verda que la de Windows: no hi ha connectors per a cap editor de textos (i per al Firefox no n’estic segura) i per fer servir l’aplicació tota sola cal entrar al Terminal i teclejar instruccions d’aquestes incomprensibles de Unix, cosa que als que vam anar a parar al Mac per estalviar-nos allò del «C: no-sé-què» ens fa una por terrible… En cas de necessitat, però, ja es poden corregir textos via web en aquesta pàgina.

Doncs això, esperem que acabin de desenvolupar-lo i que la versió final sigui realment multiplataforma. Atès que al darrere hi ha diner públic, suposo que les minories informàtiques podem demanar que ens facin cas, oi?

—–

Afegit: Trobareu una mica més d’informació sobre correctors de català per a Mac en aquest altre apunt.