OWL API - 存储个人所属的类而不是打印它

时间:2017-09-12 08:45:49

标签: java owl-api

EntitySearcher.getTypes(individual, ontology)会返回OWLClassExpression的流。

打印它我们做:

 EntitySearcher.getTypes(individual, ontology).forEach(System.out::println);

相反,我想将输出存储在OWLClass或一组OWLClass中以便稍后处理。我该怎么做?

Stream操作让我感到困惑。

真诚的问候

1 个答案:

答案 0 :(得分:0)

要将流转换为集合,OWLAPIStreamUtils :: asSet(Stream)中有一个实用程序 - 这只是标准Collectors类的便利。

要仅获取OWLClass,您需要过滤类型:

Set classes = OWLAPIStreamUtils.asSet(                                                  EntitySearcher.getTypes(个体,本体)                                                  .filter(OWLClassExpression :: isOWLClass));