OWLAPI: использование enum 'Imports'

Можно ли настроить OWLAPI таким образом, чтобы он не импортировал онтологии / онтологии, присутствующие в текущей рабочей онтологии?

Как Imports enum работает? (доступно по адресу org.semanticweb.owlapi.model.parameters) [Перечисление для читаемых человеком значений для включения / исключения импорта из поисков]. Как добавить это в код OWLAPI в JAVA?

Это перечисление имеет две константы ВКЛЮЧИТЬ и ИСКЛЮЧИТЬ.

1 ответ

Решение

Перечисление Imports не связано с загрузкой импортированных онтологий, оно связано с поиском аксиом в этих онтологиях. INCLUDE будет искать импортированные онтологии, а также текущую онтологию в любом вызове метода, который принимает параметр Import.

Я не верю, что есть какой-то переключатель, чтобы просто остановить разрешение импорта. Вы можете обойти эту проблему, создав пустую онтологию и SimpleIRIMapper, который возвращает пустой IRI онтологии для любого ввода. Это эффективно перенаправляет все директивы импорта для включения пустой онтологии вместо реальных онтологий.

Пример с OWLOntologyIRIMapper:

final IRI emptyOntologyIRI=...
OWLOntologyIRIMapper mapper = new OWLOntologyIRIMapper() {
    public IRI getDocumentIRI(IRI in) {
        return emptyOntologyIRI;
    }
};
Другие вопросы по тегам