<xml lang =“ ..”>是什么意思

时间:2019-06-04 04:31:21

标签: xml parsing

<?xml version="1.0" encoding="iso-8859-1"?> 
<vxml version="2.0" xml:lang="..">

在上面给出的XML代码段中,XML根具有指向“ ..”值的属性xml:lang值。 “ ..”在这里是什么意思?

1 个答案:

答案 0 :(得分:2)

xml:lang属性的语义在XML建议§2.12中定义:

  

名为xml:lang的特殊属性可以插入文档中,以   指定任何内容和属性值中使用的语言   XML文档中的元素。在有效文档中,此属性类似于   如果使用其他任何参数,则必须声明。属性的值   是[IETF BCP 47]定义的语言标识符,   语言识别;另外,空字符串可能是   指定。

因此,如果作者写了<quote xml:lang="de">Alle Menschen werden Brüder</quote>,则该属性为阅读文档的任何人提供了引号是德语的线索。

当然,这只是一个约定和一个提示。如果报价单实际上是法语,则该文档不会失效。

在您的示例中,您有xml:lang=".."。我不确定您是否告诉我们该属性的实际值是两个句点。根据IETF BCP 47,这将不是有效的语言标识符。不幸的是,规范对于应该如何处理尚不明确;尽管它说“属性的值是语言标识符”,但是它没有说明解析器在发现不正确的值时应该怎么做。