嵌入在 HTML 中的资源如上所示,在本例中,有一个 http://schema.org/Organization 类型的最外部资源。只要您愿意的话,可以通过这种方式定义任意多个资源。RDFa 中(以及我们将会看到在 Microdata 中)表达对象属性的常见方式是通过嵌套的 HTML 元素。
1
| <h1 property="name">Geo Book Club</h1>
|
在本例中,h1 元素提供了组织的名称。
1
| <div property="member" typeof="Person" resource="ang">
|
这一行定义一个 http://schema.org/Person 类型的资源,并将此设置为组织上的 http://schema.org/member 属性的值。
1
| Founding member <span property="name">Alice Ng</span> welcomes you!
|
在这里,为 person 资源提供了一个 http://schema.org/name 属性。
目前,您已在 main、h1、div 和 span 元素上看到了 RDFa 属性。您可以通过适合您的方式自由设计 HTML,而且 RDFa 属性可以放在任何与您描述的概念含义匹配的元素上。
嵌套 HTML 元素RDF 是一个图形模型,而 HTML 元素的嵌套是一种分层结构或树。因为 HTML 包含对资源的自然语言描述和讨论,所以它形成了抽象数据层中的大部分关系的自然框架。
RDFa 允许您利用这种便利性,并使用分层结构来设置您描述的事物的上下文。下图演示了 HTML 文档分层结构与 RDFa 属性的图形关系之间的这一联系。
图 2. HTML 元素嵌套结构中的数据项/资源关系
下面这行展示了如何分配资源标识符 - 在本例中分配了一个 event 资源。
1
| <div property="event" typeof="Event" resource="GBC_mtg_2">
|
如上图所示,property 将这个新资源连接到组织。
请注意,resource 的值是一个相对 URL,但它不是用于将 URL 补充完整的默认词汇表。页面本身的基础 URL 用于将资源 URL 补充完整。这意味着当您将这个读书俱乐部页面托管在 http://example.com/geobookclub/ 上时,此事件的完整资源 URL 将变成 http://example.com/geobookclub/GBC_mtg_2。可以使用 HTML base 属性来修改这个基础 URL。
也可以从类似 a、link、img 或 object 元素的 href 或 src 属性获得资源 ID。无论是在这些情况下,还是使用 resource,您都可以指定资源的完整 URL。如果 URL 是对网站另一部分上某个资源的引用时,通常会这么做,如下面这段代码所示。
1
| <a property="author" typeof="Person" href="http://enwp.org/Chinua_Achebe">
|
在这里,资源 ID 的值是从 href 获取的,而在下面这行代码中,它是从 src 获取的。
1
| <img property="image" src="TFA_cover.jpg">
|
|