微数据与RDFa

mar*_*rry 64 html5 semantic-web rdfa microdata

我有一个关于RDFa和Microdata的快速问题.

我目前的理解是RDFa是在HTML中实现的RDF,但对于像我这样的新开发人员来说很复杂,Microdata看起来非常容易和快速实现.

围绕这两种语义格式的其他优点和缺点是什么?

uno*_*nor 90

微数据与RDFa之间的差异

虽然存在许多(技术上,较小的)差异,但这里有一些我认为重要的选择(使用我在网站管理员身上的答案作为基础).

产品规格

适用性

  • 微数据只能用于(X)HTML5(分别由WHATWG定义的HTML).

  • RDFa可以用于各种主语言,即几种(X)HTML变体和XML(因此也可以在SVG,MathML,Atom等中使用).

    并且可以支持新的主机语言,因为RDFa Core "是用于以任何标记语言表达结构化数据的属性的规范".

使用多个词汇表

  • 在Microdata中,对同一内容使用多个词汇表更难,有时甚至是不可能的.

  • 由于使用了前缀,RDFa允许混合词汇表.

使用反向属性

  • 微数据不提供使用反向属性的方法.对于没有定义反向属性的词汇表,您需要这个(例如,它们只定义parent而不是parent&child).流行的Schema.org就是这样一个词汇表(只有少数几个例外).

    虽然W3C Note Microdata to RDF定义了实验itemprop-reverse,但该属性不是W3C和WHATWG的微数据的一部分.

  • RDFa支持使用反向属性(使用rev属性).

语义网

  • 通过使用Microdata,您不是直接参与语义Web(并且AFAIK Microdata不打算参与),主要是因为它没有被定义为RDF序列化(尽管有方法从Microdata中提取RDF).

  • RDFa是RDF序列化,RDF是W3C 语义Web的基础.


规范RDFa CoreHTML + RDFa可能比HTML微数据更复杂,但它不是"公平"比较,因为它们提供更多功能.

与Microdata类似的是RDFa Lite("确实适用于大多数日常需求"),至少在我看来,这个规范并不像Microdata那么复杂.

该怎么办?

如果您想支持特定的消费者(例如,搜索引擎和浏览器插件),您应该检查他们关于支持的语法的文档.

如果你只想学习一种语法并且没有特定的消费者,(注意,主观意见!)请使用RDFa.为什么?

  • RDFa多年来已成熟并且是W3C Rec,而Microdata是一项相对较新的发明,并未由W3C标准化.
  • RDFa可以用于多种语言,而不仅仅是HTML5.
  • RDFa允许对相同内容混合使用词汇表,并且它本身支持使用反向属性.

无法决定?使用两者.

请注意,您也可以对同一内容使用多种语法,因此您可以使用Microdata RDFa(以及 Microformats JSON-LD,以及 ......)以获得最大兼容性.

但通常没有必要/建议沿着这条路走下去.


lin*_*ark 31

您从任何语义格式中获得的主要优势是消费者能够重用您的数据.

例如,像谷歌这样的搜索引擎是重用您的数据来显示Rich Snippets的消费者,例如:

Recipe Rich Snippet

为了确定哪种格式最佳,您需要知道要定位的消费者.例如,谷歌在他们的常见问题解答说,他们只会处理微数据(尽管测试工具现在可以使用RDFa,因此他们可能接受RDFa).

除非您知道您的目标消费者只接受RDFa,否则您最好使用微数据.虽然许多消费RDFa的服务(例如语义搜索引擎Sindice)也接受微数据,但微数据消费服务不太可能接受RDFa.

  • 答案已经过时了.Google现在支持RDFa:"结构化数据应使用schema.org定义的最具体的适用类型和属性名称来表示.数据可以使用以下三种支持格式中的任何一种嵌入您的网页:JSON-LD,RDFa和微数据. "(https://developers.google.com/structured-data/policies)你应该按照unor的回答. (11认同)
  • 不确定我理解这个问题.当我提供这个答案时,Schema.org就在我身边,Rich Snippet就是Schema.org术语的一个例子.Schema.org不是微数据的竞争者,就像Schema.org不是HTML的竞争对手一样,而是依赖于HTML.Schema.org文档中的示例是用于放置Schema.org术语的微数据的示例. (7认同)
  • 鉴于schema.org,这个答案是否完全正确? (2认同)

Ian*_*son 6

这很长,但是你会得到这个问题最全面的答案之一是Jeni Tennison的博客文章:Microdata和RDFa和谐共处

  • 要为我们总结一下吗? (16认同)
  • 我同意@ S.Pinkus.目前这只是一个链接答案.http://meta.stackexchange.com/a/8259/189763 (4认同)