Localization 为<;使用消息代码时的XLIFF源语言设置;来源>;属性

Localization 为<;使用消息代码时的XLIFF源语言设置;来源>;属性,localization,xliff,Localization,Xliff,我在Symfony框架项目中使用“消息代码”,例如“person.name”。我使用相应的xliff消息代码文件。由于这是用作索引的消息代码,因此设置“源语言”属性的正确或正常方法是什么。例如: <xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2"> <file source-language="en" target-language="de" datatype="plaintext" or

我在Symfony框架项目中使用“消息代码”,例如“person.name”。我使用相应的xliff消息代码文件。由于这是用作索引的消息代码,因此设置“源语言”属性的正确或正常方法是什么。例如:

<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
    <file source-language="en" target-language="de" datatype="plaintext" original="file.ext">
        <body>
            <trans-unit id="person.name">
                <source>person.name</source>
                <target>Name</target>
            </trans-unit>
        </body>
    </file>
</xliff>

人名
名称

根据BCP47,您应该能够使用
(待定),但我强烈建议不要使用您正在使用的方法(用字符串ID或您提到的“消息代码”填充
源代码)。其原因是Xliff旨在成为一种两种语言的并行资源,在这种资源中,可以根据字符串ID或源语言或目标语言轻松地对其进行解析,以获得每种语言的翻译。翻译人员使用的工具以这种方式使用XLIFF,并将
标记上的内容作为源语言提供给翻译人员,并且他们应该基于该源字符串填充
目标
的内容

如果用字符串ID填充
,则无法达到此目的。在示例中使用Xliff的常见方法是:

<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
    <file source-language="en" target-language="de" datatype="plaintext" original="file.ext">
        <body>
            <trans-unit id="person.name">
                <source>Name</source>
                <target>Vorname</target>
            </trans-unit>
            <trans-unit id="person.surname">
                <source>Surname</source>
                <target>Nachname</target>
            </trans-unit>
        </body>
    </file>
</xliff>

名称
沃名称
姓
姓氏

根据BCP47,您应该能够使用
(待定),但我强烈建议不要使用您正在使用的方法(用字符串ID或您提到的“消息代码”填充
源代码)。其原因是Xliff旨在成为一种两种语言的并行资源,在这种资源中,可以根据字符串ID或源语言或目标语言轻松地对其进行解析,以获得每种语言的翻译。翻译人员使用的工具以这种方式使用XLIFF,并将
标记上的内容作为源语言提供给翻译人员,并且他们应该基于该源字符串填充
目标
的内容

如果用字符串ID填充
,则无法达到此目的。在示例中使用Xliff的常见方法是:

<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
    <file source-language="en" target-language="de" datatype="plaintext" original="file.ext">
        <body>
            <trans-unit id="person.name">
                <source>Name</source>
                <target>Vorname</target>
            </trans-unit>
            <trans-unit id="person.surname">
                <source>Surname</source>
                <target>Nachname</target>
            </trans-unit>
        </body>
    </file>
</xliff>

名称
沃名称
姓
姓氏

在中使用ID是Symfony的已知问题,请参阅右侧。我不知道。维护人员对Xliff这样的双语文件格式的工作原理以及如何与其他工具互换似乎存在误解。显然,我应该能够访问:(a)通过查找源字符串访问目标字符串,(b)通过查找目标字符串访问源字符串,以及(c)使用resname查找源和目标对。是的,同意。(我提出了这个问题,也许有一天我会找到时间打开一个公关。)在Symfony中使用ID是一个已知的问题,见右图。我不知道。维护人员对Xliff这样的双语文件格式的工作原理以及如何与其他工具互换似乎存在误解。显然,我应该能够访问:(a)通过查找源字符串访问目标字符串,(b)通过查找目标字符串访问源字符串,以及(c)使用resname查找源和目标对。是的,同意。(我提出了这个问题,也许有一天我会找到时间打开一个公关。)