8

想象一下,我开始使用本体,因为它提供了一些有用的词汇来描述我感兴趣的对象,例如 FOAF 来描述一个人(我)。我立即遇到了两个问题。我遇到了另一个本体,它也有描述一个人的词汇。

问题 1:其中一些术语在功能上是等效的或相关的,但我不想为将两个本体都包装在同一个对象上而烦恼,

<span property="foaf:name"><span property="dc:creator">Carl Boettiger</span></span>

因为这很麻烦,而且似乎忽略了链接数据的整个想法,它应该足够聪明,知道 adc:creator也是 afoaf:person. 那么正确的方法是什么?我如何确认这些对象之间的关系(例如,可能并非所有对象都foaf:person应该是dc:creator。它是否在语义网上的某个地方说dc:creator是 的子集foaf:person?我是否需要以某种方式链接到这样的声明?你能指出我在哪里吗?

问题2:一个本体中的词汇不足以满足我的目的,所以我需要使用另一个本体中的词汇。例如,据我所知,FOAF 并没有提供一种方式来说明我的组织、位置或角色(GoogleSnippets 似乎认为这些字段是有效人员的必填字段)。所以我去找一个方便的本体,比如谷歌建议的那个,http://rdf.data-vocabulary.org,它有这些术语。现在我又遇到了一个密切相关的问题,即确保两个本体就一个人是什么达成一致:

<div typeof="foaf:Person">
  <span property="foaf:name">Carl Boettiger</span> is a <span property="v:role"> graduate student </span>
</div>

v:role对它属于什么有自己的想法,a typeof="v:Person。我是否也需要添加此typeof声明?那么我是否需要做一些事情来说明它与 相同foaf:Person,并且确实这v:role两者foaf:name都描述了同一件事(我)?

非常感谢您澄清我的困惑。

4

1 回答 1

7

请注意 foaf:Person 是在 RDFa 中通过 @typeof 属性表示的类型或类。另一方面,dc:creator、foaf:name、v:role 是放置在 RDFa 中的 @property 属性中的属性。通常,您首先在 HTML 中键入对象(例如 Person),然后通过属性为其提供名称或角色等属性。类型通常以大写字母 (foaf:Person) 开头,而属性则以小写字母 (foaf:name) 开头。

问题 1:不是为每个新属性添加一个新的 span 元素,而是可以将所有属性放在同一个属性属性中,用空格分隔:

<span property="foaf:name dc:creator">Carl Boettiger</span>

是否在语义网上的某个地方说 dc:creator 是 foaf:person 的子集?

首先,这个例子还不够充分,dc:creator 是一个属性,而 foaf:Person 是一个类型,但是让我们假设我们正在谈论 foaf:Agent 和 foaf:Person,foaf 规范声明 foaf:Person 是foaf:Agent: http://xmlns.com/foaf/spec/#term_Person - 词汇可以定义这样的关系。还有跨词汇映射,有时定义来自各种词汇的类和属性之间的关系。

我是否需要以某种方式链接到这样的声明?

不,您通常不必这样做。

问题 2:请注意,不推荐使用http://rdf.data-vocabulary.org以支持 schema.org 词汇: http: //schema.org/docs/full.htmlhttp://schema.rdfs.org /

我还需要添加这种类型的声明吗?那么我是否需要做一些事情来说明它与 foaf:Person 相同,并且确实 v:role 和 foaf:name 都描述了同一件事(我)?

通常,在以 HTML 格式发布数据时,您不会尝试声明词汇表之间的等价性,而是使用您认为对使用您的数据的应用程序有用的所有词汇表术语进行发布,并且在 RDFa 中这样做很容易,因为您可以在给定的@typeof 或@property 属性中嵌入多种类型和属性。

<div typeof="foaf:Person v:Person">
  <span property="foaf:name v:name">Carl Boettiger</span> is a <span property="v:role"> graduate student </span>
</div>

请注意,您可以在http://rdfa.info/play/测试您的 RDFa 标记

于 2012-10-22T20:28:04.297 回答