sowa - protegowany nie wnioskujący poprawnie? jak dokładnie zdefiniować klasę „wegetariańska”?

Utknąłem na dwa dni, próbując zrozumieć, dlaczego następujący scenariusz nie działa:

zrzuty ekranu tutaj:http://dl.dropbox.com/u/4677548/screenshots.html

Mam klasę VegetarianFood (podklasa Żywności), która jest odpowiednikiem „Żywności i (Jajka lub MlekoAndDeriwaty lub VeganFood)”, jak widać na zrzucie ekranu 1

Klasa VeganFood, po kolei, jest odpowiednikiem innych klas (NutsAndSeeds, Cereals, Fruit itp.) Screenshot 2

jak widać są dwie osoby (ser cheddar i nerkowiec) utworzone jako zrzut ekranu 3 MilkAndDerivates and NutsAndSeeds i są one poprawnie wywnioskowane jako VegetarianFood i członek VeganFood

Następnie stworzyłem dwie osoby jako przepisy, jedną tylko z nerkowcem (PastaVega) i jedną z cheserem cheddar i nerkowcem (PastaVege), używając właściwości object hasIngredient screenshot 4 and 5

i zostały one wywnioskowane jako Recipe ... ALE żaden nie należy do kategorii VegatarianRecipe i VeganRecipe, zdefiniowanej następująco screenshot 6 i 7

Nie mam żadnych wskazówek, dlaczego nie są wywnioskowane jako VegetarianRecipe (lub wegańskie)? Czego mi brakuje?

Edytować:

Jeśli zmienię VegetarianRecipe (lub wegańskie) z „Recipe i (hasIngredient ONLY VegetarianFood)”

do „Przepis i (hasIngredient SOME VegetarianFood)”

zrzut ekranu 8

pokazywane są osobniki z receptami, ale oczywiście to nie jest to, co staram się robić, ponieważ w ten sposób będzie zawierać przepisy z mieszanym mięsem i wegetariańskim jedzeniem. Jak więc zdefiniować klasę wegetariańską i veganrecipe, aby wnioskować poprawnie, kiedy przepis jest wegetariański lub wegański?

questionAnswers(1)

yourAnswerToTheQuestion