У меня есть два класса A
и B
, и я хочу утверждать, что A
- это relatedClass
B
.
Я хочу сделать это на уровне класса, сначала я подумал о создании свойства объекта relatedClass
и добавлении этого утверждения. Но я могу делать это только между людьми.
OWLObjectProperty related = dataFactory.getOWLObjectProperty(IOR + "#relatedClass");
OWLAxiom axiom = dataFactory.getOWLObjectPropertyAssertionAxiom(related, classA, classB);
Это неверно, потому что метод ожидает, что classA
и classB
будут отдельными лицами.
Можно ли установить отношения между классами? Как это делается с помощью OWL API?
Я следую этому шаблону , чтобы преобразовать таксономию и он говорит:
Утверждают, что компетенция связана с классом производительности
Где competence
и performance
являются классами.
Обновление
Хорошо, поэтому, основываясь на ваших ответах и комментариях, я пытался понять, о каких отношениях идет речь. Но я в растерянности.
Во-первых, значение related такое же, как и значение skos:related
, поэтому оно очень общее:
Свойство skos: related используется для установления ассоциативной связи между двумя концепциями SKOS.
Используется, когда два понятия связаны, но одно не является более общим или конкретным понятием другого. Плюс, это симметричное свойство. Одним из примеров из моего домена является то, что «Информационные системы» относятся к «Системной безопасности» (но, как вы можете видеть, это очень общий вид отношений).
Вот схема, которая является частью шаблона:
А вот (очень размытая, но так выглядит на бумаге) версия диаграммы для примера:
Так что я получаю отсюда, что это должен быть ObjectProperty
, и я должен установить домен и диапазон, но как это работает, если:
ClassA related ClassB
ClassC related ClassD
Как мне установить домен и диапазон в этом случае? Или вы думаете, у меня должно быть по одному на пару связанных классов?