是否可以使用OWL API检查OWLClassExpression是否包含另一个OWLClassExpression?
分类示例: Taxonomy Image (没有不相交的课程)
第一类表达:" E和C"
二等表达式:" A"
第三类表达:" D"
我想知道第二个包含第一个,但第三个不包含第一个。
我的意思"包含"是:如果我实例化属于第一个(E和C类)的个体,那个人也来自第二个(A类)。
答案 0 :(得分:0)
您需要使用OWLReasoner
来执行此操作。通过创建您要验证的公理(例如A subClassOf E and C
- 并测试本体是否包含它(OWLReasoner::isEntailed(OWLAxiom)
)来执行测试。
OWLReasoner
实现 - 请参阅Pellet,Openllet,HermiT,FaCT ++,JFact(所有这些都可以在各自的网站上找到,除了FaCT ++之外,所有这些都可以在Maven Central上找到