【发布时间】:2016-04-05 08:30:40
【问题描述】:
我的本体中有这个公理
:drug :givenAs (({dose1}) or ({dose2}) or ({dose3}))
and (not ({dose4}))
根据 Turtle,语法不正确,但我希望你明白这一点。
我想断言dose1 后跟dose2 后跟dose3。
我查看了Modelling sequence order in OWL-DL ontology,但它并不能完全解决我的问题。那是因为在这种情况下,我只与个人打交道,而不是与班级打交道。
什么是断言序列的优雅方式?
该公理用于识别数据记录中的错误。例如,如果有:drug :givenAs :dose2 . 而没有:drug :givenAs :dose1 .,我希望本体指出一个错误
更新 1
我按照建议尝试了hasNext 属性。我可以链接使用该属性的个人。但是,我不确定这是否适用于我的上下文:
Class: SequenceItem
EquivalentTo:
hasNext only SequenceItem
我没有课程,如果合适,我想避免它。我该如何分配序列?
更新 2
如前所述,我添加了类公理。推理者没有发现错误。然而,他们也没有识别出dose2 在dose1 之前的错误记录。我断言Dose 类相当于:
Dose
and hasNext only Dose
我认为,问题是我没有在任何地方断言在剂量 1 之前不可能有剂量 2,在剂量 2 之前不可能有剂量 3,依此类推。
【问题讨论】:
标签: semantic-web owl ontology linked-data