技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种基于语义映射文件的本体生成方法、装置和产品与流程  >  正文

一种基于语义映射文件的本体生成方法、装置和产品与流程

  • 国知局
  • 2024-07-31 23:12:59

本技术涉及本体生成,特别是一种基于语义映射文件的本体生成方法、装置和产品。

背景技术:

1、本体,是指特定领域的概念集合及其内在逻辑关系的规范化语义描述,为领域数据提供了基本的分类框架与关联描述机制,进而对数据蕴含的语义进行合理组织。本体可视为人类知识语义框架的数字化抽象,是人、机之间的知识桥梁,具有易于查询、扩展、理解、共享的优势。将关系型数据库自动转换为本体可以为数据添加语义,实现与其他系统和应用程序的互操作性,支持对数据的推理,并创建更灵活的知识表示。

2、然而,传统意义上的本体构造是通过直接访问数据库完成的,在当前大数据时代,数据库内容丰富,所含数据源来源于多个领域或某一领域多个方向,所含信息量远远超过针对某项任务本体构造所需信息的范畴。如果仅仅为了完成某项任务构造本体,不加限制地开放数据库中所有数据的访问权限,容易造成安全隐患。因此,有必要开发一种基于语义映射文件的本体生成方法、装置和产品,以实现在生成本体的同时,提高数据库安全性。

技术实现思路

1、鉴于上述问题,本技术实施例提供了一种基于语义映射文件的本体生成方法、装置和产品,以便克服上述问题或者至少部分地解决上述问题。

2、本技术实施例的第一方面,提供了一种基于语义映射文件的本体生成方法,所述方法包括:

3、响应于用户发送的本体生成请求,获取关系型数据库中的语义映射文件,所述语义映射文件为所述关系型数据库的obda文件,用于描述所述关系型数据库中的多个关系数据库表的数据特征信息;

4、从所述语义映射文件中提取类、数据属性和对象属性;

5、根据提取得到的类、数据属性和对象属性,生成关系数据本体。

6、在一种可能的实施方式中,所述从所述语义映射文件中提取类、数据属性和对象属性,包括:

7、从所述语义映射文件中提取每段内容的target信息,所述target信息至少包括多个三元组,每个三元组由主语、谓语和宾语构成;所述语义映射文件中的每段内容对应所述关系型数据库中的一个关系数据库表;

8、根据从每段内容中提取得到的所述target信息,从中提取得到对应关系数据库表的类、数据属性和对象属性。

9、在一种可能的实施方式中,所述根据从每段内容中提取得到的所述target信息,从中提取得到对应关系数据库表的类、数据属性和对象属性,包括:

10、对于每段内容中提取得到的所述target信息,从中提取得到多个三元组,对于所述多个三元组依次做如下迭代:

11、获取当前三元组中的主语、谓语和宾语;

12、根据所述当前三元组中的class类型,判断所述当前三元组是否为类;

13、在所述当前三元组是类的情况下,识别得到类,并继续提取下一个三元组;

14、在所述当前三元组不是类的情况下,判断所述当前三元组的宾语是否出现文字类型且不具备唯一性标识;

15、在所述当前三元组的宾语出现文字类型,且,不具备唯一性标识的情况下,识别得到数据属性,并继续提取下一个三元组;

16、在所述当前三元组的宾语未出现文字类型,且,具备唯一性标识的情况下,识别得到对象属性,并继续提取下一个三元组;

17、直至该段内容中的所有三元组均提取完成,得到该段内容所对应的关系数据库表的类、数据属性和对象属性。

18、在一种可能的实施方式中,所述文字类型为int或string;

19、所述唯一性标识表示,所述当前三元组的宾语没有在所述语义映射文件的同一target信息中重复出现。

20、在一种可能的实施方式中,所述根据提取得到的类、数据属性和对象属性,生成关系数据本体,包括:

21、将识别得到的类、数据属性和对象属性按格式写入owl文件中,生成对应关系数据库表的关系数据本体。

22、在一种可能的实施方式中,所述方法还包括:

23、对于所述关系型数据库中存储的多个关系数据表,根据每个关系数据库表中的列、主键和外键,生成所述语义映射文件。

24、在一种可能的实施方式中,所述方法还包括:

25、根据接收到的所述本体生成请求,确定用户的访问权限为间接访问权限;所述间接访问权限用于限制所述用户的数据访问范围为,所述关系型数据库中的所述语义映射文件。

26、本技术实施例第二方面还提供了一种基于语义映射文件的本体生成装置,应用于本技术实施例第一方面所述的基于语义映射文件的本体生成方法,所述装置包括:

27、语义映射文件获取模块,用于响应于用户发送的本体生成请求,获取关系型数据库中的语义映射文件,所述语义映射文件为所述关系型数据库的obda文件,用于描述所述关系型数据库中的多个关系数据库表的数据特征信息;

28、提取模块,用于从所述语义映射文件中提取类、数据属性和对象属性;

29、本体生成模块,用于根据提取得到的类、数据属性和对象属性,生成关系数据本体。

30、在一种可能的实施方式中,所述提取模块,包括:

31、第一提取子模块,用于从所述语义映射文件中提取每段内容的target信息,所述target信息至少包括多个三元组,每个三元组由主语、谓语和宾语构成;所述语义映射文件中的每段内容对应所述关系型数据库中的一个关系数据库表;

32、第二提取子模块,用于根据从每段内容中提取得到的所述target信息,从中提取得到对应关系数据库表的类、数据属性和对象属性。

33、在一种可能的实施方式中,所述第二提取子模块用于:

34、对于每段内容中提取得到的所述target信息,从中提取得到多个三元组,对于所述多个三元组依次做如下迭代:

35、获取当前三元组中的主语、谓语和宾语;

36、根据所述当前三元组中的class类型,判断所述当前三元组是否为类;

37、在所述当前三元组是类的情况下,识别得到类,并继续提取下一个三元组;

38、在所述当前三元组不是类的情况下,判断所述当前三元组的宾语是否出现文字类型且不具备唯一性标识;

39、在所述当前三元组的宾语出现文字类型,且,不具备唯一性标识的情况下,识别得到数据属性,并继续提取下一个三元组;

40、在所述当前三元组的宾语未出现文字类型,且,具备唯一性标识的情况下,识别得到对象属性,并继续提取下一个三元组;

41、直至该段内容中的所有三元组均提取完成,得到该段内容所对应的关系数据库表的类、数据属性和对象属性。

42、在一种可能的实施方式中,所述文字类型为int或string;

43、所述唯一性标识表示,所述当前三元组的宾语没有在所述语义映射文件的同一target信息中重复出现。

44、在一种可能的实施方式中,所述本体生成模块,包括:

45、写入子模块,用于将识别得到的类、数据属性和对象属性按格式写入owl文件中,生成对应关系数据库表的关系数据本体。

46、在一种可能的实施方式中,所述装置还包括:

47、语义映射文件生成模块,用于对于所述关系型数据库中存储的多个关系数据表,根据每个关系数据库表中的列、主键和外键,生成所述语义映射文件。

48、在一种可能的实施方式中,所述装置还包括:

49、权限确定模块,用于根据接收到的所述本体生成请求,确定用户的访问权限为间接访问权限;所述间接访问权限用于限制所述用户的数据访问范围为,所述关系型数据库中的所述语义映射文件。

50、本技术实施例第三方面还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上的计算机程序,所述处理器执行所述计算机程序以实现本技术实施例第一方面所述的基于语义映射文件的本体生成方法中的步骤。

51、本技术实施例第四方面还提供了一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现本技术实施例第一方面所述的基于语义映射文件的本体生成方法中的步骤。

52、本技术实施例第五方面还提供了一种计算机程序产品,所述计算机程序产品在电子设备上运行时,使处理器执行时实现如本技术实施例第一方面所述的基于语义映射文件的本体生成方法中的步骤。

53、本技术实施例提供的一种基于语义映射文件的本体生成方法,该方法包括:响应于用户发送的本体生成请求,获取关系型数据库中的语义映射文件,所述语义映射文件为所述关系型数据库的obda文件,用于描述所述关系型数据库中的多个关系数据库表的数据特征信息;从所述语义映射文件中提取类、数据属性和对象属性;根据提取得到的类、数据属性和对象属性,生成关系数据本体。

54、本技术实施例主要利用语义映射文件(即obda文件)中已包含的基本本体语义(即从语义映射文件中提取得到各个关系数据库表的类、数据属性和对象属性),构造本体,输出owl文件。通过对数据库中信息有目的性的过滤、筛选,输出obda文件,构建出一道防火墙,在构造本体时,仅仅适当地提取足以反映相关领域方向的信息。相比于直接访问关系型数据库中的所有数据以生成本体的方法,本技术实施例所提出的这种依托obda文件,间接地访问部分数据库内容的方法,缩小了整体数据库暴露的范围,提高了对数据库安全性的保护。

本文地址:https://www.jishuxx.com/zhuanli/20240730/196469.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。