protege compound class restrictions with some and only

502 views Asked by At

I've looked around and cannot really find an answer to why the following property restriction works in one case but does not work in the other. I am trying to combine "some" and "only" object property restrictions to require that a defined class have only a certain property+object and that it also have at least one such property+object defined. I cannot get this combination to produce the intended class inference. I want to use it to identify an instance with a certain combination of type and property assertions as the specified class. I do not intend to use it to assign an instance to be a type of that class (if that matters).

The RDF/OWL file is at: https://pastebin.com/NZMCuZjE
I built it using Protege 5.5. Both reasoners (FaCT++ 1.6.5 and HermiT 1.4.3.456) give the same result.

I expected that defining X_LetterThing as equivalent to
  LetterThing and (hasLetter only X) and (hasLetter some X)
would have the effect of inferring that instance x_letter_thing_test is of Type X_LetterThing since x_letter_thing_test has asserted type LetterThing and has object property assertion hasLetter x, but there is no such inference.

A second related problem is that the instance compound_letter_thing_test is not inferred to be of type Compound_LetterThing unless I include a covering axiom for class LetterThing, which I really can't have. (Also, adding the covering axiom has no effect on the first problem.)

Is this OWA or something else?

Thanks!

d.c
0

There are 0 answers