问题标签 [description-logic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
owl - 如何编写嵌套 DL 查询
我想在 Protege 中编写一个嵌套的 DL 查询。我可以运行一个简单的查询,例如:
Person 和 hasFather 值 PersonA
它检索其父亲为 PersonA 的所有人员的名称。但我希望 PersonA 值也应该从一些查询中检索,例如
Person 和 hasFather 值(Person 和 hasSon 值 PersonB)
它在 Protege 中显示语法错误。请帮助我正确的格式。
sparql - 检索最具体的实例类
是否可以使用 SPARQL 查询定义资源(来自 DBpedia)?我想要有类似 TBox 和 ABox 的东西,它们在语义网的(概念)聚类方法:问题和应用程序(幻灯片 10-11)中显示。例如,对于 DBpedia 资源Stephen King,我想要:
Stephen_King : Person ⊓ Writer ⊓ Male ⊓ …(最具体的类)
rdf - 本体属性之间的等式关系
我有 2 个属性,例如“hasColor”和“hasFinish”。我想用本体表示,在本体 A 类的情况下,属性“hasColor”和“hasFinish”相等(owl:equivalentProperty)。但在本体 B 类的情况下,属性“hasColor”和“hasFinish”不相等。
我怎样才能做到这一点?
一种方法可能是以 A 类为范围创建“hasColor”和“hasFinish”属性并将它们设置为相等。然后创建另一个 'hasColor' 和 'hasFinish' 属性,其中 B 类作为一个范围并且没有相等的关系。但这是正确的方法吗?
semantic-web - Protege Owl:对个人的限制
我的本体有一点问题!我们致力于管理智能家居的本体。所以我们有像桌子、门、灯……这样的对象。一个聪明的对象有:
- 一个执行器,它运行一个动作,例如打开一扇门
- 例如,获取有关温度信息的传感器
我有对象属性,例如:hasActuator --> Door hasActuator DoorController
所以现在,问题是个人!我希望一个对象(例如 Door_1)有一个执行器 DoorController_1,但另一个门(Door_2)不能使用执行器 DoorController_1,因为他已经在使用了!
我该如何治疗?有哪些限制?
如果我把 hasActuator 功能化,那只是说一个对象只能有一个执行器,但这不是我想要的!
java - 添加更复杂的子类公理
我偶然发现了另一个问题......
我想实现类似的东西:
我想使用 RDFList 这样做,将必要的属性添加到列表中,然后调用方法 createUnionClass(或 createIntersectionClass)并将其组合在一起。然后,使用 addSuperClass() 将这个方法的结果添加到特定的 ontClass 中。
这是错的吗?我从一些非常简单的东西开始,比如:
但结果不是前面所说的两者的并集的subClassOf,而只是subClassOf nil。
任何帮助,将不胜感激。
java - 如何在 JENA 中添加合格的基数
如何在耶拿添加合格的基数限制?我不能使用createCardinalityQRestriction
,因为这OntModelSpec
是 OWL 的第一个版本,而不是 OWL2。在ModelFactory的createOntologyModel中,有没有办法创建OWL2本体?我需要一个类表达式
JeVysledkom正好1 Kolik_Fazovy
我试过使用这段代码:
但我得到了这个例外:
com.hp.hpl.jena.ontology.ProfileException:尝试使用当前语言配置文件不支持的语言构造 CARDINALITY_Q:OWL Full
semantic-web - 如何使用“属性p的值为v的所有xs”作为对象属性范围?
我有一个类,Person。有一个数据类型属性Profession ,其Person的值为{"Composer","Singer","Conductor"}。我有另一个名为Piece的类和一个对象属性compositionBy。我希望composerBy的范围是所有职业为“作曲家”的人?我如何在 OWL 中做到这一点,以及如何使用 Protégé 表达该 OWL?
rdf - Sparql 查询 Subclass 或 EquivalentTo
我想查询尼古丁(产品)的所有子类。
结果必须是(鼻形式尼古丁,来自 ni 的口咽部 ..(4 项).. 见图片)我尝试通过 rdfs:subClassOf+ 和 owl:equivalentClass+ 进行查询,但没有工作从这个例子
中尝试代码相同这里.
这张图片来自 protege 谢谢。
第一个查询很难解释和做,因为文件太大,一些 IRI 不是子类,也不是等效类,我改变了查询方式
我要查询所有id(id/420383004, id/425288007, id/127489000 and id/68540007)
来自 owl:Class rdf:about="http://snomed.info/id/323283001" 请告诉我一些想法。感谢
jena - Jena 的 OWLMicroReasoner 中 owl:hasValue 和 owl:oneOf 支持的区别?
我正在使用值限制从其值信息中派生实例类型:
单值限制owl:hasValue
工作正常,:Mission11
返回类型的 SPARQL :SpaceMission 和:ApolloMission
预期的一样。然后我为类的定义添加第二个值限制:ApolloMission
:
(限制类型已自动从 更改owl:hasValue
为owl:someValuesFrom
)。在这种情况下,不会返回:ApolloMission
个人的预期类型推断:Mission11
,而只会返回:SpaceMission
. 我有什么问题吗?或者类型推断只能通过类型的值限制来实现owl:hasValue
?
我正在使用 Jena 的OWLMicroReasoner并为
{<:Mission11> a ?type}
. 也许它无法从owl:someValuesFrom
限制中推断出来。正如我所说,owl:hasValue
限制确实适用于耶拿的微推理器。Jena 的内置推理器是否支持该owl:someValuesFrom
限制?
rdf - owl:Nothing 类的设计目的是什么?
如果您查看OWL 本体定义,您会看到一堆类定义。其中之一如下:
这是否有目的,如果有,它是什么?