web浏览器首选项中语言标记的语义是什么?

web浏览器首选项中语言标记的语义是什么?,web,browser,internationalization,w3c,content-negotiation,Web,Browser,Internationalization,W3c,Content Negotiation,W3C在其网站上指出(): 如果您的浏览器设置为请求特定地区的语言,如加拿大法语,则应确保在其后面列出另一个语言标记,且仅包含香草语言子标记(即在本例中仅为法语) 及 为了确保成功,您应该将浏览器配置为按顺序同时请求fr CH和fr。这将导致服务器首先查找瑞士-法国版本,但如果找不到,请查找任何法语版本[…] 我所知道的大多数浏览器都会在“较长”的语言标记(如“en-US,en”)之后配置“较短”的语言标记。我的理解方式是W3C推荐的:如果你不能用任何英语给我,请用美国英语给我这个页面 然而,第

W3C在其网站上指出():

如果您的浏览器设置为请求特定地区的语言,如加拿大法语,则应确保在其后面列出另一个语言标记,且仅包含香草语言子标记(即在本例中仅为法语)

为了确保成功,您应该将浏览器配置为按顺序同时请求fr CH和fr。这将导致服务器首先查找瑞士-法国版本,但如果找不到,请查找任何法语版本[…]

我所知道的大多数浏览器都会在“较长”的语言标记(如“en-US,en”)之后配置“较短”的语言标记。我的理解方式是W3C推荐的:如果你不能用任何英语给我,请用美国英语给我这个页面

然而,第3.4节“语言标记的匹配”似乎与W3C的建议相矛盾:

[…]每个语言范围表示可接受匹配的最特定标记”

假设我以挪威语Bokmål“nb”作为默认语言编写了一个网站,并将英国英语“en-GB”作为附加语言。一位美国用户使用新安装在其机器上的浏览器访问该网站。浏览器将首选语言范围定义为“en-US,en”。根据RFC 4647中描述的查找匹配方案,将找不到匹配项,并且将使用默认标记“nb”

步骤:

  • “en US”(第一个首选范围):与任何标签“nb,en GB”都不匹配
  • “en”(第一个首选范围的回退):与任何标记“nb,en GB”都不匹配
  • “en”(第二个首选范围):不匹配任何标签“nb,en GB”
  • 返回的默认标记:“nb”
  • 因此,RFC4647表示web浏览器首选项中的每种语言“范围”表示最特定的标记,而W3C表示每种语言范围表示最不特定的标记

    那么正确的意思是什么呢