Значение точных ограничений мощности OWL

Я начинающий программист с синтаксисом Манчестера для OWL. Мне нужно понять роль exactly, Какое из этих ограничений является правильным:

(hasChild (A or B)) and (hasChild exactly 1 Thing)
(hasChild (A or B)) and (hasChild exactly 2 Thing)
(hasChild (A and B)) and (hasChild exactly 1 Thing)
(hasChild (A and B)) and (hasChild exactly 2 Thing)

Можете ли вы объяснить это, когда A а также B эквивалентны, и когда они не пересекаются?

1 ответ

Решение

Значение выражений классов определено в разделе 2.2.3. Выражения классов в рекомендации O3L 2 Web Ontology Language Direct Semantics W3C.

Четыре выражения класса, приведенные в вопросе, не очень хорошо сформированы, так как я понимаю синтаксис Manchester OWL, так как hasChild (A or/and B) действительно должно быть hasChild some/only (A or/and B), Тем не менее, мы все еще можем обсудить значение различных комбинаций.

Точные кардинальные ограничения

Ограничения hasChild exactly 1 Thing а также hasChild exactly 2 Thing Обозначим классы лиц, которые точно связаны с одним или двумя hasChild собственность соответственно. Поскольку выражение класса в ограничении Thing, вероятно, чаще встречаются версии без класса: hasChild exactly 1 а также hasChild exactly 2,

Universal или AllValuesFrom Ограничения

Выражение hasChild only X обозначает класс лиц, которые таковы, что если они связаны с любым другим лицом hasChild собственность, то другой человек является экземпляром X, Это не накладывает каких-либо ограничений на существование таких лиц, а только на то, что если они есть, то они должны быть X s.

Existential или SomeValuesFrom Ограничения

Выражение hasChild some X обозначает класс людей, которые связаны по крайней мере с одним другим человеком, который является X посредством hasChild имущество. Это не накладывает каких-либо ограничений на то, что hasChild является X Просто так хоть один есть.

Значение выражений

Выражения класса в задаче не очень хорошо сформированы на данный момент, и должны быть либо hasChild some (A or/and B) или же hasChild only (A or/and B), Это означает, что нужно рассмотреть несколько случаев, но, к счастью, некоторые из них сокращаются.

Если A и B эквивалентны

Если A а также B эквивалентны, то оба (A or B) а также (A and B) эквивалентны A и к B, Это означает, что выражения в вопросе могут быть упрощены в двух случаях, в зависимости от того, должно ли быть ограничение слева some или же only,

  • (hasChild some A) and (hasChild exactly 1 Thing)
    Это выражение класса обозначает класс людей, которые связаны hasChild свойство по крайней мере для одного человека типа A и которые относятся именно к одному другому человеку hasChild свойство (и с левой стороны, что один человек должен быть этим человеком типа A).

  • (hasChild some A) and (hasChild exactly 2 Thing)
    Это выражение класса обозначает класс людей, которые связаны hasChild свойство по крайней мере для одного человека типа A и которые связаны ровно с двумя hasChild собственности (и с левой стороны, один из этих лиц должен этот тип A).

  • (hasChild only A) and (hasChild exactly 1 Thing)
    Это выражение класса обозначает класс людей, которые связаны hasChild собственность только для людей типа A и которые относятся именно к одному другому человеку hasChild свойство (и слева, что один человек должен иметь тип A).

  • (hasChild only A) and (hasChild exactly 2 Thing)
    Это выражение класса обозначает класс людей, которые связаны hasChild свойство для некоторого человека типа A и которые связаны ровно с двумя hasChild собственность (и слева, оба эти лица должны этот тип A).

Если А и В не пересекаются

Если A а также B не пересекаются, то выражение класса A and B обозначает пустой класс, так как ничто не может быть одновременно A и B, Это означает, что четыре из случаев являются неудовлетворительными.

Случаи, которые включают hasChild some (A and B) неудовлетворительные, потому что нет A and B s для всего, что связано с. Есть два таких случая:

(hasChild some (A and B)) and (hasChild exactly 1 Thing)
(hasChild some (A and B)) and (hasChild exactly 2 Thing)

Сочетание only (A and B) а также exactly n неудовлетворительно, поскольку (до тех пор, пока n не 0), это говорит о том, что индивид должен относиться именно к n вещи, и что каждый из этих n вещи должны быть A and B (из которых не может быть ни одного. Есть два таких случая:

(hasChild only (A and B)) and (hasChild exactly 1 Thing)
(hasChild only (A and B)) and (hasChild exactly 2 Thing)

Все остальные случаи довольно просты, учитывая значение some а также only, Хотя существует четыре выражения классов, есть только два отдельных класса.

(hasChild only (A or B)) and (hasChild exactly 1 Thing)
(hasChild some (A or B)) and (hasChild exactly 1 Thing)

Это класс вещей, которые имеют ровно одного ребенка, который должен быть A или B,

(hasChild only (A or B)) and (hasChild exactly 2 Thing)
(hasChild some (A or B)) and (hasChild exactly 2 Thing)

Это класс вещей, которые имеют ровно двух детей, каждый из которых должен быть A или B,

Другие вопросы по тегам