基于关键实例及其查询重写的RDF(C)模式冲突的检测方法

文档序号:34071027发布日期:2023-05-06 18:34阅读:56来源:国知局
基于关键实例及其查询重写的RDF

本发明属于机器语义理解领域,尤其是一种基于关键实例及查询重写的rdfs(c)模式冲突的检测方法。


背景技术:

1、作为w3c(world wide web consortium,万维网联盟)提出的对web环境中的信息资源进行统一描述的语义模型,rdfs(resource description framework schema,资源描述框架模式)使得通过一系列有确定语义的词汇来描述概念之间的层次结构及概念和属性的语义成为可能,因而成为构建语义web本体的重要基础。确保rdfs本体的正确性是基于本体的建模过程中避免错误传播的关键,因此rdfs模式冲突的自动检测获得了大量的研究关注。

2、由于rdfs描述约束能力的欠缺,近年来在rdfs模式中引入非图形化的约束机制已成为一个重要的发展方向。引入了非图形约束的rdfs本体统称为约束增强的rdfs本体,即rdfs(c)本体。由于现实世界中约束条件的多样性及复杂性,非图形约束的引入使得rdfs(c)模式的冲突检测问题变得更加复杂,特别是在推理规则存在的情况下,因此尽管围绕前述研究已有一些检测工具被提出,如rdfshape,fhir,rddchecker等,但是,如何自动、高效地检测模式冲突仍未得到很好的解决,目前已成为rdfs(c)本体建模领域的研究热点之一。

3、检测模式不是检测静态对象,它们可以随着时间的推移而演化以反映它们建模的数据集的变化。推理规则的应用是rdf图数据集变化的重要来源,而规则的设计过程会耗费大量的人力代价并且容易引入冲突,因为推理规则的施加可能会生成新的事实,而不是由原始模式定义所捕获。


技术实现思路

1、本发明的目的在于克服现有技术的不足,提供一种基于关键实例及查询重写的rdfs(c)模式冲突的检测方法,其给定一个rdfs(c)模式和一组推理规则,如果一个rdf图最初对该模式有效,在使用推理规则计算其闭包后是否仍然有效,如果存在冲突,通过分析对模式产生影响的特定规则的应用效果,因此,可以无需考察模式的所有实例并高效地推断出哪些约束和类型限定可能被违背,从而为冲突的消解和模式的修复提供支持。

2、本发明解决现有的技术问题是采取以下技术方案实现的:

3、一种基于关键实例及查询重写的rdfs(c)模式冲突的检测方法,包括以下步骤:

4、步骤1、将rdfs(c)模式转换为内模式;

5、步骤2、建立关键实例映射集,计算生成内模式的关键实例;

6、步骤3、过滤关键实例映射集并生成类型框架;

7、步骤4、采用查询重写方法推断被违背的类型限定和约束。

8、进一步,所述内模式s=<sp,snl,sed>是一个三元组,其中,sp为样式集,是三元组样式的集合,集合中每个变元名至多出现一次;为非字面集;sed是嵌入性依赖的集合。

9、进一步,所述步骤1包括内模式三元组sp、snl和sed的计算方法:

10、所述snl的计算方法为:把在sp中的主语位置和谓语位置出现的所有变元添加进snl,然后逐一扫描非图形约束,对于将变元的取值限定为实例化iri的约束,将其约束变元添加进snl,并从约束集中移除该约束;

11、所述sed的计算方法为:将sp中与每个类对应的三元组样式转化为一个一元谓词,将每个对象属性和每个数据属性对应的三元组样式分别转化为一个二元谓词,将原始模式中的类层次和完整性转化为否定约束,对于每个非图形约束,将所有的否定文字从否定约束的左边移至其右边并去掉否定符号,将每个否定约束等价转换为一个嵌入性依赖。

12、进一步,所述步骤2的具体实现方法为:

13、定义:给定内模式s和推理规则集r,称bs′是s关于推理规则r的框架基元,记为r(s),r∈r,当且仅当称是s关于r的类型框架,记为fra(s,r),当且仅当

14、在计算fra(s,r)的过程中,利用内模式s的所有实例i对推理规则r的规则前提a进行赋值,计算a在s的所有实例上的sparql取值,进行映射集的计算,使用关键实例来代替由s建模的所有实例,基于在s的关键实例上对a进行赋值,计算得到关键实例映射集;

15、定义:给定内模式s及推理规则r:a→c,s相对于r的关键实例是三元组t的集合:

16、

17、其中ts∈sp,i∈{1,2,3},μ1∈const(sed)∪const(a),

18、使用sed和a中的常量,以所有可能的方式来置换内模式中的变元,包括用const(sed)∪const(a)中的所有iri和字面量逐一替换μ1,用const(sp)∪const(a)中的所有iri逐一替换μ2,从而创建关键实例。

19、进一步,所述步骤3过滤关键实例映射集的方法为:对于关键实例映射集每个映射m,执行如下操作:

20、首先,创建一个临时的非字面集smnl,逐一考察推理规则r中的每个变元,如果用s的实例对规则前提a进行赋值以及在实例化规则的结果c时,该变元不能被绑定到字面量,则该变元将被置入smnl;

21、然后,考虑在a的三元组ta的宾语位置出现的元素:需要将ta在中的所有变体tq纳入考虑范围,由于映射m是在关键实例上被计算获得的,因此至少存在一个tq使得对于每个这样的tq,需要获取对m(tq)进行建模的三元组ts∈s的集合,通过三元组ts使ta或其变体之一将关键实例与映射m相匹配。

22、进一步,所述步骤3类型框架的生成基于下式:

23、其中s0=s,si+1=∪r∈r{r(si},sn=sn-1;

24、首先将初始化为分别使用s的样式集和非字面集初始化s′p和s′nl,对于每个未被过滤掉的映射m,逐一考察其中的每个绑定,如果该绑定将变元映射到μ1或μ2以外的值,则保持该绑定不变,否则引入一个不同的全新变元来代替每个μ1和μ2从而生成新的绑定;

25、然后将三元组样式m(c)添加到s′p,并将变元m(smnl)∩vars(s′p)添加到s′nl,按照此方式,在逐个映射的基础上逐步扩展s′,直到考虑了所有映射,此时s′是类型框架的最终输出。

26、进一步,所述步骤4的具体实现方法为:

27、首先进行定义:给定内模式s和推理规则集r,称s′是s关于r的模式结果,当且仅当

28、

29、然后,根据内模式s=<sp,snl,sed>和推理规则集r,计算类型框架初始化映射集

30、对于每个嵌入性依赖ed,逐一考察每个推理规则r:a→c以推断c是否可以违背ed;通过反向链接r中的规则来计算a的所有重写;对于每个这样的重写aw,通过计算映射集来推断是否可以在s的实例上匹配它;

31、对于每个映射m∈m,首先去除m中没有将变元映射到μ1和μ2的所有绑定并将映射应用于aw,然后将剩下的每个变元映射到一个新的iri来生成实例i;使用sed中的所有嵌入性依赖以及推理规则集r计算i上的闭包,如果它违背ed,将ed添加到被违背的嵌入性依赖的集合中;从而将sp从s′p中去除并输出被违背的类型限定集type(s,r)和被违背的约束集con(s,r)。

32、本发明的优点和积极效果是:

33、本发明设计合理,首先定义内模式的概念并给出了rdfs(c)到内模式的转换方法;然后生成内模式的关键实例,该关键实例显著小于原始实例的规模使得检测效率得以显著提升;最后在内模式的关键实例上进行模式冲突的检测,在检测时采用查询重写方法对关键实例进行扩展并构建违背约束的潜在实例,重写的极小性使得所构建的实例具有最小的规模,提高了约束违背的推断效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1