Tradurre file XML in modo indolore: una missione impossibile?

(2 voti)
Tradurre file XML in modo indolore: una missione impossibile?

Nell’ambito della nostra collaborazione come docenti di OmegaT con l’Universitat Autònoma di Barcellona (UAB), nello specifico con il Master in Tradumática, per due anni abbiamo coordinato nelle vesti di tutor il lavoro di tesi degli studenti, i quali dovevano affrontare un progetto di traduzione dall’inglese in spagnolo e catalano di programmi informatici reali, alcuni dei sistemi sviluppati nell’ambito del Public Knowledge Project.

Questo progetto di localizzazione ci serve da esempio perfetto per illustrare come preparare e tradurre file XML con strumenti di localizzazione e traduzione open-source, l’oggetto di questo articolo.

Il progetto PKP è un’iniziativa di diverse università tesa allo sviluppo di software libero per migliorare la qualità delle pubblicazioni accademiche. Questo progetto ha dato come risultato alcune applicazioni fra le più usate in ambito universitario per la gestione delle pubblicazioni accademiche (Open Journal Systems), delle monografie (Open Monograph Press), delle conferenze (Open Conference Systems) e per l’indicizzazione dei relativi metadati (Open Harvester Systems).

Trattandosi di sistemi open-source, aperti e senza scopo di lucro, alcuni di essi sono stati scelti anche dalla UAB per il funzionamento interno. Era quindi naturale che si stabilisse una collaborazione fra l’ufficio Pubblicazioni e il Master in Tradumática, consentendo agli studenti di localizzare in catalano e in spagnolo le parti dei programmi ancora non tradotte.

I progetti di localizzazione che abbiamo coordinato sono quelli di OMP (Open Monograph Press) e di OCS (Open Conference Systems) e, in quanto tali, non si differenziano da un qualsiasi progetto commerciale. Hanno presentato infatti tutte le difficoltà insite nel tradurre stringhe fuori contesto, estratte da centinaia di file diversi, con l’impiego di materiale di riferimento non del tutto coerente e - per forza di cose - di strumenti perfettibili e soprattutto poco noti. Insomma, sono stati un’ottima palestra non solo per gli studenti del master, che dovranno affrontare questi problemi quotidianamente se vorranno lavorare nel campo della localizzazione di software o web, ma anche per chi ha dovuto supervisionare e coordinare l’attività di una mezza dozzina di gruppi costituiti da 3-4 persone ciascuno, con scadenze piuttosto serrate.

Per i nostri scopi è interessante osservare come, con l’ausilio di un programma tuttofare, la suite di programmi Okapi Framework (di cui abbiamo già parlato in altri articoli), sia possibile preparare qualsiasi file XML per poterlo tradurre comodamente nello strumento di traduzione che più ci aggrada. Ci si potrebbe chiedere perché convertire un file XML nel formato XLIFF quando quasi tutti i CAT tool consentono di tradurre XML direttamente. Intanto, non tutti i CAT tool consentono di definire in modo semplice quali sono gli elementi traducibili di un file XML e quali invece vanno protetti da etichette (i famosi tag). Usando uno strumento esterno sofisticato come Okapi si possono preparare tutti i tipi di file XML, con il vantaggio ulteriore di essere indipendenti dal CAT tool e quindi di poter passare il progetto a chiunque, senza essere legati a un CAT tool specifico. Una volta creato il file XLIFF, questo si può mandare ai traduttori, consentendo loro di tradurlo con qualsiasi strumento in grado di leggere un XLIFF, liberando i traduttori dall’incombenza di dover configurare il programma di traduzione assistita.

I due video presentati qui, in spagnolo ma con sottotitoli in italiano1, inizialmente registrati per gli studenti del master (e per questo un po’ informali) spiegano qual è la struttura dei file traducibili del pacchetto OMP preso ad esempio e il procedimento per creare l’apposito filtro per Rainbow/Okapi. Lo stesso procedimento può essere applicato a qualsiasi programma che presenta i testi da tradurre sotto forma di XML. Non a caso, l’approccio è uguale a quello descritto nell’articolo “Come tradurre un corso di Moodle”, a cui rimandiamo per ulteriore approfondimento (l’articolo è in inglese). Lo possiamo riassumere in questi passaggi:

  1. analisi dei file XML per individuare elementi e attributi traducibili;
  2. creazione dell’apposito file di configurazione per il filtro XMLStream di Rainbow/Okapi;
  3. conversione dei file XML in XLIFF mediante Rainbow;
  4. verifica che tutto il contenuto traducibile sia effettivamente esposto e che quello non traducibile sia correttamente taggato;
  5. fase di traduzione e revisione;
  6. procedimento di riconversione, da XLIFF a XML
  7. testing linguistico e funzionale dall’interno dell’applicazione.

Nello specifico dei due progetti qui esposti, il procedimento è stato un po' più complesso, perché alla fase di preparazione dei file si è aggiunta una fase di estrazione terminologica e la suddivisione del progetto fra i vari gruppi di lavoro. Schematicamente, le fasi sono state:

  1. estrazione dei file che costituiscono il pacchetto da tradurre, ovvero quelli in inglese, in una cartella;
  2. analisi dei file DTD per capire quali fossero gli elementi e gli attributi traducibili dei relativi file XML;
  3. creazione del filtro con Okapi Rainbow, seguendo le istruzioni contenute nel Wiki di Okapi, precisamente le pagine su XML Stream Filter e HTML Filter;
  4. a questo punto si copia il filtro nella cartella principale del pacchetto da tradurre;
  5. si trascinano i file in Rainbow;
  6. impostazione delle lingue corrette e della codifica UTF8;
  7. impostazione del percorso al file di configurazione;
  8. selezione di tutti i file e modifica del tipo di filtro predefinito (usando quello appositamente creato);
  9. conversione a XLIFF;
  10. eventuale risoluzione di errori dovuti a sintassi scorretta degli originali. Nel caso in questione, si è verificato un errore dovuto a una sovrabbondanza di CDATA in uno dei file, che ho corretto intervenendo manualmente sul file stesso;
  11. dopo la conversione, estrazione dei termini più ricorrenti con l'apposita funzione di estrazione terminologica statistica di Rainbow;
  12. successivamente, creazione di un progetto in OmegaT per ogni lingua di arrivo;
  13. aggiunta delle memorie di traduzione e dei glossari corrispondenti, penalizzando le memorie provenienti da fonti non affidabili;
  14. analisi dei file a vista, per riscontrare eventuali errori di segmentazione;
  15. modifica ad hoc delle regole di segmentazione in OmegaT;
  16. conteggio-analisi dei file;
  17. suddivisione dei file fra i vari gruppi di lavoro. 

Restiamo a disposizione per eventuali domande attraverso lo spazio dei commenti sottostante.


1) Sull’importanza di sottotitolare i video rimandiamo all’articolo “3 motivi per cui dovresti sottotitolare i tuoi video” e successivi.

Qabiria white logo

Crediamo nell’aumento della produttività attraverso l’uso creativo della tecnologia.

il traduttore insostituibile

Ultime notizie

Contatti

Qabiria Studio SLNE
Carrer Lleida, 3 1-2
08912 Badalona
(Barcelona)
SPAGNA

+34 675 800 826

qabiria

Inviaci un messaggio

Ricevi la newsletter

Vuoi leggere gli articoli e le novità di Qabiria direttamente nella posta?