2015-12-02 4 views
0

У меня есть следующая ситуация: У меня есть три основных онтологии, которые имеют соответственно описания TBox и ABox. Они должны быть импортированы/объединены во время выполнения. Мне также нужно импортировать/объединять другие онтологии по одному за раз, которые содержат только описания ABox. Последние должны быть загружены и удалены динамически с прохождением времени. Моя дилемма заключается в том, следует ли использовать импорт или слияние OWLAPI 4?OWLAPI 4: импорт или объединение онтологий?

ОБНОВЛЕНИЕ: Основные онтологии ABox в конечном итоге будут модифицированы на основе поступающих данных из динамической нагрузки онтологий «неполный рабочий день».

ответ

1

Импорт звучит как лучшая стратегия, поскольку вы не упомянули об изменениях в какой-либо из онтологий, а только дополнения и удаления целых онтологий.

Я хотел бы сделать следующее:

  • создать новую пустую онтологию
  • импорта все онтологии, которые всегда будут включены
  • добавить/удалить импорт в онтологии, которые вы хотите использовать для частичного времени

Примечание: OWLAPI не загружает онтологии в том месте, где создается объявление импорта, - это чтобы избежать длительных периодов загрузки, когда вы просто редактируете импорт. Поэтому для этой работы вам придется загрузить онтологий вы планируете заранее использовать:

  • Load онтологий X
  • импортную декларацию добавить в Y: Y imports X

Большинство методов запроса на OWLOntology принимают параметр, чтобы указать, хотите ли вы, чтобы поиск включал закрытие импорта - вы, вероятно, захотите установить это в Импорт. ВКЛЮЧЕНА все время.

+0

Да, правильно, я не упоминал об изменениях. Основные онтологии ABox будут изменены на основе входящих данных из «неполных» онтологий. Вопрос был изменен, чтобы включить эту информацию. – Edi

+0

Это немного усложняет конструкцию, но вы все равно сможете использовать ответ выше. Вы можете изменять импортированные онтологии, вы просто теряете удобство изменения только онтологии корня. – Ignazio

+0

Если я создаю новую пустую онтологию и другие импортеры в нее, я не буду вносить изменений в корневую, то есть пустую онтологию, но я смогу сделать это на других. Я прав? – Edi