对比与澄清:微格式 vs RDF

阅读数:407 2007 年 11 月 4 日

话题:架构

对于语义网,微格式RDF之间是存在差别的。James Simmons 在 SematicFocus 博客上发了一篇帖子,列出了他关于这个话题的一些思考。而Johannes la Poutré在 Squio 博客上回复了他对这个话题的理解。他们都认可 RDF 和微格式是彼此有很大诧异的,然而就这种差异与语义网之间的关系,二位却彼此完全不能苟同。James 一开始就指出微格式有意避开了 RDF 的一些核心方向:

许多人极力宣称微格式可以用来替换 RDF,然而当初设计微格式,并不是为了与 RDF 做同样的事情。虽然微格式与 RDF 都可以用来保存关于数据的数据,他们却不是用来解决同样问题的。……在微格式的“关于”页面上,你可以知道微格式是什么,不是什么。

微格式不是用来做这些事情的:

  • 一种新的语言
  • 无限可扩展,并且是开放式的
  • 试图让每个人都改变他们的行为并重新开发他们的工具
  • 全新的方式,可以让大家抛弃现有可用的途径
  • 能够解决分类技术(taxonomies)、本体论(ontologies)和其他类似抽象问题的“万能灵药”
  • 定义整个世界,甚至让海洋都沸腾起来

相比较而言,RDF 的目标范围更加远大,在 James 的意见看来,其中有些东西对于语义网来说至关重要:

RDF 能做到(而微格式不能的):
  • 资源以 URI 展示,允许远程访问元数据
  • 可无限扩展,并且是开放式设计
  • 一种基于其之上构建的、强大的本体论语言(OWL)
  • 利用、分享、扩展任何词汇的能力
  • 不依赖事先定义好的“格式”(比如:不受可编码数据的类型的限制)

如你所见,有些东西只能通过 RDF 而不是微格式来做。语义网依赖我上面列出的东西。为什么微格式不会成为 W3C 的语义网远景的一部分,上面就是几个非常清晰明了的原因。

James 进一步进行了比较 / 对照分析,他指出微格式有些 RDF 不具备的东西,并阐述了他认为微格式为构建语义网所能做出的贡献。

我要说微格式有些特质是 RDF 所不具备的(即便未必所有的序列化形式都不具备),至少不是以同样的方式:
  • 设计时优先考虑人的需要,然后再考虑机器的需要
  • 模块化 / 嵌入性
  • 允许并鼓励去中心化的开发、内容、服务
  • 格式的设计原则
  • 适于当前的行为和使用模式
  • 与语义 XHTML 的高度相关性

曾经提过,我相信通过引入“散置元数据(metadata sprinkling,将元数据包括在其他“正常”数据中的行为)”的概念,微格式可以帮助更多的人知道语义网。它允许简单元数据的嵌入性,并且不会影响 XHTML 文档的验证过程。这种方式可以帮助普通用户更深入了解语义网的远景。

Joe 并不认为微格式相对狭窄的适用范围会削弱微格式在定义语义网方面的影响或职责。不过,对于 James 针对两个概念进行比较后所得出的差异结论,他是同意的。

实际上,微格式不是 RDF 的变种,更不是“穷人版的 RDF”。那从来都不曾被作为设计目标。更重要的是,在任何方式来看,微格式都不是第一等的语义网对象。实际上,它们是用来解决语义正确的标记(semantically correct markup)的、目前能想到的最简单解决方案,而且仅限于最普通的数据格式。

 重新审视下微格式的章程,他们希望成为普通人的解决方案,面对的是有良好意图的网站管理员人群。这样的话,微格式就可以做的非常成功(相对于“html as tag soup”这个“成功”的故事来说。【译注:html as tag soup 是指使用 html 编写页面时,不考虑 html 的架构和语义要求,各种 tag 混杂在一起,就像一盆搅和在一起的、乱七八糟汤。当使用 html 展示文档而不考虑文档的语义要求时,就可以说创建了 tag soup。】)。没错,是这样的。

接下来,他认为 RDF 是高高在上且遥不可及的,并提出了自己对未来发展的看法:相对 RDF 来说,基于其可及性,微格式将在定义语义网方面起到更大的作用。

底线:语义网已经缺乏现实内容太长时间了(经不起 DBPedia 和 Freebase 以及诸如此类社区和项目的冲击),而且没有供普通人使用的真实世界的应用。微格式可以并将会得到这个广大目标用户群的拥护和提倡,就是那些掌握了 html 和基本的数据构造,但是对图论没有兴趣的人。

如果这些人群可以通过在浏览器中“查看源代码”立即理解页面内容,他们就会跟上拥护微格式的大部队。看一看 RSS 2.0 是怎么样超越具有优秀语义特性的(基于 RDF,但是更复杂)RSS 1.0 并取得成功的吧。

到最后,这些都将不是问题。绝大部分的内容对于语义网来说将是“足够好”的(通过 GRDDL 变换和屏幕擦除 [screen scraping]);就像现在的 html,以某些方面来讲,在我们的浏览器里面已经呈现的足够好了。

查看英文原文:A Comparative Clarification: Microformats vs. RDF
译者简介:郑柯,目前任职《程序员》杂志社高级编辑,有志于在中国的软件开发业界推广 Agile 的理念和方法论,笃信以人为本,关注 Ruby,关注敏捷,关注人。参与 InfoQ 中文站内容建设,请邮件至china-editorial@infoq.com