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 |
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. Puede verse como el espejo del archivo fuente que descompone el contenido fuente en varios segmentos almacenados en tags (p. ej., <trans-unit>
, <seg- fuente>
).
El XLIFF está basado en XML y asunto de convenciones XML básicas como validez y buena formación. Completa siempre una revisión del estado antes de traducir 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, de no ser así, será imposible de renderizar o con un mensaje de Error.
XLIFF se actualizó con XLIFF 2.0. Es similar al XLIFF más utilizado, pero es un formato diferente de archivo generalmente incompatible con XLIFF.
Xcode puede empaquetar Strings Localizables en el formato XLIFF estándar de la industria para enviarlos a la localización con phrase.
Opciones de formato
Identificador |
enclose_in_cdata |
Tipo |
Booleano |
Carga |
No |
Descarga |
Sí |
Por defecto |
false |
Descripción |
Incluye traducciones que contienen tags HTML en CDATA. Si se deshabilitan, las entidades HTML no compatibles se reemplazan con sus valores decodificados. Por ejemplo:
|
Identificador |
include_translation_state |
Tipo |
Booleano |
Carga |
No |
Descarga |
Sí |
Por defecto |
false |
Descripción |
Incluir el estado de las traducciones en la localización meta. Cada etiqueta |
Identificador |
indent_size |
Tipo |
número entero |
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 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 fuente en el archivo mientras se carga (para evitar actualizaciones accidentales del idioma fuente) |
Identificador |
ignore_target_translations |
Tipo |
Booleano |
Carga |
Sí |
Descarga |
No |
Por defecto |
false |
Descripción |
Ignora las traducciones meta en el archivo mientras se carga (para evitar actualizaciones accidentales del idioma fuente) |
Identificador |
export_key_id_as_resname |
Tipo |
Booleano |
Carga |
No |
Descarga |
Sí |
Por defecto |
false |
Descripción |
Exporta el ID de la 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 la clave como el atributo de extradata. |
Identificador |
override_file_language |
Tipo |
Booleano |
Carga |
Sí |
Descarga |
No |
Por defecto |
false |
Descripción |
Este formato de archivo normalmente contiene información de idioma en el propio archivo. Use esta opción para anular el idioma con uno que especifique. |
Identificador |
strip_placeholder_delimiters |
Tipo |
Booleano |
Carga |
Sí |
Descarga |
No |
Por defecto |
false |
Descripción |
Elimina |
Identificador |
delimit_placeholders |
Tipo |
Booleano |
Carga |
No |
Descarga |
Sí |
Por defecto |
false |
Descripción |
Envolver los marcadores de posición de traducción en |
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"> <fuente 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"> <fuente xml:lang="de-DE">Schau dir das mal an! ¡Sombrero Dieser Schlüssel eine Beschreibung!</fuente> <meta xml:lang="en-GB">¡Échale un vistazo! This key has a description! (Al menos en algunos formatos)</meta> <note>¡Esta es la increíble descripción para esta clave!</note> </trans-unit> <trans-unit id="key_with_line-break"> <fuente xml:lang="de-DE">Sombrero Diese Übersetzung einen Zeilenumbruch.</fuente> <meta xml:lang="en-GB">Estas traducciones contienen un salto de línea.</meta> </trans-unit> <trans-unit id="nested.deeply.key"> <fuente xml:lang="de-DE">Ich bin ein tief verschachtelter Schlüssel.</fuente> <meta xml:lang="en-GB">Soy una clave profundamente anidada.</meta> </trans-unit> <trans-unit id="nested.key"> <fuente xml:lang="de-DE">Dieser Schlüssel ist innerhalb eines Namensraumes verschachtelt.</fuente> <meta xml:lang="en-GB">Esta clave está anidada dentro de un espacio de nombres.</meta> </trans-unit> <trans-unit id="null_translation"> <source xml:lang="de-DE"/> <target xml:lang="en-GB"/> </trans-unit> <trans-unit id="sample_collection"> <fuente xml:lang="de-DE">-- - erstes Artículo - zweites Artículo </source> <target xml:lang="en-GB">--- - primer item - segundo item - tercer item </target> </trans-unit> <trans-unit id="simple_key"> <fuente xml:lang="de-DE">Einfacher Schlüssel, einfache Nachricht, so einfach</ fuente> <meta xml:lang="es-GB">Clave simple, mensaje simple, tan simple.</meta> </trans-unit> <trans-unit id="unverified_key"> <fuente xml:lang="de-DE">Diese Übersetzung ist noch nicht bestätigt und wartet drauf!</fuente> meta xml:lang="en-GB">Esta traducción aún no está verificado y la espera. (En algunos formatos también exportar este estado)meta </trans-unit> </body> </file> </xliff>
Formularios plurales
Las claves pluralizadas se exportan utilizando la siguiente sintaxis:
<trans-unit id="plural_key"> <fuente xml:lang="en">{"one":"one chair","other":"{nrOfChairs} chairs","zero":"no chairs"}</fuente> <meta xml:lang="de">{"one":"ein Stuhl","other":"{nrOfChairs} Stühle","zero":"keine Stühle"}</meta> </trans-unit>