RDFa是一个W3C推荐标准。它扩展了XHTML的几个属性,网页制作者可以利用这些属性在网页中添加可供机器读取的后设资料。与RDF资料模型的对应关系使得RDFa可以将RDF的三元组嵌入在XHTML文档中,它也使得符合标准的使用端可以从RDFa文件中提取出这些RDF三元组来。

W3C的“XHTML内的RDF”小组也在讨论如何在非XML的HTML下实现RDFa[1]。主要的问题是在非XML的HTML里无法使用XML名称空间

RDFa社群建了一个用来放RDFa工具、例子、教学的维基[2]

历史

RDFa一开始是被Mark Birbeck提出的,那是一份W3C笔记,标题为“XHTML与RDF”[3],这个想法在W3C的2004年技术交流会的语义网兴趣组群上被提出了[4]。那年后来,这个想法被写入了XHTML 2.0第六版的草案里[5]。虽然一般人们以为RDFa是只能被用在XHTML 2上的,但是RDFa原来的目的就是要提供一个在任意XML上加入后设资料的方法。事实上,在早期的一个叫“RDF/A Syntax”的文件的子标题就是“一些让RDF呈现在XML上的属性”[6]。这份文件的作者是Mark Birbeck与Steven Pemberton,公开时间为2004年10月11日。

2007年四月,“XHTML 2工作小组”提出了一个“RDF注释”的模块,以便于XHTML 1的系列文件使用[7] 。举例来说,他涵盖了XHTML 1.1的一个延伸版本,叫XHTML+RDFa 1.0。虽然RDFa被W3C视为不是能代表W3C在标记语言上的发展方向,RDFa仍渐渐的出现在Web上[8]

2007年10月,第一版的公开工作草案“XHTML里的RDFa:语法与处理”发表了[9]。这取代并扩展了四月的那个版本,它包含了做一个RDFa语法处理器的一些规定与给想要实际应用这个科技的组织的一些指引。

2008年10月,RDFa成为了W3C标准[10]

另外一份“RDFa入门”也在2008年6月上线了[11]。(第一版工作草案起源于2006年3月)。

要素

RDFa的本质就是提供一些属性,载有后设资料的这些属性可以被用在XML文件上(也就是RDFa的a的来源 - Attributes)。

这些属性分别是:

  • about – 一个URI或是CURIE,用来指出这份后设资料要描述的主语
  • relrev – 用来指出与另一个东西的关系或是相反关系
  • hrefsrcresource – 用来指出与主语有关系的东西
  • property – 用来指出一个元素的内文的相应属性
  • content – 一个选择性属性,在使用property的时候,用来覆盖一个元素的内文
  • datatype – 一个选择性属性,在使用property的时候,用来指出内文的文字的数据类型
  • typeof – 用来指出被描述的主语的RDF类

RDFa的好处

RDFa达成了五个“可交互利用的后设资料的条件”。[12]

  • 出版者的独立性 – 每个网站可以用自己的标准
  • 重复使用资料 – 资料不会被复制成两份。对于同样的内容,不需要有非别的XML跟HTML的部分。
  • 自我包含 – HTML与RDF是分开的
  • 文法模块化 – 那些属性可以被重复使用
  • 可演化性 – 可以加更多的属性,且XSLT可以从一个XHTML档里萃取出资料

另外RDFa可以增进一个网页的网页亲和力,毕竟辅助科技软件可以使用更多的机械可读资料。[13]

例子

以下是一个加入都柏林核心后设资料的XHTML的文件。都柏林核心的字汇都是那些跟书或是文章有关的(标题、作者、主题等等)。

<div xmlns:dc="http://purl.org/dc/elements/1.1/"
about="http://dbpedia.org/resource/馬皇降臨">
<span property="dc:title">馬皇降臨</span>
<span property="dc:creator">韋宗成</span>
<span property="dc:date">2009-07-25</span>
</div>

更厉害的是,RDFa可以跟着字句的推移,将语义标签贴在文字上:

<p xmlns:dc="http://purl.org/dc/elements/1.1/"
about="http://dbpedia.org/resource/馬皇降臨">
<cite property="dc:title">馬皇降臨</cite>,是台灣漫畫家<span property="dc:creator">韋宗成</span>的一部政治漫畫作品。
漫畫全1卷,<span property="dc:date" content="2009-07-25">2009年7月25日</span>在台北市的國立臺灣大學綜合體育館舉行的
第14屆開拓動漫祭上開始發售,接受網上預購。
</p>

参见

  • 微格式 – 一个简化的在网站上标注语义资料的方向
  • Microdata (HTML5) – 一个在HTML5被提出的功能,增强微格式可用性
  • eRDF – 类似RDFa的一种格式
  • GRDDL – 一种从XHTML与XML文件中萃取出后设资料,把它转成RDF图的一种协议

参考

  1. ^ (英文)HTML+RDFa – 一個在HTML裡嵌入RDF的機制. [2010-01-29]. (原始内容存档于2010-02-06). 
  2. ^ (英文)RDFa社群維基. [2010-01-29]. (原始内容存档于2008-05-17). 
  3. ^ (英文)「XHTML與RDF」W3C筆記 2004年2月14日. 万维网联盟. 2004-02-14 [2007-12-27]. (原始内容存档于2008-01-08). 
  4. ^ (英文)語意網興趣群祖. XML.com. 2004-03-03 [2007-12-27]. (原始内容存档于2007-12-24). 
  5. ^ (英文)XHTML 2.0 W3C工作草案 2004年7月22日。19. XHTML 後設資訊屬性模組. 万维网联盟. 2004-07-22 [2007-10-06]. (原始内容存档于2007-10-18). 
  6. ^ (英文)RDF/A Syntax: 一些讓RDF呈現在XML上的屬性. 2004-10-11 [2009-05-14]. (原始内容存档于2008-08-07). 
  7. ^ (英文)XHTML RDFa模組 – 支援RDF註釋的模組。W3C編輯草案,2007年4月2日. 万维网联盟. 2007-04-02 [2007-10-06]. (原始内容存档于2007-12-17). 
  8. ^ 举例来说,参考(英文):存档副本. [2007-10-06]. (原始内容存档于2007-10-11).  存档副本. [2007-10-06]. (原始内容存档于2007-12-14). 
  9. ^ (英文)XHTML裡的RDFa:語法與處理– 為了讓XHTML支援RDF的一些屬性及處理規則。W3C工作草案,2007年10月18日. 万维网联盟. 2007-10-18 [2007-10-20]. (原始内容存档于2007-10-23). 
  10. ^ (英文)XHTML裡的RDFa:語法與處理– 為了讓XHTML支援RDF的一些屬性及處理規則。W3C推薦標準,2008年10月14日. 万维网联盟. 2008-10-14 [2008-10-15]. (原始内容存档于2008-10-17). 
  11. ^ (英文)RDFa入門– 人類與資料網的橋樑。W3C工作草案,2008年6月20日. World Wide Web Consortium. 2008-06-20 [2008-06-20]. (原始内容存档于2008-06-24). 
  12. ^ 存档副本 (PDF). [2010-01-29]. (原始内容 (PDF)存档于2009-06-12). 
  13. ^ 存档副本. [2010-01-29]. (原始内容存档于2010-01-13). 

外部链接