SWRL 规则不正确
SWRL rule does not the right thing
我有一个 ontology 许愿门徒,现在我想实施规则。
我有一个人有文字 PANEL = "R1-2B"
。我喜欢制定一个规则,如果这个值是 "R1-2" 那么这个人有对象 属性 "isGiveWaySign"。
我已经尝试了一些东西,但我的 SWRL 做的并不像想象的那样。我只得到 man new 类 而不是只设置一个对象 属性.
我的方法是这样的:
PANEL(?a, ?b) ^ swrlb:substring(?b, "R1-2") -> isGiveWaySign(?a)
我是不是漏掉了什么?
我在堆栈溢出时使用优秀的血压示例解决了这个问题。我已经简化了我的 ontology 并且可以确定我的问题的解决方案:
Panel(?s, ?gws) ^ swrlb:contains(?gws, "R1-2") ^ Sign(?bs) -> GiveWaySign(?bs)
对上述更适合我的解决方案的更正:
Panel(?s, ?gws) ^ swrlb:contains(?gws, "R1-2") ^ Sign(?s) -> GiveWaySign(?s)
我有一个 ontology 许愿门徒,现在我想实施规则。
我有一个人有文字 PANEL = "R1-2B"
。我喜欢制定一个规则,如果这个值是 "R1-2" 那么这个人有对象 属性 "isGiveWaySign"。
我已经尝试了一些东西,但我的 SWRL 做的并不像想象的那样。我只得到 man new 类 而不是只设置一个对象 属性.
我的方法是这样的:
PANEL(?a, ?b) ^ swrlb:substring(?b, "R1-2") -> isGiveWaySign(?a)
我是不是漏掉了什么?
我在堆栈溢出时使用优秀的血压示例解决了这个问题。我已经简化了我的 ontology 并且可以确定我的问题的解决方案:
Panel(?s, ?gws) ^ swrlb:contains(?gws, "R1-2") ^ Sign(?bs) -> GiveWaySign(?bs)
对上述更适合我的解决方案的更正:
Panel(?s, ?gws) ^ swrlb:contains(?gws, "R1-2") ^ Sign(?s) -> GiveWaySign(?s)