[{TableOfContents}]

!Gli standard per le traduzioni

Abbiamo definito alcuni concetti per l'evoluzione delle traduzioni: 

Ci porteremo sui due formati XML standard seguenti: 
*XLIFF per la gestione delle frasi da tradurre 
*TMX per il repository delle frasi utilizzate dai servizi di Translation memory 


%%quote 
XLIFF sta per ''XML Localization Interchange File Format'' e TMX per ''Translation Memory eXchange''
/%
\\



L'idea principale alla base di questi standard è quella di globalizzare il problema delle traduzioni, creando dei formati aperti che da una parte permettano ai traduttori (spesso società specializzate o freelance) di lavorare con qualunque CAT Tool (Computer Assisted Translation Tool) XLIFF compliant, dall'altra di condividere le frasi già tradotte attraverso lo scambio di Translation Memory sotto forma di TMX 

Il tipico ciclo di vita della traduzione di software è illustrato sotto:

[{Image src='XLIFFgif.gif' align='center'}]


Per fare un esempio comprensibile al mondo Java:
* La SW-House scrive i messaggi in un file di properties
* La SW-H genera un file XLIFF dal file di properties (il file conterrà le frasi da tradurre)
* Il tradutture traduce le frasi contenute nell'XLIFF usando un qualunque editor, possibilmente aiutato da una TMX che fornisca la base per i suggerimenti
* La SW-H rigenera il file di properties tradotto dal file XLIFF tradotto


!L'approccio SMEA
Avremo servizi di SME.up per import/export da XLIFF 


Nel passato abbiamo già comprato SYSTRAN e TRADOS. 
Adesso stiamo cercando un software (preferibilmente WEB) per la gestione condivisa dei file XLIFF.
Gestiremo un DATABASE TMX alimentato sia da frasi SME.up che da tutti i TMX che troveremo in INTERNET o altre fonti che giudicheremo interessanti, ad esempio:
* il milione di TMX fornite dall'unione europea (rif. Carlo Cestana)
* le traduzioni in csv di alcune applicazioni Windows (rif. Carlo Cestana)

Gli obiettivi sono i seguenti:
* Gestire un repository comune delle frasi e delle loro traduzioni
** SMEUP avrà gli strumenti per esportare e importare le frasi
* Consentire le traduzioni
** Agli SME.upper
** Ai clienti
** Ai fornitori di traduzioni
* Gestire nelle frasi
** La contestualità (le frasi di una scheda)
** Traduzioni alternative
** Stato e validazione della traduzione

!Disponibilità di risorse esterne

I formati XML per la gestione delle traduzioni si stanno affermando nelle principali comunità open-source come sostituti dei vecchi formati testuali PO. 
Per questo esistono moltissimi progetti che affrontano le diverse tematiche del dominio, dai tool stand-alone per le traduzioni, ai gestori di TMX web-based e/o database-based,
fino alla API per l'accesso a file XLIFF e TMX scritte in diversi linguaggi. 


!Come ci siamo mossi
Convinti che si tratti di un problema che molti hanno dovuto affrontare e affrontano ogni giorno, abbiamo scandagliato il web e trovato diversi strumenti, che abbiamo scaricato e testato. Tra questi menzioniamo i più interessanti:
* Pootle e il [Translate Toolkit|http://translate.sourceforge.net/wiki/]. Si tratta di:
** vari tool di trasformazione da un formato verso altri (po2xliff csv2tmx properties2xliff ... )
** un motore che permette la verifica duplicati e che aiuta nell'utilizzo delle traduzioni fuzzy
** un tool __web __di condivisione traduzioni usato anche dalla comunità di sviluppatori Mozilla [Pootle|http://translate.sourceforge.net/wiki/pootle/index]. Ne abbiamo installata un'istanza su [http://gilberto.smea.it], ma viene avviata su richiesta. Il problema di Pootle è che è fortemente orientato al formato PO, anche se dichiara il supporto di XLIFF (v.1.0). __Inoltre non c'è stato molto tempo di testarlo, quindi se qualcuno è interessato a dedicarci qualche ora..__
* Open tran. [open-tran.eu|http://open-tran.eu/]. E' un servizio disponibile su internet o installabile in locale per la ricerca di frasi tradotte: data una frase da tradurre e un linguaggio di destinazione, cerca la frase già tradotta che più le somiglia, usando un'euristica piuttosto banale. Praticamente è un "suggeritore di traduzioni"
* è possibile interrogarlo attraverso il protocollo XRPC, per cui esistono implementazioni, tra gli altri, in Java.
* è utilizzabile off-line
* moltissime frasi sono già tradotte e sono on-line
* __si potrebbe usare come fonte di traduzioni => file TMX__

!Come procediamo?
*Rafforziamo la conoscenza degli strumenti che abbiamo reputato utili
*Potrebbe essere utile aggiungere al CMS telnext un modulo per la traduzione collaborativa, usando le api 
**[Locale4J|http://locale4j.sourceforge.net/]
**[File2XLIFF4j|http://file2xliff4j.sourceforge.net]
**[TMX2|http://sourceforge.net/projects/tmx2/]
*Si potrebbe cercare un prodotto open-source che abbia già un modulo per la gestione delle traduzioni, e distribuirlo insieme a Sme.up. Ad esempio [Project-Open|http://www.project-open.com/en/solutions/project-open-translation-agencies.html] oppure [Alfresco|http://www.alfresco.com]
* Si potrebbe collaborare con il progetto [TinyTM|http://tinytm.sourceforge.net] per la creazione di una webapp che interagisca con il db tinytm.

! Soluzione offerta dalla comunità Mozilla
Una soluzione alternativa potrebbe essere usare uno strumento specifico senza inventare nulla come ad esempio
[Translate Toolkit|http://translate.sourceforge.net/wiki/]. Tale software ha tra le sue caratteristiche principali:
* vari tool di trasformazione da un formato verso altri (po2xliff csv2tmx properties2xliff)
* un motore che permette la verifica duplicati e che aiuta nell'utilizzo delle traduzioni fuzzy
* la possibilità di installare un tool __web __di condivisione traduzioni usato anche dalla comunità di sviluppatori Mozilla [Pootle|http://translate.sourceforge.net/wiki/pootle/index]. 

Un esempio di utilizzo di Pootle è al link seguente [open-tran.eu|http://open-tran.eu/].



Infine per non sbagliare l'approccio è importante confrontarsi con persone che per lavoro affrontano giornalmente traduzioni di applicativi software (per info rif. Carlo Cestana).