我如何指示 IANA 语言子标签注册表中列出的语言以外的语言,例如虚构的语言?
引用BCP 47 (RFCs 5646 & 4647),我猜想 und
标签或 -x
私有(private)使用指示符是需要的;但首选形式(例如)“und-x-dothraki
”、“x-dothraki
”、“qgm-dothraki
”(使用 q
+gm
表示 George Martin),还是其他?
考虑这个例子:
The Ficlang words <i lang="???">foo bar</i> mean “Hello, sir” in English.
上面的 lang="???"
属性中正确的值是什么?
(理想情况下,这应该包括一种区分多种非标准语言的方法。)
最佳答案
按国际标准ISO 639−2 , 语言代码 mis
表示未编码的语言。
然而,BCP 47——这是一份描述“互联网最佳当前实践”的 IETF 文件,而非标准——表示不应使用 mis
。这个论点相当薄弱:“因为在未来添加其他代码可能会导致其应用程序无效,它本质上是不稳定的,因此与 BCP 47 的稳定性目标不兼容。使用其他子标签总是更可取:'und'或(事先同意)私有(private)使用子标签。”
HTML5 CR——W3C 的候选推荐——说如果 lang
attribute value 是空字符串,即 lang=""
,那么“它必须被解释为节点的语言是明确未知的”。目前的 HTML 推荐没有包含这样的原则,而且对于 lang
属性的特殊值,它们相当模糊。
所以原则上,这取决于你认为哪些文件是权威的。另一方面,它很可能对任何事情都没有实际影响:只要 lang
属性值不在浏览器可识别的有限(且依赖于浏览器的)语言代码集中,它最有可能被视为抑制浏览器可能具有的任何特定于语言的处理(对于元素)。
关于html - 在 lang 属性中指示未列出或虚构的语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16828127/