Individual with “null” object property

痴心易碎 提交于 2019-12-11 05:13:58

问题


I am working on an ontology task in Protege.

Situation: I have Student class that has subclasses of InactiveStudent, ActiveStudent and VeryActiveStudent. These subclasses have conditions related to object property called isEnrolledForSubject. I defined conditions for:

ActiveStudent = 'Class of all students' and (isEnrolledForSubject min 1 'Class of all subjects')

VeryActiveStudent = 'Class of all students' and (isEnrolledForSubject min 4 'Class of all subjects')

but I don't know how to define it for InactiveStudent - the condition is that such student has not enrolled for ANY subject. The thing is, that when I define an individual John I cannot make object property assertion on him saying "isEnrolledForSubject null", because Protege's wizard is expecting a individual from defined range.

How can one solve this kind of situation?


回答1:


You define it as follows:

InactiveStudent = 'Class of all students' and (isEnrolledForSubject max 0 'Class of all subjects')

Then when you define a inactiveStudent individual, you will need to state it as follows:

inactiveStudent Type 'Class of all students'
inactiveStudent Type isEnrolledForSubject max 0 'Class of all subjects'

The reason for this is due to 2 factors:

(1) Object properties defines relations between 2 individuals. There is no way to state that an individual in not in a relation with any other individual besides by constraining its type as I did.

(2) If an individual is not linked to another individual via an object property, nothing more can be inferred due to the open world assumption. Informally it means that the only inferences that the reasoner can make from an ontology is based on explicit information stated in the ontology or what can derived from explicit stated information.



来源:https://stackoverflow.com/questions/49463808/individual-with-null-object-property

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!