XLIFF 1.2 is a natively supported file format, you can use it without an additional installation. Just upload it to your projects and start the localization.
Attribute | Value |
---|---|
File Extension | .xliff, .xlf |
API Type | xliff |
Source can be edited in Crowdin | Yes |
Generating translated files via Bundles | Search Crowdin Store |
Supports pluralization | Yes |
WYSIWYG Preview in the editor | No |
Supported types of contextual information | Text comments, Screenshots, In-Context |
Custom attributes | Yes |
Existing translations import possibility | Key-value mapping |
<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
<file id="19704" original="/Example (AndroidXML).xml" source-language="en" target-language="en-US" datatype="plaintext">
<body>
<trans-unit id="874396" maxwidth="20" size-unit="char">
<source>text</source>
<target state="translated">translation</target>
<note>Context</note>
</trans-unit>
<trans-unit id="874397" approved="yes">
<source>text 1</source>
<target>translation 1</target>
<note>Context 1</note>
</trans-unit>
<trans-unit id="874398">
<source>text 2</source>
<target state="needs-translation"></target>
<context context-type="context">Context of the segment 2</context>
</trans-unit>
<trans-unit id="874399" translate="no">
<source>text 3</source>
<target state="final">translation 3</target>
<note>Context 3</note>
</trans-unit>
</body>
</file>
</xliff>
Attributes
Translation state of the string: needs-translation
, translated
, final
.
needs-translation
– the segment needs translation.
translated
– the segment was translated.
final
– the segment was translated and approved.
<source>text</source>
<target state="needs-translation"></target>
<source>text 2</source>
<target state="translated">translation 2</target>
<source>text 3</source>
<target state="final">approved translation 3</target>
Note: It is also possible to use approved="yes"
attribute, it is equal to <target state="final">
<trans-unit id="874397" approved="yes">
<source>text 1</source>
<target>translation 1</target>
</trans-unit>
Max. Length for the translated string:
<trans-unit id="1" maxwidth="20" size-unit="char">
Import as a hidden string:
<trans-unit id="1" translate="no">
<source>Hi</source>
<target></target>
</trans-unit>
Custom Attributes
Source text will be taken from the node: x-crowdin-source-element="target"
<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2" x-crowdin-source-element="target">
<file id="19704" original="/Example (AndroidXML).xml" source-language="en" datatype="plaintext">
<body>
Comments
<trans-unit id="874399">
<source>String for translation</source>
<target>translation</target>
<note>type your comment here</note>
</trans-unit>
<trans-unit id="874398">
<source>text to translate</source>
<target></target>
<context context-type="context">type your comment here</context>
</trans-unit>
Plurals
<group restype="x-gettext-plurals">
<note>Context: ApplicationPreferencesActivity_messages_per_conversation [one] [other]</note>
<trans-unit id="14343743[0]">
<source>%1s month</source>
<target xml:lang="pl" state="translated">%1s miesiąc</target>
</trans-unit>
<trans-unit id="14343743[1]">
<source>%1s months</source>
<target xml:lang="pl" state="translated">%1s miesiące</target>
</trans-unit>
<trans-unit id="14343743[2]">
<source>%1s months</source>
<target xml:lang="pl" state="translated">%1s miesięcy</target>
</trans-unit>
<trans-unit id="14343743[3]">
<source>%1s months</source>
<target xml:lang="pl" state="translated">%1s miesiąca</target>
</trans-unit>
</group>
Crowdin is a platform that helps you manage and translate content into different languages. Integrate Crowdin with your repo, CMS, or other systems. Source content is always up to date for your translators, and translated content is returned automatically.
Learn MoreReleased on May 16, 2022
Updated on Feb 23, 2024
Published by Crowdin
Identifier:xliff