原子xml中有多种自然语言

时间:2010-08-29 16:47:16

标签: atom-feed

我的网页包含法语和英语版本。我的服务器使用html语言协商来根据浏览器首选项提供正确的页面。这很有效,根据您的浏览器设置,相同的URL将以英语或法语显示。

我决定为某些页面添加原子提要。有没有办法用多种语言提供摘要?我已尝试过这两种形式,但没有验证:

<summary xml:lang="en">some text here</summary>
<summary xml:lang="fr">du texte ici</summary>

(说有两个摘要,只有一个是有效的)

<summary xml:lang="en">some text here <xml:lang="fr">du texte ici></summary>

(说摘要格式不正确)

感谢。

1 个答案:

答案 0 :(得分:2)

根据Wikipedia

,我认为这是不可能的
  

国际

     

虽然RSS词汇表具有指示供稿的人类语言的机制,但是无法为单个项目或文本元素指定语言。另一方面,Atom使用标准的xml:lang属性,可以为feed中的每个人类可读内容指定语言上下文。“

因此,您可能有多种语言的任何项目,但多种语言的项目不同。

这需要您的服务器进行某种内容协商,例如

  • atom-feed for English
  • atom-feed?lang=fr代表法语

以适当的语言生成Feed。

另外,另一种选择是(但我不太明白)在您的英语内容中使用<link rel="alternative" hreflang="fr" href="http://mydoman.tld/atom-feed?lang=fr" />并且实现此功能的新闻阅读器会将此链接识别为使用其他语言的原始内容的替代源。我不知道这样的读者。

来自Atom RFC

  

4.2.7.4。 “hreflang”属性

     

hreflang属性的内容描述了该语言的语言      href属性指向的资源。与...一起使用时      rel="alternate",它表示条目的翻译版本。      链接元素可以具有hreflang属性,其值必须是a      语言标签[RFC3066]。