Search Mailing List Archives
[protege-owl] Restriction of instances in OWL?
kaljurand at gmail.com
Mon May 26 02:34:29 PDT 2008
On Fri, May 23, 2008 at 5:49 PM, Frank Puhlmann
<Frank.Puhlmann at inubit.com> wrote:
> I have a class structure with "Role", "Person", and "Department". Each role is assigned to at least one department via hasDepartment: Role -> Department. Each person is assigned to at least one role via hasRole: person -> Role.
> Furthermore, I have several individuals for Person, Role, and Department.
> Now I would like to define a Class "SmallDepartment" that contains all individuals of the class Department that have a maximum of three individuals of Person working in the Department.
> Informally, something like this:
> Class SmallDeparment
> definedBy: each ?department with Number_of_individuals(?person) < 4
> with ?person as the set of individuals working in ?department (via the hasRole/hasDepartment links)
> Can this be expressed in OWL?
Maybe the following axioms will do the job (expressed in Manchester
OWL 2 Syntax, usable in Protege 4):
(1) (has-role o has-department) SubPropertyOf work-for
(2) small-department SubClassOf department and (inv(work-for) max 3 person)
More information about the protege-owl