我已經與SWRLAPI的SWRLBuiltInBridge組件來實現這一點: https://github.com/protegeproject/swrlapi/wiki/SWRLBuiltInBridge如何使用自定義SWRL內置函數擴展Pellet 2.4.0?
然而,在我的Java代碼我也用顆粒裏森納與OWLAPI。每當我使用推理器時,當它找到一個內置未知的SWRL規則時會產生一個警告。我知道我可以禁用推理器中的規則檢查,並在我想運行規則時使用SWRLAPI。
但這似乎不實際......因爲在使用推理器之前,我必須在每個本體修改之後運行規則。
我見過它深入探討了這個問題一個博客頁面,但可能已過時: https://semwebguy.wordpress.com/2011/01/04/how-to-extend-pellet2-2-2s-swrl-built-in-support-with-your-custom-built-in/
此外,創建的方式內置(相應於博客)當與相比的不同SWRLAPI(例如,Abox對象是一個參數)。
是否有另一種方法來做到這一點?或者可以將Pellet與SWRLBuiltInBridge連接起來?
據我所知,沒有單位測試用例的功能是代碼。如果你設法得到一個可用的代碼,那麼從它衍生出一個測試可能會很好,或者功能可能不會被支持很久。 – Galigator