如何提取/获取本体中的所有术语(类/属性)

时间:2018-10-04 22:19:52

标签: rdf semantic-web ontology

我有一个不同本体的数据集,我想提取/获取所有我可以脱离本体的类,属性和任何其他东西。是否有任何方法或库可用于执行此操作,因为存在许多本体并且无法手动执行。 后来我需要将所有这些数据存储在Excel工作表中。 在这方面的任何帮助将不胜感激。谢谢

1 个答案:

答案 0 :(得分:0)

您可以安装SPARQL端点(例如Virtuoso Open Source Edition)并从那里上传数据:

  1. 下载并安装Virtuoso Open Source Edition
  2. import your RDF data into it。例如,您可以download the DBpedia ontology,解压缩并将dbpedia_2014.owl上传到SPARQL端点中的新图形中。
  3. 如果您已配置图形安全性(默认情况下应禁用),请授予您的用户对该图形的读取权限。例如,要公开该图,请以ISQL执行DB.DBA.RDF_GRAPH_USER_PERMS_SET ('mygraph', 'nobody', 1);

现在您可以提出任何类型的SPARQL查询,例如:

可以通过以下方式获取类列表:select * {?s a owl:Class.}(如果已明确建模),否则使用select * {{?s a owl:Class.} UNION {?s rdfs:subClassOf ?x.}}

类似地,可以分别使用select * {?s a rdf:Property.}select * {{?s a rdf:Property.} UNION {?s a owl:ObjectProperty.} UNION {?s a owl:DatatypeProperty.}}来查询属性列表。

如果只需要类和属性的列表,也可以使用Protégé,它更容易设置。