Скажите, что я хочу подтвердить вставку рекламной акции компании в тройной магазин с помощью Shex. Возможный подход заключается в кодировании Шекса следующим образом:
:Promotion {
my-onto:has_person @:Person ;
my-onto:grants_role @:Role ;
}
:Person {
a [ foaf:Person ] ;
}
:Role {
a [ my-onto:CompanyRole ] ;
}
Это упрощение. Проблема состоит в том, что при вставке данных тройка будет иметь вид:
:promotion-123 my-onto:has_person :person-456 ;
my-onto:grants_role :role-CTO .
, и этот график не пройдет проверку Шекса, поскольку в нем отсутствуют все a
тройки.
Так для определения и документирования того, что правильно в качестве IRI в двух отношениях, имеет смысл иметь фигуры, но в 90% всех сценариев реального мира ios данные будут поступать, как в примере выше, без связи типа (в этом примере) и, следовательно, не сможет проверить.
Какой будет правильный способ документирования сложных и вложенных фигур для проверки RDF, но в то же время «отключит» некоторые проверки определенных точек на графике?
Вариант использования, о котором я думаю, - это когда мне нужно добавить дополнительную информацию к «существующим» фигурам, используя IRI, такие как owl:NamedIndividuals
, или константы в онтологии, уже существующие сущности, такие как Persons, companies и т. Д. c.