У меня есть то, что, по моему мнению, должно быть распространенной проблемой в дизайне онтологий OWL, но получить прямой совет по этому вопросу довольно сложно.
Резюме: Мне нужно ограничитьтроичное отношение 3 таксономически богатых структур классов, так что диапазон отношения зависит от соответствующего домена.И мне не обязательно моделировать это как схему, я просто хочу хранить информацию «этот подкласс связан с этим» каким-то образом.В качестве наилучших вариантов я вижу ограничения свойства объекта или хранение информации в виде экземпляров, которые непосредственно реализуют необходимые мне отношения как экземпляры общего отношения.
Ситуация:
- У меня есть троичное отношение, которое я смоделировал с помощью дополнительного класса
- Существует два таксономически довольно богатых класса
A,B
с соответственно большим количеством подклассов и третий класс C
с некоторыми подклассами, который соединяется с отношением междуподклассы A
и B
- Я ввел класс
D
, который подключается к подклассам A,B,C
- Запутанный пример:
A
- травоядные животные, B
-плотоядные животные и C
являются климатологическими условиями.Теперь я хочу смоделировать, что определенные хищники охотятся на определенных травоядных, и, кроме того, определенные климатологические условия влияют на охотничье поведение.Но не все климатологические установки влияют на все пары (a,b)
, поэтому есть интересная информация для хранения - Поскольку я не могу указать климатологические установки непосредственно на пару
(a,b)
, я ввожу D
, классохотничьих привычек, которые относятся к плотоядным животным как к участникам охоты, к травоядным животным как к охотящимся участникам и к климатологическим условиям как к изменяющим настройкам.
Проблема:
- У меня теперь отношение от
A
до D
, которое является общим, но я не хочу, чтобы на каждую охотничью привычку (пару охоты и охоту) влияли одинаковые климатологические условия - Например,: Возможно, я хочу, чтобы дождь влиял только на охотничьи привычки между макроскопическими животными, или я хочу, чтобы извержения вулканов влияли только на животных, которые живут рядом с вулканами
Варианты решения:
- вводят ограничения свойств объекта, которые похожи на виртуальные суперклассы (например, класс животных, участвующих в охотепривычки, на которые влияют извержения вулканов)
- непосредственно вводят всю информацию на уровне экземпляров: создают экземпляры всех животных, о которых я хочу утверждать, затем также создаем экземпляры климатологических условий и охотничьих привычек,затем свяжите эти экземпляры вместе
- создайте группу подотношений, которые имеют домен и охватывают конкретных животных, охотничьи привычки и климатологические параметры
Я подозреваю, что ответ будет "Это зависит».В этом случае я действительно благодарен за понимание некоторых преимуществ и недостатков вариантов.Конечно, может быть действительно хорошее решение, которое мне не хватает.