Klasa wyrażenie
hasTopping niektóre CheeseTopping
jest zbiorem jednostek, z których każda jest związana z pewnym CheeseTopping przez właściwość hasTopping. W ontologii pizzy, w której nie ma osób, nadal można uzyskać wyniki podklasy klasy dla tego zapytania, ponieważ definicja niektórych typów pizz (np. Amerykańskich) jest taka, że każda pizza amerykańska musi mieć takie polewa.
Teraz, podobnie Structured Query
isToppingOf niektóre amerykański
jest zbiorem jednostek, z których każda jest związana z pewnym amerykańskim pizzy przez właściwość isToppingOf. Jednak ontologia pizzy nie definiuje konkretnych osób, więc nie ma żadnych osób jako kandydatów. Ale co z klasami, które mogą być podklasami tego wyrażenia? Na przykład wspomniałeś o FourCheeseTopping. Teraz, niektóre szczególne przypadki FourCheeseTopping, np. FourCheeseTopping23 mogą być dodatkami do niektórych amerykańskich pizz, np.:
fourCheeseTopping23 isToppingOf americanPizza72
Jednak fourCheeseTopping może nie zostały umieszczone na danym pizzy jeszcze. Kiedy wybrać dowolną jednostkę typu FourCheeseTopping, nie możemy wnioskować, że jest to polewa z jakiegoś amerykańskiego pizzy, więc nie możemy wywnioskować, że FourCheeseTopping klasa jest podklasą
isToppingOf niektóre amerykański
ponieważ nie jest tak, że każde wystąpienie FourCheeseTopping musi być zwieńczeniem amerykańskiej pizzy. W przypadku podobnej sytuacji, która może sprawić, że struktura logiczna będzie nieco jaśniejsza, należy rozważyć klasy Pracodawca i Osoba, a własność obiektu zatrudnia i jej odwrotność stosuje się. Możemy powiedzieć, że każdy pracodawca musi mieć jakąś osobę jako pracownika (ponieważ w przeciwnym razie nie byłby pracodawcą):
Pracodawca i sqsubseteq; Zatrudnia niektórych osoba
Jednakże, ponieważ dana osoba może być bezrobotnym, to nie prawda
Person & sqsubseteq; employedBy niektóre Pracodawca
choć zatrudnia i employedBy są odwrotne.
Co można zrobić, chociaż, jeśli chcesz wiedzieć, czy polewy określonego typu mógłby znajdować się pizzę danego typu, jest pytanie, czy
PizzaType ⊓ ∃ hasTopping.ToppingType
jest odpowiednikiem lub podklasą, owl: Nic. Na przykład, ponieważ amerykański pizzy ma tylko dodatków typu TomatoTopping, MozzarellaTopping i PeperoniTopping [sic], klasy
amerykańskiej ⊓ ∃ hasTopping.MixedSeafoodTopping
jest równoznaczne z owl: Nothing:
z drugiej strony, ponieważ amerykański pizzy moszczu posiada MozzarellaTopping klasa
amerykański ⊓ ∃ hasTopping.MozzarellaTopping
jest równoznaczne z American:
Czy AmericanHot, amerykański itp są aksjomaty zamykające? – msc87