KAPITOLA 7.: REPREZENTACE SÉMANTIKY TŘÍD (2) - AXIOM UZÁVĚRU VLASTNOSTI (CLOSURE AXIOM)
Připomenutí existenciálního omezení
Ještě jednou si připomeňme význam existenciálního omezení vlastnosti. Existenciální omezení vlastnosti je jedním z nejpoužívanějších omezení, které má ten význam, že všichni jedinci určité třídy X mají nějaký vztah (min. jeden) k vybraným třídám specifikovaných oborem hodnot. Při použití existenciálního omezení vlastnosti je třeba mít na paměti, že jedinci z dané třídy X mohou mít vztah i k jiným jedincům z jiných tříd blíže nespecifikovaných - proto lze říct, že existenciální omezení je hodně volné. Připomeneme si například popsanou třídu CockatooCacatua, viz. nezbytné podmínky na obrázku níže.
Axiom uzávěru vlastnosti vysvětlíme na vlastnosti hasSize (má velikost). Požadovali jsme zachytit, že Kakadu je velkým typem papouška - tj. dosahuje velikosti nad 30 cm. Už to bylo naznačeno na některých minulých příkladech. Současná podmínka s velikostí tvrdí, že každý papoušek Kakadu je veliký (HighSize), ale přitom jsme nevyloučili, že nějaký Kakadu může mít vztah (hasSize) směřující i k jiné třídě než HighSize, třeba SmallSize. Neznám papouška Kakadu, který by byl menží než 30 centimetrů a tedy pro naše účely bychom potřebovali říci, že každý papoušek Kakadu je velký a to je vše - žádná další velikost (malá, střední) nepřipadá v úvahu. Existuje několik způsobů, jak toto zajistit. Jedním z nich je právě Axiom uzávěru vlastnosti.
Axiom uzávěru vlastnosti teoreticky
Axiom uzávěru vlastnosti nám přesně vymezuje obor hodnot pro určitou vlastnost, resp. jaké třídy budou moci být na pravé straně vztahu (v našem případě vlastnosti hasSize). Je tvořen sjednocením všech uvedených existenciálních omezení v podobě univerzálního omezení a říká: "Vlastnost bude působit jen na tyto třídy (na pravé straně vztahu) a na žádné jiné." Neodborně řečeno: jako bychom sešktili (omezili, uzavřeli) použití vlastnosti - zabránili jí, aby se spojila s jedincem z jiné třídy než té, která je v existenčním (existenčních) omezení (omezeních) uvedena, viz. obrázek Popis třídy bez axiomu uzávěru vlastnosti a s axiomem uzávěru vlastnosti.
Axiom uzávěru vlastnosti prakticky
Tvorba axiomu v prostředí Protégé není složitá. Vybereme příslušné existenciální omezení (když je jich víc, vybereme jakékoliv, které má být součástí axiomu), stiskneme pravé tlačítko myši, objeví se nám menu, ze kterého vybereme volbu Add closure axiom. Výsledkem je vytvoření univerzálního omezení vytvořené z existenciálních, viz. obrázek níže.
? OTÁZKY A ODPOVĚDI ?
Pokud se Vám funkcionální vlastnost spolu s existenciálním omezením nelíbí, je tu ještě jiná možnost, použít existenciální omezení přímo spolu s kardinalitním omezení vlastnosti. Kardinalitní omezení vlastnosti bude mít podobu: hasSize exactly 1. Tím stanovíme maximální horní omezení pro vlastnost hasSize, resp., že jedinec z třídy CockatooCacatua bude mít právě jeden vztah k jedinci z třídy HighSize.