【发布时间】:2019-01-28 07:42:42
【问题描述】:
我有一个希望 Protege 的本体,现在我想实现规则。
我有一个人的字面量为PANEL = "R1-2B"。我喜欢制定一个规则,如果这个值是“R1-2”,那么这个人就有对象属性“isGiveWaySign”。
我已经尝试了一些东西,但我的 SWRL 并不像想象的那样。我只得到 man 新类,而不是只设置一个对象属性。
我的方法如下:
PANEL(?a, ?b) ^ swrlb:substring(?b, "R1-2") -> isGiveWaySign(?a)
我错过了什么吗?
【问题讨论】:
-
一元谓词表示 OWL 中的一个类...OWL 中的属性始终是二元谓词。如果
isGiveWaySign应该是一个属性,那么你应该为它添加一个值,例如"true"^^xsd:boolean或其他 - 我不知道你的本体。 -
这是我当前本体的截图!Valid XHTML.
-
我在“SignsRegulatory”类中有三个实例。一个是例如Sign_GiveWay_6411546。此人的 PANEL_01_DESIGN 值为“R1-2B”。我想要读取这个值的规则,然后将这个人移动到类:GiveWaySign(可能通过设置对象属性'isGiveWaySign')。我尝试过的这些东西不起作用
标签: semantics protege rule validationrules swrl