owl 相关问题

Web本体语言(OWL)是用于创建本体的词汇表,即类的定义,属性以及它们之间的关系。请不要使用此标签代替'owl-carousel'!

将关系数据库映射到本体

我正在尝试将关系数据库映射到本体。 我读了很多方法,比如 1 2,他们都同意对桥表进行建模(两个表之间的连接表,两个表通过许多...

回答 2 投票 0

本体作为图

我是本体论的初学者,所以我对这个基本问题表示歉意。有些人告诉我本体就是图,这对我来说对于算法来说是有意义的;其他人告诉我本体论...

回答 1 投票 0

@prefix 在 sparql 中起什么作用?

我有一个问题: 在 sparql 中 @prefix 的作用是什么: @前缀:http://example.org/animals/ 为什么要这样写?

回答 3 投票 0

为 Fuseki 服务器设置配置时出现问题 - 初始化异常:org/apache/jena/reasoner/BaseInfGraph$InfFindSafeCapabilities

我试图使用 protege 的 SWRL 规则推理器来设置 Apache Jena Fuseki。 遵循 Miguel2617/apacheJenaSetUp.md 教程,但出现此错误 初始化异常:org/apache/jena/

回答 1 投票 0

将 ontModel 写成 owl 而不是 jena 的 rdf

我有一个猫头鹰本体,我将其读入 Jena OntModel。然后我在运行时更新它。现在我想把它作为 OWL 本体写回来。我正在使用下面的代码: RDFWriter writer = model.getWriter("RDF/...

回答 3 投票 0

Jena NoReaderForLangException:猫头鹰

我的问题是 Jena,当我使用 Turtle Ontolgy 时,它工作正常,当我使用任何其他本体(如 OWL 或 RDFS)时,它显示相同的错误 线程“主”com.hp.hpl.jena.shared 中出现异常。

回答 2 投票 0

读取OWL/XML的问题

我在使用 Jena 从 Java 读取 OWL/XML 文件时遇到问题。 我读取 RDF/XML 文件没有问题,但每当我从 Protege 创建 OWL/XML 文件并尝试读取它时,Java 都会给出此错误...

回答 4 投票 0

在 R 中加载本体

我想使用 bert 映射算法查找特定本体中存在列表中的哪些值。 第一步是加载本体以便在流程中使用它。 因为我是新手...

回答 1 投票 0

使用 OWL 推理

OWL 中的推理仅用于构建和维护本体,还是也可以在插入本体的系统中使用?如果是第二种情况,可以...

回答 1 投票 0

owl n元关系的独特性

我通过将关系表示为具有 n 对象属性的类,在 owl 本体中定义了 n 元关系,即给定 3 元关系 r,我有 3 个对象属性 r。 有人可以吗

回答 1 投票 0

第二个函数不会等待 JS 中的第一个函数完成

我正在使用名为 OWL 的 JS 框架,我有库,当您单击按钮时,它会调用函数,在数据库中上传文件,然后更新 useState 以重新渲染模板。 我的主要功能是...

回答 1 投票 0

在 OWL 中使用 inverseOf 和 propertyChainAxiom ([inverseOf <property>]) 有区别吗?

以下语句为例: @基地。 @前缀猫头鹰:。 猫头鹰:ObjectProperty 。 以以下语句为例: @base <http://ex.org/> . @prefix owl: <http://www.w3.org/2002/07/owl#> . <hasPart> a owl:ObjectProperty . <compatibleWith> a owl:ObjectProperty . <main> owl:differentFrom <part> . <main> <hasPart> <part> . 我可以通过添加这两个语句之一来推断 <part> 是 compatibleWith <main> <compatibleWith> owl:propertyChainAxiom( [owl:inverseOf <hasPart>] ) . 或 <compatibleWith> owl:inverseOf <hasPart> . 在我看来,这两种说法对于人类来说在语义上是否有所不同,因为兼容性并不是真正拥有一部分的反面。 第一个宁愿声明如果存在 hasPart 关系,则另一个方向上也存在 CompatibleWith 关系。 但是,我想知道对于 OWL 推理机来说,除了添加空白节点和 propertyChainAxiom 语句之外,这两个语句是否基本上等效。 还有其他的想法我可以(也许不想)用一种说法来推理,但不能用另一种说法来推理吗? 例如,差异变得明显: <compatibleWith> a owl:SymmetricProperty . 已添加。 使用 <compatibleWith> a owl:SymmetricProperty . <compatibleWith> owl:inverseOf <hasPart> . 这里也给出了相反的原因: <part> <hasPart> <main> . 如果某些部分不同,跟进<hasPart> a owl:InverseFunctionalProperty甚至可能会导致错误。 <compatibleWith> a owl:SymmetricProperty . <compatibleWith> owl:propertyChainAxiom( [owl:inverseOf <hasPart>] ) . 并不认为<part> <hasPart> <main> .在这里产生了至关重要的影响。

回答 1 投票 0

如何在OWL中建模独家或?

I OWL 我想对某个类仅允许一个或另一个子类的情况进行建模。我想建立一个限制模型,允许属性仅像 (A XOR B) OR (some

回答 1 投票 0

在OWL中定义类时,如何约束一个对象属性必须与另一个对象属性引用同一个体?

我正在学习 OWL 2 Web 本体语言入门,并希望在使用的“家族”示例本体的上下文中添加我自己的类。所以我添加了一个新的城市类以及一个新的o...

回答 1 投票 0

如何构造一个“Nobody”的 OWL 属性?

我正在尝试创建一个 OWL 本体,其中包含一个 ClaimBy 属性,该属性可以是个人、组织或类似的“代理”(本质上是 foaf:Agent),也可以是无主的(owl:Th...

回答 1 投票 0

耶拿有没有办法看到OntClass来自导入的本体?

我有一个导入 bfo 的本体。在我的测试用例中,我只有一个类,它是实体的子类: 我有一个导入bfo的本体。在我的测试用例中,我只有一个类,它是 entity: 的子类 <rdf:RDF xmlns="http://my.ontology/ontologyTest#" xml:base="http://my.ontology/ontologyTest" xmlns:da="http://my.ontology/ontologyTest#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:obo="http://purl.obolibrary.org/obo/" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xml="http://www.w3.org/XML/1998/namespace" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:terms="http://purl.org/dc/terms/"> <owl:Ontology rdf:about="http://my.ontology/ontologyTest"> <owl:imports rdf:resource="http://purl.obolibrary.org/obo/bfo/2019-08-26/bfo.owl"/> </owl:Ontology> <owl:Class rdf:about="http://my.ontology/ontologyTest#Event"> <rdfs:subClassOf rdf:resource="http://purl.obolibrary.org/obo/BFO_0000001"/> </owl:Class> </rdf:RDF> 当我打开本体时,我正在做: OntModel model = createModel("OWL_MEM"); FileManager.get().readModel(model, uri.toString()); Model _model = model.getRawModel(); model = new OntModelImpl(OntModelSpec.OWL_MEM, _model); ExtendedIterator classes = model.listClasses(); while (classes.hasNext()) { OntClass theOwlClass = (OntClass) classes.next(); if (thisClass.getNameSpace() == null && thisClass.getLocalName() == null) { continue; } ... } 我从我的本体中获取所有类(这里是Event),也从导入的本体中获取。 Jena 有没有办法知道 OntClass 是来自导入的本体并且未在我当前的本体中声明? 正如 UninformedUser 的评论中所说,感谢他,您可以执行以下操作: 列出所有导入本体的URI model.listImportedOntologyURIs() 列出导入本体的所有类model.getImportedModel(uri).listClasses() 在模型的所有类上创建一个迭代器,删除所有导入的类model.listClasses().filterDrop(importedClasses::contains) 因此,要打印模型的所有类而无需导入类: import java.util.HashSet; import java.util.Set; import org.apache.jena.ontology.OntClass; import org.apache.jena.ontology.OntModel; import org.apache.jena.ontology.OntModelSpec; import org.apache.jena.rdf.model.ModelFactory; import org.apache.jena.util.iterator.ExtendedIterator; OntModel model = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM); model.read("file:///Users/von/tools/data.owl", "RDF/XML"); Set<OntClass> importedClasses = new HashSet<>(); for (String uri : model.listImportedOntologyURIs()) { importedClasses.addAll(model.getImportedModel(uri).listClasses().toSet()); } ExtendedIterator<OntClass> it = model.listClasses().filterDrop(importedClasses::contains); while (it.hasNext()) { OntClass cls = it.next(); System.out.println(cls); }

回答 1 投票 0

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

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

回答 2 投票 0

您可以使用 OWL 2 函数式语法根据另一个人的属性来断言对象属性吗?

假设我们有以下声明: 声明(ObjectProperty(:喜欢)) 声明(NamedIndividual(:John)) 声明(NamedIndividual(:George)) 声明(NamedIndividual(:钓鱼...

回答 1 投票 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

Odoo16 - Owl farmework - 使用 userService("orm") 时出错

使用 userService("orm") 时出错 - odoo16 我的任务是创建一个新页面,这就是我的做法。 root/controller => 创建一个渲染根模板的控制器 维...

回答 1 投票 0

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