Product SiteDocumentation Site

Codici di lingua

Subtag di nazione

L'unica parte del tag linguistico XML, obbligatorio in Publican, è il subtag linguistico. Tuttavia, Publican è progettato con l'assunzione che l'identificazione delle lingue includa regolarmente anche i subtag nazionali. In molte lingue, ortografia e vocaboli variano significativamente da nazione a nazione. Se non si specifica la varietà nazionale di una lingua, in cui il documento viene redatto o in cui viene tradotto, si potrebbero ottenere risultati inaspettati, alla creazione del documento in Publican.

Altri codici linguistici

Il sistema di codici nello standard XML, usato per identificare le lingue, non è l'unico sistema di codici linguistici, attualmente in uso nel mondo. Tuttavia, poichè Publican si sforza di essere compatibile con lo standard XML, questi sono gli unici codici supportati da Publican. In particolare, notare che i codici usati nei prodotti GNU (notabili per l'uso del carattere trattino basso e del simbolo @ per separare gil element — per esempio, en_GB o sr_RS@latin), non sono compatibili con lo standard XML e perciò non funzionano con Publican.
Publican è uno strumento di pubblicazione basato su XML e perciò progettato per l'uso di codici linguistici — o tag — delineati dal W3C (World Wide Web Consortium)[5] nelle specifiche XML. Questi codici sono definiti nel documento BCP 47: Tags for Identifying Languages,[6] dell'IETF (Internet Engineering Task Force).
I tag linguistici sono creati a partire da uno o più subtag, separati da trattini. In ordine di presentazione all'interno di un tag linguistico, questi subtag sono:
lingua-script-regione-variante
Il BCP 47 permette anche, con l'uso di subtag extension e subtag private-use, di creare notevoli tag linguistici per casi speciali. Un subtag extension consente una regolazione calibrata di subtag esistenti, ma che occorre registrare presso l'IETF (attualmente non esiste nessun tag registrato). Un subtag private-use è preceduto da x- e non necessita di registrazione. Subtag private-use a parte, un subtag è valido se è presente nel registro dei subtag mantenuti dall'IETF, attraverso l'autorità IANA (Internet Assigned Numbers Authority).[7] Sebbene Publican accetti ogni tag linguistico valido, secondo le regole stabilite nel BCP 47, esso è progettato con l'assunzione che i tag linguistici, per i documenti, assumano la forma lingua-nazione. Di seguito si riporta una breve descrizione dei subtag:
subtag lingua
Il subtag linguistico è composto da due o più lettere minuscole ed è l'unica parte obbligatoria di ogni tag linguistico. Per le principali lingue parlate, il subtag linguistico è un codice di due lettere identico ai codici linguistici specificati nell'ISO 639-1, [8] per esempio it (italiano), hi (hindi), es (spagnolo) ed en (inglese). Dove non esiste un codice di due lettere nell'ISO 639-1, il subtag linguistico solitamente è identico al codice specificato nell'ISO 639-2,[9] per esempio bal (baluchi: lingua iranica), apk (kiowa apache: lingua apache delle pianure) e tpi (Tok Pisin: lingua della Papua Nuova Guinea). Infine, un piccolo numero di subtag linguistici presenti nel registro presso l'IANA, sono privi di codici corrispondenti sia in ISO 639-1 sia in ISO 639-2, come i subtag per le lingue inventate qya (quenya: lingua elfica inventata da J.R.R.Tolkien) e tlh (klingon: lingua extraterrestre della serie Star Trek), e per la lingua occulta i-enochian (enochiano: lingua degli angeli inventata da E.Kelley). Quest'ultimo esempio, mostra anche un ristretto numero di subtag linguistici eccezionalmente inseriti nel registro, senza corrispondere al modello delle due o tre lettere derivato dgli standard ISO 639.

Subtag estesi di lingua

Il documento RFC 5646: Tags for Identifying Languages[10] pubblicato nel settembre del 2009, permette ai subtag estesi di lingua di aderire al subtag linguistico. I subtag estesi sono codici di tre lettere, rappresentanti lingue, che condividono una stretta relazione con una lingua già rappresentata da un subtag linguistico. Per esempio, yue, rappresentante la lingua cantonese, deve essere usato sempre con il subtag associato (cinese), quindi: zh-yue. L'IETF non riconosce l'RFC 5646 come la "Miglior Regola d'Arte", nè tantomeno questi tag fanno già parte dello standard XML.
subtag script
Il subtag di script è composto da quattro lettere — la prima maiuscola le altre minuscole — e definisce un sistema di scrittura o alfabeto. Questi codici sono identici alle quattro lettere di codice specificati in ISO 15924.[11] Il subtag di script è usato per identificare le lingue che comunemente usano più di un sistema di scrittura; il subtag viene omesso quando non aggiunge alcun valore distintivo al tag linguistico globale. Per esempio, sr-Latn rappresenta la lingua serba scritta con l'allfabeto latino, mentre sr-Cyrl rappresenta ancora la lingua serba ma scritta con l'alfabeto cirillico; quindi az-Arab e az-Cyrl rappresentano la lingua azera (dell'Azerbaijani), scritta rispettivamente, in alfabeto arabo e cirillico. D'altro canto, l'italiano non ha bisogno di specificare it-Latn in quanto, comunemente nel mondo, l'italiano è scritto solo con l'alfabeto latino.
subtag regione
Il subtag di regione è composto da due lettere maiuscole (per le regioni che coincidono con i confini nazionali) o da tre cifre (per altre aree, come le regioni trans-nazionali). I tag di due lettere sono identici a quelli definiti in ISO 3166-1[12], per esempio IT (Italia), TZ (Tanzania) e VE (Venezuela). I tag di tre cifre si basano su quelli definiti in UN M.49, [13] per esempio, 015 (Nord Africa), 061 (Polynesia) e 419 (America latina e Caraibi).
subtag variante
I subtag di variante, composti da lettere maiuscole, minuscole e cifre, identificano varianti riconoscibili, ben definite di una lingua o di una scrittura. I subtag di variante che iniziano con una lettera devono essere lunghi almeno cinque caratteri, mentre quelli che iniziano con una cifra, lunghi almeno quattro caratteri. I principali subtag di variante possono essere usati solo in combinazione con subtag specifici oppure in combinazione di subtag. I subtag di variante non si armonizzano con gli altri standard; essi sono il risultato di una registrazione separata, presso l'IETF, da parte di una persona o gruppo interessato.
Nello standard attuale, i dialetti di varie lingue sono designati con subtag di variante, per esempio, nedis denota un dialetto sloveno del Natisone o Nadiza. Questo subtag deve essere usato in congiunzione con il subtag della lingua slovena, quindi si ha sl-nedis. Nel settembre 2009, l'IETF ha pubblicato un RFC (Request for Comments) che tra le altre cose, propone di rappresentare i dialetti con i subtag di lingua estesa, da aggiungere ai subtag di lingua.[14]
I principali subtag di variante contrassegnano una particolare ortografia, la maggior parte usualmente dopo una riforma ufficiale di ortografia o dopo un significativo lavoro di documentazione sulla lingua. Esempi (con i relativi subtag di lingua) comprendono: fr-1606nicot (per la lingua francese come documentata da Jean Nicot nel 1606), de-1901 (per la lingua tedesca la cui ortografia è stata codificata dal 2nd Orthographic Conference nel 1901) e be-1959acad (per la linuga bielorussa come codificata dall'Orthography Commission nel 1959).
Infine, alcuni tag di variante denotano una particolare variante di un sistema di scrittura o di traslitterazione. Per esempio, zh-Latn-wadegile rappresenta la lingua cinese scritta con l'alfabeto latino, in accordo la sistema di traslitterazione sviluppato da Thomas Wade ed Herbert Giles; ja-Latn-hepburn la lingua giapponese scritta con l'alfabeto latino, usando il sistema di traslitterazione di James Curtis Hepburn.
Publican include supporto per le seguenti lingue: