首页 > 解决方案 > GraphDB - 从新的空存储库推断语句

问题描述

我正在使用 GraphDB 运行一些基本测试,我很惊讶地发现,当创建一个新的存储库时,一些语句似乎已经存在(由 GraphDB 推断)。

以下是说明这些语句的存储库的摘要:

在此处输入图像描述

以及列出它们的 sparql 查询的结果CONSTRUCT {?s ?p ?o} WHERE {?s ?p ?o .} LIMIT 100

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sesame: <http://www.openrdf.org/schema/sesame#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix fn: <http://www.w3.org/2005/xpath-functions#> .

rdf:type a rdf:Property;
  rdfs:subPropertyOf rdf:type;
  <http://proton.semanticweb.org/protonsys#transitiveOver> rdfs:subClassOf .

rdfs:subPropertyOf a rdf:Property, owl:TransitiveProperty;
  rdfs:subPropertyOf rdfs:subPropertyOf;
  <http://proton.semanticweb.org/protonsys#transitiveOver> rdfs:subPropertyOf .

rdfs:subClassOf a rdf:Property, owl:TransitiveProperty;
  rdfs:subPropertyOf rdfs:subClassOf;
  rdfs:domain rdfs:Class;
  rdfs:range rdfs:Class;
  <http://proton.semanticweb.org/protonsys#transitiveOver> rdfs:subClassOf .

rdfs:domain a rdf:Property;
  rdfs:subPropertyOf rdfs:domain;
  rdfs:range rdfs:Class .

rdfs:range a rdf:Property;
  rdfs:subPropertyOf rdfs:range;
  rdfs:range rdfs:Class .

owl:equivalentProperty a owl:SymmetricProperty, owl:TransitiveProperty;
  rdfs:subPropertyOf rdfs:subPropertyOf;
  <http://proton.semanticweb.org/protonsys#transitiveOver> owl:equivalentProperty;
  owl:inverseOf owl:equivalentProperty .

owl:equivalentClass a owl:SymmetricProperty, owl:TransitiveProperty;
  rdfs:subPropertyOf rdfs:subClassOf;
  <http://proton.semanticweb.org/protonsys#transitiveOver> owl:equivalentClass;
  owl:inverseOf owl:equivalentClass .

<http://proton.semanticweb.org/protonsys#transitiveOver> a rdf:Property;
  rdfs:subPropertyOf <http://proton.semanticweb.org/protonsys#transitiveOver> .

owl:inverseOf a rdf:Property, owl:SymmetricProperty;
  rdfs:subPropertyOf owl:inverseOf;
  owl:inverseOf owl:inverseOf .

rdf:subject a rdf:Property;
  rdfs:domain rdf:Statement .

rdf:predicate a rdf:Property;
  rdfs:domain rdf:Statement .

rdf:object a rdf:Property;
  rdfs:domain rdf:Statement .

rdf:first a rdf:Property;
  rdfs:domain rdf:List .

rdf:rest a rdf:Property;
  rdfs:domain rdf:List;
  rdfs:range rdf:List .

rdf:value a rdf:Property .

rdf:nil a rdf:List .

rdf:XMLLiteral a rdfs:Class, rdfs:Datatype;
  rdfs:subClassOf rdfs:Literal, rdf:XMLLiteral .

owl:differentFrom a owl:SymmetricProperty;
  owl:inverseOf owl:differentFrom .

xsd:nonNegativeInteger a rdfs:Class, rdfs:Datatype;
  rdfs:subClassOf xsd:nonNegativeInteger .

xsd:string a rdfs:Class, rdfs:Datatype;
  rdfs:subClassOf xsd:string .

rdf:_1 a rdf:Property, rdfs:ContainerMembershipProperty .

rdfs:isDefinedBy rdfs:subPropertyOf rdfs:seeAlso .

rdf:Alt rdfs:subClassOf rdfs:Container .

rdf:Bag rdfs:subClassOf rdfs:Container .

rdf:Seq rdfs:subClassOf rdfs:Container .

rdfs:ContainerMembershipProperty rdfs:subClassOf rdf:Property .

rdfs:Datatype rdfs:subClassOf rdfs:Class .

rdfs:comment rdfs:range rdfs:Literal .

rdfs:label rdfs:range rdfs:Literal .

它们似乎反映了对 rdf、rdfs 和 owl 词汇表的部分描述,但也包括来自http://proton.semanticweb.org/protonsys#. 我试图弄清楚它们是什么,尤其是为什么它们默认存在于 GraphDB 存储库中,但我没有在 GraphDb 文档中找到此类信息。

谢谢!

标签: rdfowlsemantic-webrdfsgraphdb

解决方案


返回的 70 个三元组是存储库实例化期间所选默认 RDFS Plus(优化)规则集的公理三元组部分。这些不可删除的陈述的目的是断言明显的基本假设,例如:

<rdf:type> <rdf:type> <rdf:Property>(每个 rdf:type 关系都是一个属性)

它们的唯一目的是确保符合RDFS 语义。您可以从存储在$GDB_HOME/configs/rules目录中的 PIE 文件控制它们。有关更多信息,您可以查看软件文档:

https://graphdb.ontotext.com/documentation/free/reasoning.html


推荐阅读