使用RDF语法表示复杂的句子

我是RDF的新手,我有一个关于RDF的问题.

使用一些简单的句子:“Ann study Math”,使用RDF表示它没有问题.

但是更复杂的句子如:“帕克先生教授机器学习并使用名为ML-for-newbie的书”,我的意思是帕克先生用这本书来准备他的讲座.有三个对象:Parker先生,机器学习,ML-for-newbie; 2谓词:教导,使用.那么如何在RDF中表示这句话呢?据我所知,一个RDF语句就像Subject –predicate – >对象,3个对象和2个谓词让我感到困惑:(

Plz帮助,谢谢!

解决方法

在您的情况下,您可以在3个RDF语句中分解这些句子或使用 blank node.

分解的例子,课程有自己的URI(:Course999):

:Mr_Parker    :teaches    :Course999 .
:Course999    :courseName    "Machine Learning" .
:Course999    :hasSupportBook    "ML-for-newbies" .

使用匿名节点(空白节点_:b1),它的原理相同,但未明确捕获过程:

:Mr_Parker    :teaches    _:b1 .
_:b1    :courseName    "Machine Learning" .
_:b1    :hasSupportBook    "ML-for-newbies" .

现在正如评论中所提到的,字符串“ML-for-newbies”实际上不是一本书,它只是代表书的标题.因此,您可以添加更多三元组来捕获有关此项目的额外信息(例如本书的作者).你可以考虑重新使用已经开发的词汇来完成这项任务(比如都柏林核心):

:Mr_Parker    :teaches    _:b1 .
_:b1    :hasSupportBook    :book2 .
:book2    dcterms:title    "ML-for-newbies" .
:book2    dcterms:creator    "John Smith" .

…然后这里的字符串只代表作者的名字而不代表作者本身(就像书中一样),所以如果需要,你也可以通过代表这个实体类型来扩展你的三元组.

相关文章

操作步骤 1、进入elasticsearch的plugin,进入ik。进入config。 2、在config下面建立以.dic为后缀的字典...
lengend data数据中若存在'',则表示换行,用''切割。
代码实现 option = { backgroundColor: '#080b30', tooltip: { trigger: &...
问题原因 原因在于直接在js中取的变量并复制给var变量。 于是就变成这样。 解决办法 var data = &#...
前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选...
对于很多人来说,用字符编码都是熟能生巧,而不清楚为什么是那样的字符编码,所以我在这列了一个表,翻...