Онтологією називають схему, що складається з класів пов'язаних між собою за допомогою різних відносин і правил. Це своєрідна форма представлення деякої області знань в формальному вигляді. В даний час онтології широко використовуються в програмуванні, навчанні, різного роду дослідженнях.
У даній статті буде розказано про те, як створити найпростішу онтологію в програмі Protégé.
Створення простої онтології
Припустимо необхідно розробити онтологію, що виконує завдання класифікації. Для прикладу візьмемо найпростішу класифікацію папуг.
В рамках предметної області можна виділимо кілька основних класів, а саме:
- Папуга - головний клас, що містить 3 Классс-спадкоємця - дрібні папуги, великі папуги та середні папуги.
- Власник - клас, що містить інформацію про людину-власника.
- Регіон - клас, що містить інформацію про місце проживання папугу.
Далі можна переходити до створення проекту.
Першим кроком запускаємо програму Protege і створюємо новий проект. У вікні налаштувань вибираємо Protege Files.
На екрані з'являється робоче вікно, в якому нам і належить працювати.
Насамперед при створенні онтології необхідно створити класи. Всі спроектовані нами класи будуть відображатися у вікні Class Browser. Для створення нового можна клацнути на іконку «Create Class» або правою кнопкою миші на поле браузера класів із зазначенням дії створення класу.
Після створення класу, можна перейменувати його в поле Name.
Для створення підкласу клацаємо по класу-батькові, натискаємо праву кнопку миші і вибираємо команду "Create Subclass". При бажанні клас можна зробити абстрактним, вибравши відповідний пункт у випадаючому списку Role.
Після створення класів необхідно прописати в них поля - властивості. Наприклад, у класу Регіон буде властивість «Ім'я», яке буде містити назву регіону, в якому проживають папуги. Для додавання властивості в клас необхідно натиснути правою кнопкою миші у вікні «Template Slots» і вказати команду «Create Slot».
При створенні слота йому можна задати назву, тип, значення за замовчуванням, тимчасове значення, опис і т.п. Варто відзначити, що в якості типу слота може виступати об'єкт іншого класу. Таким способом в програмі Protégé встановлюється взаємозв'язок між 2 класами.
Якщо раніше будь-якої слот, наприклад, «ім'я» вже створювався, то його можна просто додати в клас (за умови, що він підходить), натиснувши на кнопку у вигляді прямокутника з плюсом в правому верхньому куті вікна Template Slots.
Після створення слотів і класів можна приступати до створення екземплярів або Instances. Для цього зверху клацніть на однойменну вкладку і посередині побачите вікно під назвою Instance Browser.
Для того, щоб створити екземпляр будь-якого класу, клацніть у вікні Class Browser на потрібний клас, а потім у вікні Instance Browser натисніть на іконку додавання суті Create Instance. Після натискання у вікні Instance Browser з'явиться рядок з новоствореною сутністю, а справа у вікні Instance Editor поля, відповідні слотів класу, який необхідно заповнити.
Щоб у вікні Instance Browser відображати об'єкти по будь-якою ознакою, клацніть на трикутник праворуч на панелі і виберіть властивість, яке відображати в браузері. В даному прикладі вкажемо властивість «Ім'я».
Після створення сутностей можна приступати до формування запитів. Форми для них знаходяться у вкладці запити.
Щоб створити необхідний запит, потрібно вибрати клас, в якому буде проводитись пошук, властивість, по якому буде проводиться пошук, а також вказати ознаку. Під ознакою може розумітися як рядок, так і умова is, is not, contains, begins with і так далі.
Якщо запит необхідно зробити складовим, тобто містить 2 і більше умов, у вікні слід натиснути кнопку more і ввести дані у відповідні поля.
Створений запит можна зберегти і залишити в бібліотеці, ввівши внизу в поле ім'я і натиснувши кнопку «Add to Query Library».