在Symfony中,XLF(XLIFF)文件中的ID是否很重要?

时间:2015-06-29 23:32:51

标签: php symfony xliff

我想知道在使用Symfony / PHP时,trans-unit标签上的ID在XLF文件中是否重要?它们应该在文件中是唯一的吗?跨文件?使用什么字符串/整数是否重要?我无法找到有关它们的用途的文档,包括Wikipedia

这可能是一个更通用的问题,但我现在正在使用Symfony(PHP)。

2 个答案:

答案 0 :(得分:2)

对于Symfony来说,他们并不重要。 Symfony实际上并不真正支持Xliff,它只知道如何从文件中提取2个元素并将其转换为密钥 - > value数组,与所有其他格式一样。

但是,如果你打算使用翻译工具(你可能会选择更简单的格式),那么你需要遵循Xliff specification

  

必需的id属性用于唯一标识同一<trans-unit>内所有<trans-unit><bin-unit>元素中的<file>

     

...(来自id specs):

     

[...] id元素的值由创建XLIFF文档的工具确定。 [...]

     

价值说明:文字。请注意,虽然允许,但标识符中通常不使用空格。

答案 1 :(得分:1)

如果我有所需的声誉,我会根据Wouter J的回答将其置于评论中,但由于情况并非如此,这是另一个答案。

您选择的格式应该适用于您和您的翻译人员。如果选中https://en.wikipedia.org/wiki/Computer-assisted_translation#Some_notable_CAT_tools,您会发现许多翻译工具都内置了对XLIFF的支持,而没有一个支持YAML。 另一方面,这些工具中的一些允许对输入文件进行基于Regex的解析,因此您应该与您的翻译人员讨论他更喜欢使用哪种格式:将一组Regex规则组合起来处理YAML可能比他更好地工作。必须处理可怜的XLIFF(来自Wouter J链接的XLIFF示例还有一些改进空间)。