【问题标题】:How to use RDFa "vocab" within XHTML如何在 XHTML 中使用 RDFa “词汇”
【发布时间】:2015-10-06 07:26:00
【问题描述】:

我正在尝试为我的作业完成这个(简单)网页,它需要通过http://validator.w3.org/
它还需要使用RDFa。但是无论我做什么,RDFa vocab 都不会被验证器通过。

这是我得到的:

<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML+RDFa 1.0//EN' 'http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd'>

<body vocab="http://xmlns.com/foaf/0.1/">

我做错了什么?

【问题讨论】:

    标签: xhtml rdfa


    【解决方案1】:

    vocab 属性在 RDFa 1.1 中定义,但对于您当前的 DOCTYPE,您使用的是 RDFa 1.0。

    您的选择:

    • 继续使用 XHTML 1.1 和 RDFa 1.0,并使用 xmlns:… 属性而不是无效的 vocab 属性:

      <body xmlns:foaf="http://xmlns.com/foaf/0.1/">
      

      (那么你必须使用前缀foaf:。)

    • 继续使用 XHTML 1.1,但 switch 使用支持 RDFa 1.1 的 DOCTYPE:

      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.1//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-2.dtd">
      
    • 切换到默认支持 RDFa 1.1 的 XHTML5:

      <!DOCTYPE html>
      

    【讨论】:

    • 谢谢,非常感谢!
    【解决方案2】:

    你真的必须使用 XHTML 吗?我建议使用 HTML5 文档类型。 http://www.w3.org/TR/html-rdfa/ 有一些例子。

    另外,请确保您使用来自 W3C 的 NU 验证器:https://validator.w3.org/nu/ - 您使用的是旧的,不应再使用。

    【讨论】:

    • 谢谢,非常感谢!
    猜你喜欢
    • 2014-01-13
    • 2011-09-22
    • 1970-01-01
    • 2014-03-12
    • 1970-01-01
    • 1970-01-01
    • 2018-08-21
    • 2012-03-28
    • 1970-01-01
    相关资源
    最近更新 更多