|
Extensiones de archivo |
.xlf, .xliff |
|
Extensión API |
xlf |
|
Importación |
Sí |
|
Exportación |
Sí |
|
Compatibilidad con formularios plurales |
Sí |
|
Compatibilidad con descripción |
Sí |
|
Opciones de formato Estas opciones que se pueden especificar cuando se carga y/o descarga un archivo. Dependiendo del método de carga/descarga (API, CLI, sincronización de repositorios, etc.), se pueden especificar en parámetros de consulta |
enclose_in_cdata include_translation_state indent_size indent_style ignore_source_translations ignore_target_translations export_key_id_as_resname export_key_name_hash_as_extradata override_file_language strip_placeholder_delimiters delimit_placeholders |
El formato de archivo más utilizado en la industria de la traducción. Se puede ver como el espejo del archivo fuente que descompone el contenido fuente en varios segmentos almacenados en etiquetas (por ejemplo, <trans-unit>, <seg-source>).
XLIFF es XML basado y está sujeto a las convenciones básicas de XML, como la validez y estar bien formado. Siempre completa una verificación de cordura antes de la traducción cambiando la extensión del archivo de .xliff (.xlf) a .xml y abriéndolo en un navegador web. Si el archivo es válido, se presenta una estructura de documento bien organizada y, si no, será inrenderizable o tendrá un mensaje de error.
XLIFF fue actualizado con XLIFF 2.0. Es similar al XLIFF más utilizado, pero es un formato de archivo diferente, generalmente incompatible con XLIFF.
Xcode puede empaquetar cadenas localizables en el formato estándar de la industria XLIFF para ser enviadas para localización con Phrase.
Opciones de formato
|
Identificador |
enclose_in_cdata |
|
Tipo |
Booleano |
|
Carga |
No |
|
Descarga |
Sí |
|
Por defecto |
false |
|
Descripción |
Encierra traducciones que contienen etiquetas html en CDATA. Si está deshabilitado, las entidades HTML no soportadas se reemplazan con sus valores decodificados. Por ejemplo:
|
|
Identificador |
include_translation_state |
|
Tipo |
Booleano |
|
Carga |
No |
|
Descarga |
Sí |
|
Por defecto |
false |
|
Descripción |
Incluir estado de las traducciones en la localización objetivo. Cada |
|
Identificador |
indent_size |
|
Tipo |
integer |
|
Carga |
No |
|
Descarga |
Sí |
|
Por defecto |
4 |
|
Descripción |
Especifica el número de caracteres de sangría |
|
Identificador |
indent_style |
|
Tipo |
cadena |
|
Carga |
No |
|
Descarga |
Sí |
|
Por defecto |
espacio |
|
Descripción |
Especifica el carácter de sangría. Los valores permitidos son |
|
Identificador |
ignore_source_translations |
|
Tipo |
Booleano |
|
Carga |
Sí |
|
Descarga |
No |
|
Por defecto |
false |
|
Descripción |
Ignora las traducciones de origen en el archivo durante la carga (para evitar actualizaciones accidentales del idioma de origen) |
|
Identificador |
ignore_target_translations |
|
Tipo |
Booleano |
|
Carga |
Sí |
|
Descarga |
No |
|
Por defecto |
false |
|
Descripción |
Ignora las traducciones de destino en el archivo durante la carga (para evitar actualizaciones accidentales del idioma de origen) |
|
Identificador |
export_key_id_as_resname |
|
Tipo |
Booleano |
|
Carga |
No |
|
Descarga |
Sí |
|
Por defecto |
false |
|
Descripción |
Exporta el ID de clave como el atributo resname. |
|
Identificador |
export_key_name_hash_as_extradata |
|
Tipo |
Booleano |
|
Carga |
No |
|
Descarga |
Sí |
|
Por defecto |
false |
|
Descripción |
Exporta el hash del nombre de clave como el atributo extradata. |
|
Identificador |
override_file_language |
|
Tipo |
Booleano |
|
Carga |
Sí |
|
Descarga |
No |
|
Por defecto |
false |
|
Descripción |
Este formato de archivo típicamente contiene información del idioma en el propio archivo. Usa esta opción para anular el idioma con uno que especifiques. |
|
Identificador |
strip_placeholder_delimiters |
|
Tipo |
Booleano |
|
Carga |
Sí |
|
Descarga |
No |
|
Por defecto |
false |
|
Descripción |
Elimina las etiquetas |
|
Identificador |
delimit_placeholders |
|
Tipo |
Booleano |
|
Carga |
No |
|
Descarga |
Sí |
|
Por defecto |
false |
|
Descripción |
Envuelve los marcadores de posición de traducción en etiquetas |
Ejemplo de código
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file original="global" datatype="plaintext" source-language="de-DE" target-language="en-GB">
<body>
<trans-unit id="boolean_key">
<source xml:lang="de-DE">--- true
</source>
<target xml:lang="en-GB">--- true
</target>
</trans-unit>
<trans-unit id="empty_string_translation">
<source xml:lang="de-DE"/>
<target xml:lang="en-GB"/>
</trans-unit>
<trans-unit id="key_with_description">
<source xml:lang="es-ES">¡Mira esto! ¡Esta clave tiene una descripción!</source>
<target xml:lang="es-ES">¡Míralo! This key has a description! (Al menos en algunos formatos)</target>
<note>¡Esta es la increíble descripción para esta clave!</note>
</trans-unit>
<trans-unit id="key_with_line-break">
<source xml:lang="es-ES">Esta traducción tiene
einen Zeilenumbruch.</source>
<target xml:lang="es-ES">Esta traducción contiene
un salto de línea.</target>
</trans-unit>
<trans-unit id="nested.deeply.key">
<source xml:lang="de-DE">Ich bin ein tief verschachtelter Schlüssel.</source>
<target xml:lang="es-ES">Soy una clave profundamente anidada.</target>
</trans-unit>
<trans-unit id="nested.key">
<source xml:lang="de-DE">Dieser Schlüssel ist innerhalb eines Namensraumes verschachtelt.</source>
<target xml:lang="es-ES">Esta clave está anidada dentro de un espacio de nombres.</target>
</trans-unit>
<trans-unit id="null_translation">
<source xml:lang="de-DE"/>
<target xml:lang="en-GB"/>
</trans-unit>
<trans-unit id="sample_collection">
<source xml:lang="de-DE">---
- primer ítem
- zweites Item
</source>
<target xml:lang="en-GB">---
- first item
- second item
- third item
</target>
</trans-unit>
<trans-unit id="simple_key">
<source xml:lang="de-DE">Einfacher Schlüssel, einfache Nachricht, so einfach</source>
<target xml:lang="en-GB">Clave simple, mensaje simple, tan simple.</target>
</trans-unit>
<trans-unit id="unverified_key">
<source xml:lang="de-DE">¡Esta traducción aún no está verificada y está a la espera!</source>
<target xml:lang="en-GB">Esta traducción aún no está verificada y está a la espera. (En algunos formatos también exportamos este estado)</target>
</trans-unit>
</body>
</file>
</xliff>
Formularios plurales
Las claves pluralizadas se exportan utilizando la siguiente sintaxis:
<trans-unit id="plural_key">
<source xml:lang="en">{"one":"one chair","other":"{nrOfChairs} chairs","zero":"no chairs"}</source>
<target xml:lang="de">{"one":"una silla","other":"{nrOfChairs} sillas","zero":"ninguna silla"}</target>
</trans-unit>