Класс List с Apache Jena в больших файлах OWL - PullRequest
0 голосов
/ 14 декабря 2018

Я пытаюсь просто перечислить класс из онтологии OBI (http://obi -ontology.org ), но Jena (3.9.0) не работает в этом большом (не очень большом) файле OWL,

Код:

    public void Jena() throws FileNotFoundException {

    OntModel model = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM_RULE_INF);

    File file = new File("////Users/Documents/Ontologias/OBI/obi.owl");
    //File file = new File("////Users/Documents/Ontologias/pizza/pizza.owl");
    FileReader reader = new FileReader(file);

    System.out.println(" ** read **");
    model.read(reader, null);

    System.out.println(" ** iterador ** ");
    ExtendedIterator<OntClass> classIter = model.listNamedClasses();

    System.out.println(" ** while ** ");
    while(classIter.hasNext()) {
        OntClass ontClass = classIter.next();
        String classe = ontClass.getLocalName();
        String label  = ontClass.getLabel(null);

        System.out.println(classe + " | " + label);
    }
}

И отлично работает, например, с pizza.owl.

1 Ответ

0 голосов
/ 14 декабря 2018

Я изменяю OntModelSpec для конфигурации LITE и работает сейчас.

    OntModel model = ModelFactory.createOntologyModel(OntModelSpec.OWL_LITE_MEM);
...