rdf - GraphDB - 从新的空存储库推断语句

标签 rdf owl semantic-web rdfs graphdb

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

以下是存储库的摘要,其中介绍了这些语句:

enter image description here

以及 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 .

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

谢谢!

最佳答案

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

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

他们的唯一目的是确保遵守 RDFS semantics 。您可以通过存储在 $GDB_HOME/configs/rules 中的 PIE 文件来控制它们。目录。欲了解更多信息,您可以查看软件文档:

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

关于rdf - GraphDB - 从新的空存储库推断语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64958334/

相关文章:

java - Stardog 数据加载和 Jena

RDF 和 OWL 工作流问题

java - Jena RDF 文件解析问题

java - 是否可以从 SPARQL 查询中提取 SPARQL 端点?

java - Jena 创建的 OWL 文件无法在 Protege 中打开

jena - 如何从 Jena 模型中检索本体的 URI?

java - 使用 Java 将 JSON 文件转换为 RDF 格式

linked-list - 使用 sparql 将 rdf 有序列表从一个图移动到另一个图

rdf - 本体限制对 SPARQL 最终结果的影响

html - XHTML 1.0 中的 <dl> 元素是否适合显示资源标签列表或订阅提要?