Может ли кто-нибудь привести примеры зависимостей (если они есть) между свойствами данных, которые мы можем объявить в Protege? В основном то, что я пытаюсь сделать, это объявить простые правила, что, например, одно свойство данных (год) может или не может быть раньше другого (например, год рождения ‹= год смерти). Возможно ли это сделать с помощью свойств данных?
Зависимость свойств данных в Protege
comment
В OWL нет понятия переменных, но лучше использовать правила SWRL.
- person UninformedUser   schedule 14.11.2017
Ответы (1)
Единственными зависимостями, которые могут быть выражены между DataProperties, являются свойства подсвойства и несвязности. SWRLTab в Protege можно использовать для выражения правил. Предполагая следующую онтологию:
ObjectProperty: hasDeathCertificate
Domain: Person
Range: DeathCertificate
DataProperty: dateOfBirth
Domain: Person
Range: xsd:dateTime
DataProperty: dateOfDeath
Domain: DeathCertificate
Range: xsd:dateTime
Class: DeathCertificate
Class: Person
Следующее правило SWRL может быть указано, чтобы гарантировать, что дата смерти в DeathCertificate будет после даты рождения человека.
Person(?p)^dateOfBirth(?p, ?birth)^DeathCertificate(?d)^dateOfDeath(?p, ?death)
^swrlb:greaterThan(?death, ?birth)->hasDeathCertificate(?p, ?d)
Удачи!
person
Henriette Harmse
schedule
16.11.2017