MoreOver
MoreOver

Reputation: 381

OWL 2 how to express equivalent class

In my ontology I have a class Parent and a class Child. I have an object property isChildOf(Child, Parent).

I'd like to express a new class, FatherWithTwoOrMoreChildren, which corresponds to the class of Parent having at least 2 Child.

Declaration(Class(p:FatherWithTwoOrMoreChildren))
SubClassOf(p:FatherWithTwoOrMoreChildren 
ObjectSomeValueFrom(ObjectPropertyAssertion(ObjectMinCardinality(2 
p:isChildOf) owl:Thing))

My doubt is if I'm expressing it correctly, or if calling ObjectPropertyAssertion I'm changing isChildOf's definition.

Upvotes: 0

Views: 66

Answers (1)

Gilles-Antoine Nys
Gilles-Antoine Nys

Reputation: 1481

Easiest way is to define :FatherWithTwoOrMoreChildren as :

:hasChild owl:inverseOf :isChildOf
:FatherWithTwoOrMoreChildren owl:equivalentClass (:hasChild min 2 :Child)

But maybe don't you want to create a hasChild objectproperty.

Upvotes: 1

Related Questions