我试图使用隐士推理器来计算包含一组OWL公理和一个SWRL规则的本体的推理:
Ontology(
ClassAssertion( :Student :Bob )
ClassAssertion( :Professor :DrBoffin )
ClassAssertion( :University :UF )
ObjectPropertyAssertion( :supervises :DrBoffin :Bob )
ObjectPropertyAssertion( :worksAt :DrBoffin :UF )
EquivalentClasses( :Student ObjectHasSelf( :r1 ))
EquivalentClasses(
ObjectHasSelf( :r2 )
ObjectSomeValuesFrom( :worksAt :University ))
SubObjectPropertyOf(
ObjectPropertyChain( :r2 :supervises :r1 ) :professorOf )
DLSafeRule(Body(ObjectPropertyAtom( :professorOf Variable( ?x ) Variable( ?y )))
Head(ObjectPropertyAtom( :instructorOf Variable( ?x ) Variable( ?y ))))
)
基本上,OWL部分试图表达这样一个规则:
worksAt(x, y), University(y), supervises(x, z), Student(z) -> professorOf(x, z)
使用产权链和重整技术:
professorOf(x, y) -> instructorOf(x, y)
ObjectPropertyAssertion( :r1 :Bob :Bob )
ObjectPropertyAssertion( :professorOf :DrBoffin :Bob )
ObjectPropertyAssertion( :r2 :DrBoffin :DrBoffin )
ObjectPropertyAssertion( :supervises :DrBoffin :Bob )
ObjectPropertyAssertion( :worksAt :DrBoffin :UF)
重读你的问题后,我意识到你试图代表的规则是
工作岗位(x,y),大学(y),导师(x,z),学生(z)→教授(x,z)
但你试图表现它,本质上是通过
虽然它可以用SWRL来表达,但这将只涵盖个体被命名的情况,因此基于rolification的解决方案将涵盖更多的情况。因此,我们的想法是创建一个角色rworksatsomeuniversity
(worksatsome university
rolification)和一个角色rstudent
(student
rolification),然后断言
rWorksAtSomeUniversity o supervises o rStudent SubPropertyOf professorOf
然后,要将profactorof
和instructorof
联系起来,可以使用SWRL规则
教授(x,y)→教师(x,y)
professorOf SubPropertyOf instructorOf
这里有一个本体,它包含这些类和公理,在OWL函数语法中。它不是很好的人类可读性,但它是完整的;您应该能够下载它并用您的推理器测试它。
Prefix(xsd:=<http://www.w3.org/2001/XMLSchema#>)
Prefix(owl:=<http://www.w3.org/2002/07/owl#>)
Prefix(ex:=<http://www.example.com/university#>)
Prefix(xml:=<http://www.w3.org/XML/1998/namespace>)
Prefix(rdf:=<http://www.w3.org/1999/02/22-rdf-syntax-ns#>)
Prefix(rdfs:=<http://www.w3.org/2000/01/rdf-schema#>)
Ontology(<http://www.example.com/university>
Declaration(Class(ex:Professor))
Declaration(Class(ex:Student))
EquivalentClasses(ex:Student ObjectHasSelf(ex:rStudent))
Declaration(Class(ex:University))
Declaration(ObjectProperty(ex:instructorOf))
Declaration(ObjectProperty(ex:professorOf))
SubObjectPropertyOf(ex:professorOf ex:instructorOf)
Declaration(ObjectProperty(ex:rStudent))
Declaration(ObjectProperty(ex:rWorksAtSomeUniversity))
Declaration(ObjectProperty(ex:supervises))
Declaration(ObjectProperty(ex:worksAt))
Declaration(NamedIndividual(ex:Bob))
ClassAssertion(ex:Student ex:Bob)
Declaration(NamedIndividual(ex:DrBoffin))
ClassAssertion(ex:Professor ex:DrBoffin)
ObjectPropertyAssertion(ex:supervises ex:DrBoffin ex:Bob)
ObjectPropertyAssertion(ex:worksAt ex:DrBoffin ex:UF)
Declaration(NamedIndividual(ex:UF))
ClassAssertion(ex:University ex:UF)
EquivalentClasses(ObjectHasSelf(ex:rWorksAtSomeUniversity) ObjectSomeValuesFrom(ex:worksAt ex:University))
SubObjectPropertyOf(ObjectPropertyChain(ex:rWorksAtSomeUniversity ex:supervises ex:rStudent) ex:professorOf)
)
Pellet和HermiT 1.3.7都可以产生推论:
DrBoffin professorOf Bob
DrBoffin instructorOf Bob
用户和首选项由objectProperty链接。 objectProperty断言需要通过SWRL规则从其他用户方面推断。例如,如果用户有听力困难,则需要将设置为,因此: 这很好用。但是,由于我有其他SWRL规则,这些规则也为相同的用户推断,例如: 我需要的是一个规则,不知怎么的,只有在没有更高的级别已经断言的情况下才会断言偏好。在给定的示例中,即使为true,唯一断言的级别也应该是,因为是其他规
假设OWL本体论包含以下SWRL规则: 和以下对象属性断言: 当我运行的隐士推理器中的蛋白质,我得到以下推断对象属性断言: 然而,当我用owlready2加载同一个本体并运行它的hermitreasoner时,我没有得到任何推断的对象属性断言。例如: 不返回任何属性。 我确实以RDFXML格式保存了本体,并且可以使用owlready2检索SWRL规则。 owlready2推理器不支持这种推论吗?
问题内容: 我正在使用 Solr-5.0.0 。我正在寻找一个领域。我需要添加一些规则以获得相关结果。 如果我搜索一个单词,如果存在完全匹配,则应排在最前面。例如:如果我搜索,它应该首先返回与 笔记本电脑 完全相同的内容。 如果我搜索多个单词,则应遵循规则1.单词长度最小的单词排在最前面。例如:如果我进行搜索,它应该比 Dell inspiron笔记本 电脑 先送回 Dell笔记本 电脑 。 如果
问题内容: 我想对包含特定单词的所有锚应用不同的样式。可以在纯CSS中完成吗?如果仅CSS3,也可以。 问题答案: 编号曾经被提议过,但不在CSS3选择器的当前工作草案中。 您将需要一些JavaScript,例如:
我创建了这个本体,它包含两个类:血糖和服务。血糖有两个数据属性:范围为xsd:int的hasValu和范围为xsd:string的hasStatut。对象属性triggerService将血糖作为域,将服务作为范围。 我想用以下规则推断数据属性断言: Blood_Sugar(?x)hasValue(?X,?y)/swlb:比(?Y,126)的大小:小于(?y,500)→hasStatut(?X,高
我一直在尝试设置一个查询打印机:https://github.com/owlcs/owlapi/wiki/dl-queries-with-a-real-reasoner,如果我用曼彻斯特语法给它一个查询,我就可以得到一个响应,它反映了我在Protege中得到的结果。我用Openllet替换了Hermit reasoner,它似乎不能再检索任何个体了。 出于原因,如果可能的话,我想远离耶拿。 ont
Thx回答。