Может ли OWL-аргумент наследовать диапазоны свойств данных от родительских свойств?
Например, есть свойство данных "hasEventYear".Он имеет домен «Персона» и диапазон «xsd: integer».Когда добавляется подпрограмма «hasBirthYear», рассудитель сообщает, что у этого подпроправия есть домен «Person».О диапазоне он ничего не говорит.
Это нормально?
Код ниже был протестирован на Protege 5 и Hermit:
Declaration(Class(:Person))
Declaration(DataProperty(:hasBirthYear))
Declaration(DataProperty(:hasEventYear))
SubDataPropertyOf(:hasBirthYear :hasEventYear)
SubDataPropertyOf(:hasEventYear owl:topDataProperty)
DataPropertyDomain(:hasEventYear :Person)
DataPropertyRange(:hasEventYear xsd:integer)
UPD: Вы можете взломать Protege)) добавив:
Declaration(DataProperty(:hasDeathYear))
SubDataPropertyOf(:hasDeathYear :hasEventYear)
DataPropertyRange(:hasDeathYear xsd:string)
У меня есть домен hasDeathYear "Nothing" и объяснение:
hasEventYear Range: xsd:integer
hasDeathYear SubPropertyOf: hasEventYear
hasDeathYear Range: xsd:string