2

我需要使用流口水外部的本体生成一个巨大的事实模型。现在,我当然可以编写一个脚本/程序来解决这个问题。我的方法是为每个本体类生成一个 java bean,其中包含适当的字段、方法和对基于本体关系(可能在映射中)的其他 java 对象的引用。我的问题是,drools 是否有更优雅的方式来解决这个问题。我认为事实模型可以从drools之外的可用资源派生一定是一个常见问题,所以我想知道drools(或guvnor)是否具有在给定一些结构化输入的情况下生成事实模型的内置方法。

我确实在以下线程中找到了一些讨论:http: //drools.46999.n3.nabble.com/rules-users-Using-an-OWL-Ontology-in-drools-advice-td3724566.html

不幸的是,在这次谈话之后,我没能走得很远。

更新:

@alikok 链接的特征文章非常有帮助。它至少提供了一个本体可以适应的框架。总而言之,将本体拟合到 java bean 类模型中的一个大问题是 java 不进行多重继承。几乎任何本体都需要这个,我的也不例外。Traits 使用代理类解决了这个问题,但它们通过允许您在 drl 文件中定义新的“特征”来在后台完成这一切。

我仍然有将我的本体转换为事实模型的问题。这是这篇文章的主要问题(以编程方式生成事实模型),所以我不想检查这个问题是否已经回答。我可以通过上面描述的自定义程序在编译时完成它。我也可以在运行时执行此操作,但对于我的用例而言,编译时间会好得多。但是,我希望有人已经解决了这个问题,并且可以对他们使用的方法提供一些见解。

4

0 回答 0