Board logo

标题: Schema.org 语法(1) [打印本页]

作者: look_w    时间: 2018-11-22 18:58     标题: Schema.org 语法(1)

备选                Schema.org 语法第 1 部分中已提到,Schema.org 基于 RDF。有许多针对 RDF 的语法格式。尽管这些格式最初都设计为独立文档,但是很快,人们就实现了在 HTML 中表示                RDF。为了提供灵活性,Schema.org 支持 3 种不同的表示选项。
尽管 Schema.org 支持所有这 3 种选项,但不是每个实现该格式的应用程序都支持所有 3 种选项。一些 Web                抓取工具和其他代理读取某些格式的能力高于其他格式,而一些工具可能仅能读取一种格式。因此,您可能必须根据您所针对的应用程序的偏好对格式进行初步选择。
Schema.org 文档在其介绍性文本和许多示例中使用了 Microdata,但这样做只是为了方便用户入门。所有 3                种格式都同样有效,而且网站上也有许多 RDFa 和 JSON-LD 示例。
“一个重要的考虑因素是您选择的格式受支持的广泛程度。一般印象是,对 3                    种格式的支持程度都差不多。”

在 HTML                中对读书俱乐部示例进行编码在第 1 部分中,我给出了一个虚构的读书俱乐部网页的信息模型示例。图 1 显示了该读书俱乐部基于 Schema.org 的模型图。
图 1. 读书俱乐部 Schema.org 信息模型
让我们看看如何在 HTML 中表示此模型。首先看看 RDFa。
使用 RDFa                的读书俱乐部示例在将该模型转换为 RDFa 的过程中,我创建了一个简单的页面,并向主元素添加了一些必要属性,以传达来自该信息模型的相应概念。清单 1                显示了结果。
清单 1. bookclub-rdfa.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<main vocab="http://schema.org/" typeof="Organization">
          <h1 property="name">Geo Book Club</h1>
          <div property="member" typeof="Person" resource="ang">
          Founding member <span property="name">Alice Ng</span> welcomes you!
          </div>

          <div property="event" typeof="Event" resource="GBC_mtg_2">
            Please join us for our next meeting where we shall discuss the novel
            <span property="about" typeof="Book">
              <u property="name">Things Fall Apart</u> by
              <a property="author" typeof="Person" href="http://enwp.org/Chinua_Achebe">
                <span property="name">Chinua Achebe</span>
              </a> (ISBN: <span property="isbn">9780393932195</span>)
            </span>
            <img property="image" src="TFA_cover.jpg">
          </div>

          We hope you've been able to attend our past meetings
          <ul>
            <li property="event" typeof="Event" resource="GBC_mtg_1">
              …
            </li>
          </ul>

          </main>




了解神奇的属性这个示例使用了 RDFa 的最常用属性,包括:
让我们自上而下分析一下。第一个元素                <main vocab="http://schema.org/" typeof="Organization">                执行了 3 个与 RDFa 相关的操作:
如果 typeof 属性是 URL 引用(即相对 URL)而不是完整                URL,则将默认词汇表放在这些属性的值的前面。例如,假设您将开始标签更改为以下代码段:
1
<main vocab="http://schema.org/" typeof="http://example.org/Organization">




在本例中,资源类型忽略了默认词汇表,因为它是完整 URL,而不是相对 URL。这种对相对 URL 应用默认词汇表的方式也适用于                property 属性。                (您也可以使用一种特殊的前缀语法对词汇表中除默认项以外的项进行缩写,这将在后面的文章中介绍。)




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0