rdf 相关问题

资源描述框架(RDF)是用于表示关于万维网中的资源的信息的语言。它是一种独立于语法的数据模型,可以使用各种具体语法进行序列化。 RDF是语义Web上使用的核心数据格式。

如何从原始数据(CSV)创建本体?

我正在使用具有相关类、对象属性等的 OWL 本体对大学数据进行建模。我将大学数据放在一个简单的文本文件(例如 CSV)中。我想使用...创建本体

回答 2 投票 0

有没有办法在 RDF 中表示时态数据?

我有一堆时态数据,我想将其转换为 RDF 格式。有没有可以接受的方法? 应以某种方式转换为 RDF 格式的表格数据示例: |姓名 |...

回答 2 投票 0

Jena Riot 推断无效的 RDF(以文字作为主语)

我正在将 Jena riot CLI 工具推断出的 RDF 馈送到 shacl cli 工具中。 我的架构定义包含如下内容: lob:帐号 rdfs:域 lob:帐户; rdfs:范围 xsd:str...

回答 1 投票 0

SPARQL 未使用图像网格视图显示部分结果

我创建了一个查询来根据某些条件查找女性艺术家,并希望在查询结果中包含图片,以便#defaultView:ImageGrid视图不仅显示所需的数据,而且

回答 1 投票 0

在rdflib中创建custom_function

我正在尝试在 Python 中的 rdflib 中创建一个自定义函数,以便从 SPARQL 查询进行调用。 我创建了这个应该返回“test”的简单示例。它不会给出错误。它刚刚返回

回答 1 投票 0

带有 BIND 的 SPARQL 可选选项在 RDFlib 中不起作用

我尝试了以下查询,发现它在 rdf4j 中有效,但在 rdflib 中无效。经过一些蛮力之后,我发现只有当内部存在 BIND 时,查询才不会按预期运行。

回答 1 投票 0

使用 SPARQL 端点设置本地 rdf 三元组存储的最简单方法是什么?

对于学习 SPARQL,完全控制查询文本和数据(RDF 三元组)可能会很有用。虽然有许多公共 SPARQL 端点可用,但它们的数据通常是读取的...

回答 5 投票 0

扩展 OWL 类并检查不一致之处

我想在我自己的本体(使用命名空间 http://example.org/test.owl 定义)中扩展 SOMA 中定义的 Hand 类 我想在我自己的本体中扩展SOMA中定义的Hand类,并用命名空间定义http://example.org/test.owl <owl:Class rdf:about="http://www.ease-crc.org/ont/SOMA.owl#Hand"> <rdfs:subClassOf rdf:resource="http://www.ease-crc.org/ont/SOMA.owl#PrehensileEffector"/> <rdfs:comment>A prehensile effector including palm, fingers, and thumb.</rdfs:comment> <rdfs:isDefinedBy rdf:resource="http://www.ease-crc.org/ont/SOMA-OBJ.owl"/> </owl:Class> 看起来像这样 <rdf:Description rdf:about="http://www.ease-crc.org/ont/SOMA.owl#Hand"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://www.ontologydesignpatterns.org/ont/dul/DUL.owl#isRegionFor"/> <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:minCardinality> <owl:allValuesFrom rdf:resource="http://example.org/test.owl#Span"/> </owl:Restriction> </rdfs:subClassOf> </rdf:Description> 首先,这是否正确定义了 Hand 的每个实例都必须通过 Span 属性与 isRegionFor 至少有一个关联? 现在为了测试它,我创建了一个 Hand 实例(具有 SOMA 命名空间),与 Span 没有任何关联,并运行 Pellet 推理机,但推理机没有抱怨。这与 Hand 的命名空间(因为我已经在本体中用新的命名空间扩展了它)或 Pellet 的某些配置有关吗? OWL 遵循“开放世界假设”——为了报告不一致,仅仅图表“缺失”事实是不够的——你必须明确地反驳它们;换句话说,删除三元组永远不会产生矛盾。你的本体论告诉推理者,一个 Hand 与至少一个 Span 存在关系,并且不存在与此相矛盾的三元组。使用 OWL 没有令人满意的方法来做到这一点 - 您可以删除本体中的 rdfs:subClassOf,然后与推理器检查 Hand 的每个成员也是您的 owl:Restriction 的成员。但是,这不需要“直接”证明,因为您可以明确断言此成员资格,即“恶意”图可能暗示特定的 Hand 与某些 Span 相关联,但它没有义务识别该成员资格明确特定的个人。OWL 不是适合这项工作的工具,如果您想验证图表 – SHACL 更好。

回答 1 投票 0

从 RDF 文件中删除重复的三元组

我应该从 RDF 文件中删除重复的三元组吗? 例如,我在一个文件中有这些块: 词汇:坎帕尼亚地区; 词汇:名称 那不勒斯 ; 词汇:codice N...

回答 1 投票 0

需要 Django GUI IDE

我是 Django 新手。我需要为 Django 项目快速开发复杂的 GUI。我的底层数据库是资源描述框架(RDF)。有没有可以快速使用的 Eclipse IDE

回答 4 投票 0

与 LPG 相比,RDF* 图的主要优势和用例是什么?

我理解RDF*解决了RDF中属性和属性以及内部结构缺失的问题。但我想知道 RDF* 比 LPG 更好的一些用例是什么?主要有哪些

回答 1 投票 0

如何在protege中创建URL类型的数据属性

我想在protege中创建一个URL类型的数据属性,但在可用的数据类型中我看不到ant URL。是否可以在 protege 中创建 URL 类型的数据属性?

回答 1 投票 0

使用SPARQL从yago获取所有属性

我想从 yago 检索所有属性,这是一个 RDFS 知识库(.nt 格式)。我尝试过 以下查询 选择不同的 ?x WHERE { ?y ?x ?z 。 } 这给了我所有的谓词。 在...

回答 1 投票 0

在 Fuseki SPARQL 端点上使用 Jena API 进行的事务实际上并不修改数据库

我想使用事务在 SPARQL 端点上执行插入/更新/删除查询。问题在于更改实际上并未保存到端点。 如果我运行这个小示例程序:...

回答 1 投票 0

如何使用SPARQL正确查询Pizza Ontology?

此请求返回所有带有蘑菇配料的披萨: 前缀 rdf: 前缀猫头鹰: 前缀 rdfs: 此请求返回所有带有蘑菇配料的披萨: PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX pizza: <http://www.co-ode.org/ontologies/pizza/pizza.owl#> SELECT ?pizza WHERE { ?pizza rdfs:subClassOf+ pizza:Pizza . ?pizza rdfs:subClassOf [ a owl:Restriction ; owl:onProperty pizza:hasTopping; owl:someValuesFrom pizza:MushroomTopping ] } 但我想列出所有带有 VegetableTopping 的披萨,它是 PizzaTopping 的子类。另外,MushroomTopping 是 VegetableTopping 的子类。以下查询未提供预期结果: PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX pizza: <http://www.co-ode.org/ontologies/pizza/pizza.owl#> SELECT ?pizza WHERE { ?pizza rdfs:subClassOf+ pizza:Pizza . ?pizza rdfs:subClassOf [ a owl:Restriction ; owl:onProperty pizza:hasTopping; owl:someValuesFrom pizza:VegetableTopping ] } 正如UninformedUser在评论中所说,你必须将topping设置为变量值,然后声明该变量绑定到VegetableTopping的所有子类。 SELECT ?pizza WHERE { ?pizza rdfs:subClassOf+ pizza:Pizza . ?pizza rdfs:subClassOf [ a owl:Restriction ; owl:onProperty pizza:hasTopping; owl:someValuesFrom ?topping ] . ?topping rdfs:subClassOf* pizza:VegetableTopping . }

回答 1 投票 0

如何使用SPARQL正确查询Pizza Ontology?

此请求返回所有带有蘑菇配料的披萨: 前缀 rdf: 前缀猫头鹰: 前缀 rdfs: 此请求返回所有带有蘑菇配料的披萨: PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX pizza: <http://www.co-ode.org/ontologies/pizza/pizza.owl#> SELECT ?pizza WHERE { ?pizza rdfs:subClassOf+ pizza:Pizza . ?pizza rdfs:subClassOf [ a owl:Restriction ; owl:onProperty pizza:hasTopping; owl:someValuesFrom pizza:MushroomTopping ] } 但我想列出所有带有 VegetableTopping 的披萨,它是 PizzaTopping 的子类。另外,MushroomTopping 是 VegetableTopping 的子类。以下查询未提供预期结果: PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX pizza: <http://www.co-ode.org/ontologies/pizza/pizza.owl#> SELECT ?pizza WHERE { ?pizza rdfs:subClassOf+ pizza:Pizza . ?pizza rdfs:subClassOf [ a owl:Restriction ; owl:onProperty pizza:hasTopping; owl:someValuesFrom pizza:VegetableTopping ] } 正如UninformedUser在评论中所说,你必须将topping设置为变量值,然后声明该变量绑定到VegetableTopping的所有子类。 SELECT ?pizza WHERE { ?pizza rdfs:subClassOf+ pizza:Pizza . ?pizza rdfs:subClassOf [ a owl:Restriction ; owl:onProperty pizza:hasTopping; owl:someValuesFrom ?topping ] . ?topping rdfs:subClassOf* pizza:VegetableTopping . }

回答 1 投票 0

OWL 类中的不一致

我是语义技术的新手。我创建了一些 OWL 类并运行颗粒推理器来检查类中的不一致之处。这是我迄今为止创建的内容的片段: 我是语义技术的新手。我创建了一些 OWL 类并运行颗粒推理器来检查类中的不一致之处。这是我迄今为止创建的片段: <owl:NamedIndividual rdf:about="&object_test;obj_5678"> <rdf:type rdf:resource="&object_test;WorkPiece"/> <xyz:widthOfObject rdf:datatype="&xsd;float">0.1</xyz:widthOfObject> <!--X--> <xyz:depthOfObject rdf:datatype="&xsd;float">0.1</xyz:depthOfObject> <!--Y--> <xyz:heightOfObject rdf:datatype="&xsd;float">0.2</xyz:heightOfObject> <!--Z--> </owl:NamedIndividual> <owl:NamedIndividual rdf:about="&xyz;PQR_WorkPiece_5678"> <rdf:type rdf:resource="&xyz;PQR"/> <xyz:eventOccursAt rdf:resource="&object_test;Transform_5678"/> <xyz:startTime rdf:resource="&object_test;timepoint_0"/> <xyz:objectActedOn rdf:resource="&object_test;obj_5678"/> </owl:NamedIndividual> <owl:NamedIndividual rdf:about="&object_test;Transform_5678"> <rdf:type rdf:resource="&xyz_paramserver;Transform"/> <xyz:quaternion rdf:datatype="&xsd;string">0.0 0.0 1.0 0.0</xyz:quaternion> <xyz:translation rdf:datatype="&xsd;string">0.5 0.1 0.5</xyz:translation> </owl:NamedIndividual> 当我运行颗粒推理机时 sync_reasoner_pellet(infer_property_values = True, infer_data_property_values = True, debug=2) 存在关于类不一致的错误,以下是解释 This is the output of `pellet explain`: Axiom: Thing subClassOf Nothing Explanation(s): 1) Region subClassOf Abstract hasParticipant range Object hasRegionDataValue domain Region objectActedOn subPropertyOf preActor SemanticMapPerception_WorkPiece_1234 objectActedOn obj_1234 obj_1234 depthOfObject 0.02f depthOfObject subPropertyOf hasDepth actor subPropertyOf hasParticipant Abstract disjointWith Object hasShapeParameter subPropertyOf hasRegionDataValue preActor subPropertyOf actor hasDepth subPropertyOf hasShapeParameter 我不知道如何阅读这个输出。这是什么矛盾? 这是指逻辑上的不一致,例如说一个形状既是正方形又是圆形,这是不可能的。你的本体中正在发生类似的事情。 对不一致的解释由一组最小的公理和断言组成,所有这些公理和断言都必须成立才能使本体不一致。因为它是公理和断言的最小集合,如果您可以从本体中删除这些公理或断言中的任何 1 个,则本体将是一致的(假设您只有 1 个对不一致的解释 - 可能有多个不一致的解释)。 根据您提供的内容,您正在根据现有本体创建一些个体。但是,解释中未提及您提供的个人。因此,它们不是不一致的原因(再次假设您只得到上面的 1 个解释)。 为了更清楚起见,在解释中,我指出了公理和断言: Region subClassOf Abstract --> axiom hasParticipant range Object --> axiom hasRegionDataValue domain Region --> axiom objectActedOn subPropertyOf preActor --> axiom SemanticMapPerception_WorkPiece_1234 objectActedOn obj_1234 --> assertion obj_1234 depthOfObject 0.02f --> assertion depthOfObject subPropertyOf hasDepth --> axiom actor subPropertyOf hasParticipant --> axiom Abstract disjointWith Object --> axiom hasShapeParameter subPropertyOf hasRegionDataValue --> axiom preActor subPropertyOf actor --> hasDepth subPropertyOf hasShapeParameter --> axiom 为了解决这个问题,我建议: 根据解释,有问题的人似乎是obj_1234或SemanticMapPerception_WorkPiece_1234。我建议至少暂时删除这些内容,然后重新运行推理机。如果这是唯一的解释,那么你的本体论现在应该是一致的。这意味着您对这些人做出的断言是不正确的。希望您能找到有关如何使用本体的文档,或者您可以联系本体的创建者。 如果您有多个解释,请尝试删除所有断言(至少是暂时的),然后重新运行推理器。如果本体仍然不一致,则意味着本体的公理存在问题,您需要与本体的创建者一起解决这个问题。

回答 1 投票 0

SPARQL 返回未链接到一组类的实例 - 查询返回所有实例而不是仅一个实例

一个本体的小例子 @前缀:。 @前缀rdf:。 @前缀猫头鹰:。 @前缀rdf...

回答 1 投票 0

从 RDF 文件生成 .DOT 文件

我有一个 RDF 文件,我想从中生成一个 .dot 文件。我想创建一些规则来设置节点以及这些节点之间的链接的样式(例如指向

回答 4 投票 0

用于 SPARQL 和 TTL、n3 等文件的 CLI 工具 ala csvsql - 用于教学目的的 Hello World 示例

编辑:使这个问题更加具体。请提供使用您选择的工具在 Linux 上本地对 .ttl 文件执行 sparql 查询的“hello world”示例。 csvsql 允许查询 .csv 文件

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.