Shacl API规则引擎是否像TopBraid Composer那样支持sh:order for Rule execution?
我在TBC中测试了规则排序,它不断迭代,直到达到一个固定点。没有更多要执行的规则。我怀疑它被认为是一次通过,但规则是有优先级的,且它们的结果可用于在相同的通过中执行的下一个规则。
无论如何,不管它是如何实现的,我想知道它是shacl规则引擎的一个特性,还是特定于TopBraid composer的实现。
下面的帖子提示了我正在寻找的答案,但没有找到。
发布于 2021-02-09 10:14:35
当前的SHACL API不执行开箱即用的迭代。RuleEngine对所有规则执行一次迭代,这些规则可以根据大纲访问彼此的结果,网址为
https://w3c.github.io/shacl/shacl-af/#rules-execution
要进行迭代循环,只需调用RuleEngine.executeAll,直到一轮没有创建任何新的推论。需要注意避免无限循环,因为一些规则在理论上可能会产生空节点、随机值等。TopBraid Composer会自动执行此循环。
https://stackoverflow.com/questions/66079619
复制相似问题