什么是XLIFF文件中经常使用的`tek`命名空间?

时间:2013-03-16 05:04:52

标签: xliff

我正在研究有关XLIFF的问题,首先,我想对HTML文件进行一些测试。我在OASIS找到了一个XSL Transformation,它从HTML文件生成XLIFF文件。但生成的XLIFF文件包含属于tek名称空间的元素和属性,OpenLanguageTools XLIFF编辑器似乎不喜欢这些元素和属性。我,我自己,试图根据xliff-core-1.2-strict.xsd架构验证它。

我想知道tek名称空间是什么,其标识符为http://www.tektronix.com/TC。我在网上搜索,但没有发现任何相关内容。

这是XLIFF的标准扩展吗?这是遗产还是实际?

更新#1 :让我很烦恼的是,网址似乎无效了,现在重定向到www.tek.com,而似乎还有很多样本XLIFF将元素保存到该名称空间的文档。

1 个答案:

答案 0 :(得分:1)

tek确实代表Tektronix。虽然您没有提供生成的Xliff,但我猜您无法针对Xliff核心架构验证它的原因是您的文档有两个名称空间;原始Xliff名称空间和名为tek的自定义名称空间,用于向文件添加自定义词汇表。

以下是foo示例:

<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" 
       xmlns:foo="http://www.foobar.com"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
       xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2         
       xliff-core-1.2-strict.xsd http://www.foobar.com foo.xsd" 
       version="1.2">

然后你可以:

   <trans-unit id="0" restype="button" resname="big_red_button">
       <foo:serious-note>Srsly!</foo:serious-note>
       <source xml:lang="en-US">Don't push here!</source>
       <target state="needs-translation></target>
   </trans-unit>

只要您将此自定义标记添加到架构中,就可以使用 Xliff架构和自定义架构验证文件:

<xsd:element name="serious-note">
    <xsd:complexType>
        <xsd:simpleContent>
            <xsd:extension base="xsd:string">
                <xsd:attribute ref="xml:lang" use="optional"/>
                <xsd:attribute name="foobar" type="xsd:string" use="optional"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
</xsd:element>