априклад, білих вин.
Крок 7. Створення примірників
Останній крок - це створення окремих екземплярів класів в ієрархії. Для визначення окремого екземпляра класу потрібно (1) вибрати клас, (2) створити окремий екземпляр цього класу і (3) ввести значення слотів. Наприклад, ми можемо створити окремий екземпляр Chateau-Morgon-Beaujolais для подання певного типу вина Beaujolais. Chateau-Morgon-Beaujolais - це екземпляр класу Beaujolais, що представляє всі вина Beaujolais. У цього примірника визначені наступні значення слотів (рис. 5):
Фортеця: Легке
Колір: Червоний
Смак: М'який
Рівень таніну: Низький
Виноград: Gamay (Екземпляр класу Виноград для виготовлення вин)
Виробник: Chateau-Morgon (Екземпляр класу Винний завод)
Область: Beaujolais (Екземпляр класу Винна область)
Цукор: Сухе
Рис. 5. Визначення екземпляра класу Beaujolais. Екземпляром є вино Chateua Morgon Beaujolais з області Beaujolais, вироблене з винограду Gamay на заводі Chateau Morgon. Воно легке, з м'яким смаком, червоне, з низьким рівень таніну. Це сухе вино. h2> 4. Визначення класів та ієрархії класів
У цій главі йдеться про те, за чим потрібно стежити, і про помилки, які легко зробити при визначенні класів і ієрархії класів (Крок 4 з Глави 3). Як ми вже говорили раніше, для будь-який предметної області не існує єдиної правильної ієрархії класів. Ієрархія залежить від можливих способів застосування онтології, рівня деталізації, необхідного для програми, особистих переваг і іноді від вимог щодо сумісності з іншими моделями. Тим не менш, ми розглядаємо кілька керівних принципів, які потрібно враховувати при розробці ієрархії класів. Після визначення значної кількості нових класів корисно зупинитися і перевірити, чи відповідає виникає ієрархія цим керівним принципам.
4.1. Забезпечення правильності ієрархії класів
Ставлення "is-a" [2] p> Ієрархія класів представляє ставлення "is-a": клас А - це підклас В, якщо кожен екземпляр В також є екземпляром А. Наприклад, Chardonnay - підклас класу Біле Вино. Інший спосіб підходу до таксономическому відношенню - це відношення "kind-of" [3] : Chardonnay-вид Білого вина. Реактивний лайнер-вид літака. М'ясо-вид їжі. p> Підклас класу представляє поняття, яке є «гзновидомВ» поняття, репрезентованої надкласса. p> Окремо взяте вино не є підкласом всіх вин
Поширена помилка при моделюванні - це включення в ієрархію варіанти одного і того ж поняття як в однині, так і в множині, зробивши перший подклассом другого. Наприклад, буде неправильно визначити клас Вина і клас Вино як підклас класу Вина. Як тільки ви починаєте вважати, що ієрархія являє собою відношення "kind-of", те помилка при моделюванні стає очевидною: окреме Вино не є видом Вінн. Кращий спосіб уникнути таких помилок - завжди використовувати імена класів або в єдиному, або у множині (присвоювання імен поняттям детально ро...