Онтологическое моделирование предметной области учреждения дополнительного профессионального образования

Автор: Темникова Е.А., Асламова В.С., Берестнева О.Г.

Журнал: Онтология проектирования @ontology-of-designing

Рубрика: Прикладные онтологии проектирования

Статья в выпуске: 4 (18) т.5, 2015 года.

Бесплатный доступ

В статье рассматривается возможность и опыт использования онтологического моделирования для концептуального описания конкретной предметной области, а также для повышения эффективности поиска и категоризации информации. Описаны этапы построения онтологической модели предметной области на примере Института дополнительного профессионального образования с помощью редактора Protégé 4.2. Приведены примеры: описания классов и индивидов, наполняющих предметную область, а также отношений между ними; выполнения SPARQL-запросов к данным; описания классов и отношений между ними с помощью языка логики предикатов первого порядка. Представлена сетевая модель предметной области (семантическая сеть). Перечислены достоинства онтологического моделирования предметной области. Сформулированы задачи дальнейших исследований по оптимизации процессов анализа и обработки информации в учреждении дополнительного профессионального образования с использованием разработанной онтологии предметной области.

Еще

Онтология, редактор онтологий, семантическая сеть, дополнительное профессиональное образование, интеллектуальные системы

Короткий адрес: https://sciup.org/170178702

IDR: 170178702   |   DOI: 10.18287/2223-9537-2015-5-4-369-386

Текст научной статьи Онтологическое моделирование предметной области учреждения дополнительного профессионального образования

Обеспечение высокого уровня интероперабельности информационных систем часто реализуется за счёт открытости интерфейсов доступа к информационным сервисам или путём использования единого формата для обмена данными (XML). Такой подход позволяет решить задачу синтаксической интероперабельности, но не задачу идентификации синтаксически различных моделей представления одной и той же информации. Семантическая интероперабельность может быть реализована на основе единого представления данных предметной области в рамках онтологического подхода.

Под онтологией понимается совокупность объектов, их свойств, отношений и ограничений, выражающих семантику определенного приложения. Для представления знаний предметной области (ПрО) обычно рекомендуется использовать язык OWL (Ontology Web Language), разработанный консорциумом W3C [1]. Онтологические модели могут специфицировать ПрО, информационные ресурсы и модели пользователей, они предоставляют исследователю следующие возможности:

  •    декларативного описания знаний;

  •    структуризации и категоризации области знаний;

  • ■   описания системы понятий ПрО на логическом, концептуальном и графическом уровнях;

  •    управления информационными потоками;

  •    реализации SPARQL - запросов (поиск, категоризация информации);

  •    выявления закономерностей (вывод умозаключений по ассоциативным связям, избавление от многозначности) и анализа ПрО экспертами;

  •    отражения смысла в метаданных, формирования пространств имен, словарей, квалификаторов на языках RDF, OWL.

Существует большое количество способов классифицировать онтологии. Предполагаемая область применения и цель создания онтологии могут влиять на её объём и содержимое. Немаловажным является ответ на вопрос, какую пользу может принести разработка и дальнейшее использование онтологии при решении поставленной задачи.

Одной из наиболее важных задач, по мнению авторов, является разработка прикладных онтологий для программных систем, функционирующих в пространстве информационной среды. Программное обеспечение информационной системы следует разрабатывать на основе современных интеллектуальных компьютерных технологий (мультиагентные системы, системы интеллектуального поиска, экспертные системы и др.). В современных интеллектуальных системах (ИС) основой базы знаний, её каркасом, как правило, являются прикладные онтологии, обеспечивающие эффективное функционирование систем. Их построение – наиболее ответственный и сложный этап в разработке ИС [2].

Своей задачей авторы видели создание информационной системы поддержки принятия решений для учреждения дополнительного профессионального образования, которая будет основываться на прикладной онтологии предметной области Института дополнительного профессионального образования (ИДПО) при Иркутском государственном университете путей сообщения.

Для построения онтологии избранной ПрО использовался редактор Protégé 4.2, являющийся локальной, свободно распространяемой Java-программой. С помощью этого редактора можно создавать, изменять, просматривать, объединять, расширять, а также адаптировать онтологии под разные форматы данных (текстовый, XML, RDF(S), OWL и др.). Protégé 4.2 имеет богатый набор операторов, основан на логической модели данных, позволяющей создавать определения, которые соответствуют неформальному описанию [3, 4]. Следовательно, определения сложных понятий могут быть построены на определениях более простых понятий. Кроме того, логическая модель позволяет использовать рассуждения, способные проверять взаимную согласованность утверждений и определений в онтологии, а также соответствие концепций заданным определениям [5].

  • 1    Описание данных на RDF

Для создания онтологической модели необходимо владеть формальными средствами проектирования онтологий (программными инструментами типа редактора онтологий Protege и формальными языками представления знаний, например OWL, RDF), а также системно представлять организацию конкретной ПрО.

Созданная онтология кодируется на языке OWL, который фактически является надстройкой над RDF/RDFS и поддерживает эффективное представление онтологий в терминах классов и свойств, обеспечение простых логических проверок целостности онтологии, а также объединение онтологий. Специфика RDF (Resource Description Format) опирается на более ранние стандарты (URI, XML и XML Shema) [6].

Базовой структурной единицей RDF является триплет «Субъект–Предикат–Объект», который называется RDF-графом. В качестве вершин выступают субъекты и объекты, а в качестве дуг – предикаты [7]. С математической точки зрения триплет представляет собой экземпляр элемента некоторого бинарного отношения.

Например, информация о слушателе курсов повышения квалификации содержит поля: идентификатор ; фамилия ; имя ; отчество ; номер телефона (таблица 1).

Таблица 1 – Информация о слушателе курсов повышения квалификации

Идентификатор

Фамилия

Имя

Отчество

Телефон

1

Брусенко

Иван

Викторович

89247002130

2

Волкова

Татьяна

Юрьевна

85007022201

Каждая строка соответствующей реляционной таблицы представляет экземпляр класса «Клиент». Элементы соответствующих столбцов выступают как свойства индивидов класса, что выражается в языке RDF путем описания экземпляров класса «Свойство»: rdf:Property. Чтобы выразить на языке RDF этот факт, используется специальный предикат rdf:type.

Объявляем поля как специальные свойства:

(Клиент: идентификатор, rdf:type, rdf:Property);

(Клиент: фамилия, rdf:type, rdf:Property);

(Клиент: имя, rdf:type, rdf:Property);

(Клиент: отчество, rdf:type, rdf:Property);

(Клиент: номер_телефона, rdf:type, rdf:Property).

Описываем сами данные:

(Клиент: Клиент1, Клиент: идентификатор, 1);

(Клиент: Клиент1, Клиент: фамилия, Брусенко);

(Клиент: Клиент1, Клиент: имя, Иван);

(Клиент: Клиент1, Клиент: отчество, Викторович);

(Клиент: Клиент1, Клиент: номер_телефона, 89247002130);

(Клиент: Клиент2, Клиент: идентификатор, 2);

(Клиент: Клиент2, Клиент: фамилия, Волкова);

(Клиент: Клиент2, Клиент: имя, Татьяна);

(Клиент: Клиент2, Клиент: отчество, Юрьевна);

(Клиент: Клиент2, Клиент: номер_телефона, 85007022201).

Язык логики предикатов первого порядка имеет ёмкий и аккуратный вид, если представить, что таблицы являются предикатами [8, 9]. Например, клиент (слушатель группы) работает в организации. Это отношение между клиентом и организацией в предикатной форме может принять следующий вид:

Р1.1 = Работает (Клиент; Организация), далее данное высказывание можно представить как:

V x (( Н ( х ) ^ М ( х )) Л Н ( Брусенко )) ^ М ( ООО _ Реактив ) , где х принимает значения: Н – быть клиентом; М – работать в организации.

  • 2    Формирование базовых элементов OWL-онтологии в Protégé 4.2

Любая OWL-онтология имеет заголовок (рисунок 1) и тело. В заголовке содержится информация о самой онтологии (версия, примечания), об импортируемых онтологиях, а тело, которое следует за заголовком, содержит описания классов, свойств и экземпляров (индивидов класса).

Процесс создания онтологии при помощи редактора Protégé 4.2 в общем виде состоит из четырех этапов:

  •    выделение основных понятий (классов) предметной области и отношений между ними, создание непротиворечивых определений для основных понятий и определение терминов, связанных с ними;

    Рисунок 1 – Заголовок онтологии предметной области


  • ■   построение таксономии терминов;

  •    выбор языка для представления онтологий (в Protege 4.2 изначально предопределен язык OWL);

  •    задание фиксированной концептуализации на выбранном языке [10].

  • 2.1    Описание классов

Рассмотрим более подробно практическую реализацию каждого этапа.

Основными компонентами онтологии являются классы (owl:Class), которые описываются с помощью формальных конструкций. Созданная иерархия классов ПрО ИДПО представлена на рисунке 2.

Рисунок 2 – Иерархия классов (дерево классов)

В созданной онтологии классы организованы в таксономию – иерархию связей вида «подкласс–суперкласс», которые определяется автоматически системой логического вывода ( Reasoner ), при условии правильного построения иерархии. Заранее предопределён класс THING, который представляет набор, содержащий все объекты ПрО, поэтому все классы являются подклассами THING [11].

По умолчанию классы в OWL могут пересекаться. Для того чтобы разделить классы, их необходимо сделать непересекающимися ( Disjoint Classes ). Это гарантирует, что индивид не сможет быть экземпляром более чем одного класса. Например, персональные данные преподавателя не могут быть одновременно персональными данными слушателя.

Кроме описания именованных классов через суперклассы и анонимных классов через ограничения, OWL позволяет определять класс списком индивидов, являющихся его членами – перечислимый класс [11]. В Protégé 4.2 перечислимые классы определяются с помощью редактора выражений ( Class expression editor ), в котором индивиды, составляющие перечислимый класс, задаются списком имен.

В созданной прикладной онтологии определены следующие перечислимые классы:

  • ■   «Вид_занятия», включающий в себя индивиды: лекция, лабораторная, практика;

  • ■   «Вид_курса», наполненный индивидами: недельные, двухнедельные курсы и семинар;

  • ■   «Продолжительность_обучения», содержащий индивиды: 40_часов и 72_часа, 6_часов.

  • 2.2    Наполнение классов индивидами

На рисунке 3 представлена панель описания перечислимого класса «Продолжитель-ность_обучения».

Рисунок 3 – Панель описания перечислимого класса «Продолжительность_обучения»

Индивиды (экземпляры классов или свойств) определяются при помощи аксиом индивидов (фактов):

  •    факты членства индивидов в классах и факты о значениях свойств индивидов;

  •    факты идентичности/различности индивидов.

Пример аксиом индивида первого вида:

<Организация rdf:ID = «OOO_Ангария»>

<имеетКонтактныйТелефон rdf:resours = «8(3955)52-27-90»/>

<Организация/>

Данная аксиома устанавливает сразу два факта: индивид класса «Организация» имеет имя «OOO_Ангария»; этот индивид связан свойством «имеетКонтактныйТелефон» с индивидом «8(3955)52-27-90», определённым в другом месте (класс «Номер_телефона»).

Аксиомы второго типа нужны для определения идентичности индивида, поскольку в OWL не делается предположений о различии или совпадении двух индивидов, имеющих различные идентификаторы URI. Подобные положения выражаются через следующие утверждения [11]:

  •    owl:sameAs (две ссылки URI ссылаются на один и тот же индивид);

  •    owl:differentFrom (две ссылки URI ссылаются на разные индивиды);

  •    owl:AllDifferent (определяет список попарно различных индивидов).

Для создания индивидов в Protégé 4.2 используется закладка Individuals .

В рассматриваемой ПрО были описаны индивиды, наполняющие классы ПрО, а также заданы их свойства [11]. В качестве наглядного примера на рисунке 4 представлена панель описания индивида, где индивид «Вербитская_Татьяна_Николаевна» является экземпляром подкласса «Ф.И.О.», класса «Преподаватель». Ему присвоены свойства: «имеет_адрес», связывающее преподавателя с его местом жительства «Иркутск_ул.Лермонтова_26-67»; свойство «имеет_учёное_звание», которое определяет, что данный преподаватель является доцентом; «имеет_ученую_степень» (здесь - кандидат технических наук); «имеет_телефон» и «преподаватель_ведет_дисциплину», которое связывает индивида «Вербитскую_Татьяну_ Николаевну» с дисциплиной «ТБ_гидротехнических_сооружений», а также другие возможные отношения индивида, позволяющие связать его с конкретными экземплярами классов [12].

Class hierarchy {inferred) I

Class hierarchy

Class hierarchy: Ф.И.О. ШВ00

♦ «Хи мически й_фа кул ьтет»_] —

I.....© Вид_занятия

I.....© Вид_курса

Ik™ ф Группа

Ik • Документ

УФЗаказчик

Ik-Ф Заявка

Ik" Ф Месго_проведения_з Ik™ Ф Отчет

У Ф Преподаватель

|  Ф Адрес

| Ik- Ф Категория

I  Ф Профиль i ..... Телефон

|  8ф.и@

).....©Продолжительность, Ik" Ф Сотрудники Ik- Ф Специальность Ik™ Ф Сроки_аттестации |к- Ф Удовл .за казч и ка

♦ «Экология »,__уч ител b_3koj ♦ Ангарск мон.Новый-4 ул.( ♦ Ангарск_промзона_по_авто/

♦ Ангарск_ул. К. Маркса -18-1

♦ Ангарск_ул.Мира_5

♦ Ангарск_Южный_массив_к!

♦ Аппаратчик_дегидрированит ♦ Аппаратчик_перегонки

♦ Аппаратчик_пиролиза

♦ Аппаратчик_полимеризации

♦ Ассистент

♦ Безопасность_труда

♦ Борисова__Елена_Олеговнг.

♦ Васильева_Анна_Викторовн ♦ Вербитская_Татьяна_Никол< ♦ Вербицкая_Татьяна_Никола

♦ Витушки н_Игорь_Петрович

♦ Власенко_Александр_Семе1 ♦ Водитель_погрузчика ♦ военный_радиоинженер

♦ г.Ангарск

♦ г. Иркутск

♦ Газорезчик

♦ Д

♦ д-110

♦ Д 111

♦ Д-115                    '

< I .......... I                                                    I ►

Description: Вербитская_Тат|ШВИ13

♦ Ф.И.О. 0©ОО

Property assertions: Вербитская_Татьяна_Николаевна швисз

Object property assertions

■ имеет_адрес Иркутск_ул.     0@OO

Лермонтова_26-67

Same Individual As

  • ■    имеет_ученое_звание Доцент ФОО0

  • ■    имеет_телефон *8(950) 0©ОО 0807858

  • ■    преподаватель_ведет_дисципл ©ООО

ТБ_гидротехн ических_сооруже

  • ■    имеет_ученую_степень 0©ОО

Ка нд и дат_нау к

Negative object property assertions

Рисунок 4 – Панель описания индивида

Отдельные индивиды могут ссылаться на других таким образом, чтобы быть «тем же» или «отличным от». В редакторе Protégé 4.2 эти свойства можно задать с помощью характеристик owl:sameAs и owl:AllDifferent .

При создании классы и индивиды имеют только имя, в дальнейшем в процессе описания им задаются свойства.

  • 2.3    Описание свойств классов и типов данных

Свойства ( rdf:Property ) в OWL представляют отношения, которыми связаны между собой классы или индивиды. В данном языке описания онтологии существует два основных типа свойств:

  •    свойства объектов ( owl:ObjectProperty ) являются отношениями между двумя классами или индивидами;

  •    свойство типа данных ( owl:DataTypeProperty ) связывает индивида со значением типа данных схемы RDF (определяет связи между индивидом и значениями данных).

  •    На рисунке 5 отображена панель описания свойств объектов ПрО.

    Object property hierarchy: дисциплима_читаемая_преподавателе ШВ00


    Object property hierarchy: дисциплина_читаемая_преподавателе&ШВ00|


    ^1@S

    ▼••■• ■ topObjectProperty

    :■ ■ вид_занятия_по_дисциплине He группа_по-специал ьности

    ■дисциплина_имеет_вид_занятия .....■ дисциплина_читаемая_преподавателем [ взанимается_с Назанятия_про водит ■ ■ занятия_лроходят_в Н-езаявка_от

    |— ■ заявка_по-специал ьности |— ■ имеет_адрес

    |— ■ имеет_аудиторию |— ■ имеет_вид_курса |— е имеет_дату_вы да ч и

    ■ имеет_дату_начала_занятий [.....■ имеет_дату_окончания_срока_атт. Н ■ имеет_дату_поступл ения |™ ■ имеет_дату_регистрации г- ■ имеет_документ |— ■ имеет_должность г •■имеет_ИНН

    |— ■ имеет_к ва л и фи ка ци ю

    г •■имеет_конечный_уровень_знаний |— ■ имеет_Корлус

    I.....■ имеет_козф.зф._обучения

    |.....■ имеет_начальный_уровень_знаний

    ■имеет_период_аттестации

    |.....■ имеет_лродолжительность_обучения ■ имеет_слушателя

    И ■ имеет_сотрудника i.....■ имеет_специальность

    Н :                                I               I"


    ^@И

    г ■ имеет_средний_Ьалл_успеваемостм г.....■ имеет_телефон

    г.....■ имеет_ученое_звание

    .....■ имеет_ученую_степень

    .....■ имеет_факс

    .....■ имеет_эл. почту

    .....■ имеет_юридический_адрес

    .....■ кол-во_слушателей_представлено_в

    .....■ место_проведения_занятий .....■ направлена_сотруднику [.....■ организациянаправилазаявку [.....■ персональные_данные_преподавателя

    [.....■ персональные_данные_слушателя

    р ■ подтверждает_успешное_окончание_обуче1 i.....■ преподаватель_ведет_дисциплину

    • ■    рассмотрена_сотрудником

    • ■    слушатель_по_заявке

    • ■    содержит_кол-во_слушателей

    • ■    содержит_слушателя

    • ■    специальность_группы

    • ■    является_адресом

    • ■    является_видом_курса

    • ■    ■является_датой_выдачи

    • ■    ■является_датой_начала_занятий

    • ■    ■ является_датой_окончания_срока_а1т.

    • ■    ■является_датой_поступления

    • ■    ■является_датой_регистрации ■ является_дисциплиной_по-специал ьности ■ я вляется_д оку ментом

    • ■    является_должностью

    • ■    является_ИНН

    • ■    является квалификацией


Рисунок 5 – Панель описания множества свойств, присущих объектам предметной области

Для определения новых свойств, таких как экземпляров owl:ObjectProperty или owl:DataTypeProperty , используются аксиомы свойств, которые имеют следующий вид:

.

Каждое свойство объекта может иметь соответствующее обратное свойство. Если свойство связывает индивида A с некоторым индивидом B , то его обратное свойство ( owl:inverseOf ) связывает индивидов B и A . Например, свойство «является_средним_ бал-лом_успеваемости» будет обратным к свойству «имеет_средний_балл_успеваемости» (см. рисунок 6). Таким образом, если слушатель имеет средний балл успеваемости В ср = 8.5, то В ср , в свою очередь, закреплён за этим слушателем.

Среди множества свойств объектов разработанной прикладной онтологии существует большое количество подобных приведенному примеру инверсий [13]: «Клиент – Организация», «Специальность – Группа», «Преподаватель – Дисциплина» и т.д.

Помимо обратных свойств объектов существуют и другие характеристики свойств, позволяющие обогатить их значения [11]:

  •    функциональные свойства ( owl:FunctionalProperty );

Рисунок 6 - Панель характеристик свойств

  • ■    обратные функциональные свойства ( owl:InverseFunctionalProperty );

  •    транзитивные свойства ( owl:TransitiveProperty );

  • ■    симметричные свойства ( owl:SymmetricProperty );

  • ■    асимметричные свойства ( owl:AsymmetricProperty );

  •    рефлексивные свойства ( owl:ReflexiveProperty );

  •    иррефлексивные свойства ( owl:IrreflexiveProperty ).

На рисунке 7 представлена панель описания свойств типа данных объектов.

Рисунок 7 - Панель описания свойств типа данных

Свойства типа данных могут включать в себя целые и натуральные числа, строки, логические значения и т.д. Также свойство типа данных можно использовать для указания ограничений (диапазона численных значений) . Так для описания наполняемости групп двух классов категоризации, которые являются непересекающимися: «Полная_группа» и «Подгруппа», используется свойство « hasGroupContentValue » (см. рисунок 8).

Таким образом, подклассами класса «Группа» будут: класс «Полная_группа», включающий в себя индивиды ТБ.5-14 и ЗС-14, наполняемость которых будет больше или равна пятнадцати (см. рисунок 8а); класс «Подгруппа», который включает индивиды ТБ.5-14-1, ТБ.5-14-2 и ЗС-14-1; ЗС-14-2, наполняемость которых будет строго меньше пятнадцати (см. рисунок 18б) [14].

a)

б)

Рисунок 8 – Панели описания классов: a) «Полная_группа», б) «Подгруппа»

Ограничение hasValue описывает набор отдельных индивидов, имеющих, по крайней мере, одно отношение по указанному свойству для конкретного класса.

В качестве примера на рисунке 9 описаны свойства класса «Промышлен-ная_безопасность», свойство аннотации данного класса, индивиды, наполняющие его, и определено его отношение с суперклассами «Дисциплины» и «Специалисты».

Рисунок 9 – Панель описания класса «Промышленная_безопасность»

Среди прочего на рисунке 9 определяются дисциплины, преподаваемые группе, имеющей обозначение «ПБ». Условия, которые определены для класса «Промышлен-ная_безопасность» (подкласс класса «Дисциплины»), говорят о том, что индивиды, являющиеся членами класса «Промышленная_безопасность», также являются членами класса «Дисциплина» и связаны с классом «ПБ» через свойство «являет-ся_дисциплиной,_читаемой_группе».

В OWL также существует третий тип отношений – свойства аннотации , который может использоваться для добавления информации (метаданных) для классов, отдельных индивидов и свойств объектов.

  • 2.4    Аннотации

Язык описания онтологий OWL позволяет создавать аннотации с различной информацией (комментарии, дату создания, автора, ссылки на ресурсы и т.д.) и метаданными классов, свойств, индивидов и онтологии (онтологии заголовка).

Существует пять предопределённых свойств аннотации, использующиеся для описания классов, свойств и индивидов: owl:versionInfo (диапазоном этого свойства является строка); rdfs:lable (имеет диапазон строки, может быть использовано для добавления комментария при чтении в онтологии имён классов, свойств и индивидов, а также для предоставления многоязычных имён (см. рисунки 9, 10)); rdfs:comment (имеет диапазон строки (см. рисун- ки 9, 10)); rdfs:seeAlso (имеет значение URI, которое используется для обозначения соответствующих ресурсов); rdfs:isDefinedBy (имеет значение URI-ссылка и используется для ссылки на онтологию) [11].

На рисунке 10 приведён пример описания аннотации свойства rdfs:seeAlso , определённого для индивида «Ангарский водоканал» – поставщика слушателей (заказчика) в ИДПО, который наполняет класс «Организация». Панель описания индивида «Ангарский водоканал» включает в себя: дерево классов (1), свойства объекта (2) и аннотацию (3). При активации ссылки, определяющей свойство rdfs:seeAlso (4), пользователь автоматически попадает на web-ресурс МУП «Ангарского водоканала».

▼-•Thing .....©Вид_занятия .....©Видаку pea

►- •Группа

► • Документ

▼ • Заказчик IH • Клиент ▼- О Организация

.....•E-mail

.....•инн

.....•Телефон

.....• Ф. И. О.„руководителя

.....• Юридически й_адрес

►- Заявка

►- • Место_проведения_занятий

►••• • Отчез                  \

►™ • Преподаватель

.....© Продолжительность_о6учениг

►•• • Специальность ► • Срокиаттестации ►-- • Удовл .заказчика

[ Class hierarchy [ Class hierarchy {inferred) | o@oo имеет_телефон '8(3955)52-34-84' 0000

Negative object property assertions

Data property assertions ^^

0000 0000

Object property assertions

^ вимеет_сотрудника

Головков_Алексей_Г ригорьевич

■ имеет_ИНН 3801006828

■ имеет_юридический_адрес

Ан га рск_ул. Мира_2а comment

МУП_Ангарский_Водоканал

.Annotations ^У ^* label [language: ru] МУП_Ангарский_Водоканал

@00

Types

• Организация seeAlso , http //a n g-vo d о ka n a I .ru/co nta ct

Description: МУП_Ангарский_Водоканал [DB00|

Class hierarchy: Организация

Property assertions: МУП_Ангарский_Водоканал

Рисунок 10 – Описание индивида «Ангарский водоканал»

  • 3    Выполнение SPARQL-запросов

Наиболее популярным среди запросов к RDF-хранилищам на сегодняшний день являются языки A Query Language for RDF (RDQL) и Protocol and RDF Query Language (SPARQL), способные передавать по протоколу запросы и ответы на них. SPARQL является одной из рекомендованных технологий семантической паутины при публикации данных в Интернет [7, 9].

Существует четыре основных типа запросов к данным: запрос «по умолчанию» (см. рисунок 11); запрос с применением данных о литералах (см. рисунок 12); запрос на основе данных об экземплярах классов; запрос на основе данных об объектных свойствах классов.

Рисунок 11 – SPARQL-запрос «по умолчанию»

Рисунок 12 – SPARQL-запрос с применением данных о литералах

При открытии закладки SPARQL Query в редакторе Protégé 4.2 в окне формирования запросов уже представлен образец запроса «по умолчанию». При нажатии кнопки «Execute» выполняется автоматический поиск данных по запросу и выводится результат (рисунок 11).

При выполнении запроса переменной ?subject будут установлены классы, для которых характерно наличие свойства subClassOf , т.е. потомки других классов. На рисунке 12 приведён результат выполнения запроса, который вернул подклассы класса «Дисциплина» (были возвращены потомки класса, для которого установлено свойство аннотации rdfs:lable “Дис-циплина”@ru ) [14].

На рисунке 13 представлена реализация запроса на основе комментария класса «Ме-сто_проведения_занятий».

Рисунок 13 – SPARQL-запрос с применением комментария, вернувший потомков класса «Место_проведения_занятий»

  • 4    Построение семантической сети предметной области

Семантическая сеть является сетевой моделью ПрО, имеющей вид ориентированного графа, вершинами (узлами) которой являются классы (объекты ПрО), а дугами (рёбрами) – направленные отношения или связи, соединяющие эти узлы [8]. В семантической сети отображены типы отношений. На рисунке 14 представлена семантическая сеть, построенная в результате онтологического моделирования рассматриваемой ПрО в редакторе Protégé 4.2 [13, 14].

На рисунке 15 в качестве примера приведён фрагмент семантической сети, отражающий отношения не только классов, но и индивидов, наполняющих их.

Как модель ПрО, семантическая сеть наиболее часто используется для представления декларативных знаний, с помощью которой реализуются такие свойства системы знаний, как интерпретируемость и связность [15]. За счёт этих свойств семантическая сеть позволяет снизить объём хранимых данных, обеспечивает вывод умозаключений по ассоциативным связям. Семантическая сеть является необходимым ресурсом и способом представления знаний, который отражает семантику ПрО, а также позволяет проводить визуальный анализ ПрО, графически отображая её структуру.

Рисунок 14 – Семантическая сеть предметной области «Институт дополнительного профессионального образования»

Рисунок 15 – Фрагмент семантической сети предметной области «Институт дополнительного профессионального образования» с включением индивидов классов

Заключение

Формализованное описание ПрО с помощью онтологического моделирования обеспечивает общение как между людьми, так и между программами. Эта особенность онтологий привела к большому интересу исследователей, которые в своих работах рассматривают как предметные онтологии, предназначенные для решения конкретных прикладных задач, так и создание универсальных онтологий, описывающих общие понятия, на основе которых возможно построение понятий частных предметных онтологий. Если раньше вопрос онтологического моделирования интересовал в основном специалистов в области информационных технологий, то в настоящее время возможности онтологического моделирования вызывают интерес у специалистов предметных областей и экспертов.

Например, для успешной разработки и эффективного функционирования информационной системы поддержки принятия решений для учреждения дополнительного профессионального образования необходимо грамотно организовать и описать пространство знаний. Наиболее удобным и очевидным способом организации такого пространства знаний будет онтология.

Как было замечено, существует несколько способов представления онтологий. Наиболее распространенным графическим редактором является CmapTools, который авторы используют в своей работе для разработки семантической сети ПрО учреждения дополнительного профессионального образования, подробно рассмотренной в статье [16]. К сожалению, основным недостатком данного подхода является то, что построенные онтологии могут быть использованы лишь как наглядный (иллюстративный) материал для визуального анализа ПрО (ориентирован на человека, а не на программу).

Если говорить о редакторе Protégé 4.2, то для его использования пользователь должен знать фреймовую модель представления знаний, основы математической логики (исчисление предикатов) и объектно-ориентированного подхода, который применяется при анализе и проектировании систем. Опыт работы с редактором Protégé 4.2 показал, что в первую очередь он ориентирован на специалистов в области информационных технологий. Наиболее удачно в нем осуществлять описание ПрО небольших размеров, в которых можно выделить ограниченное число классов и отношений между ними. Для построения таксономий терминов узконаправленных ПрО, в том числе в области образования, необходимо привлекать специалистов по данной ПрО.

Редактор Protégé 4.2 обладает хорошим инструментарием. Помимо общих функций редактирования и просмотра онтологий, он позволяет выполнять поддержку документирования онтологий, импорт и экспорт онтологий разных форматов и языков, поддержку графического редактирования, управление библиотеками онтологий и многое другое.

В качестве недостатка редактора Protégé 4.2 следует указать на отсутствие возможности математической обработки данных и решения оптимизационных задач. Для этого необходимо дополнительно разрабатывать программное приложение, в основе базы знаний которого будет использоваться разработанная прикладная онтология ПрО.

Разработанная прикладная онтология ПрО Института дополнительного профессионального образования позволяет решать задачи: логического, структурированного описания, категоризации, поиска информации и анализа данных. В будущем онтология может быть использована в качестве базы знаний для формирования единой информационной среды интеллектуальной системы в учреждениях дополнительного профессионального образования, а также систем навигации на основе семантической сети в Интернет пространстве.

Список литературы Онтологическое моделирование предметной области учреждения дополнительного профессионального образования

  • OWL Web Ontology Language. W3C Recommendation [Electronic Resource] / 2004 - Mode of access: http://www.w3.org/TR/owl-features/.
  • Загорулько, Г.Б. Разработка онтологии задач и методов для инструментария построения интеллектуальных СППР / Г.Б. Загорулько // Труды XVII Байкальской Всероссийской конференции «Информационные и математические технологии». Часть III. - Иркутск: ИСЭМ СО РАН, 2012. - С. 43-49.
  • Шустова, Д.В. Подход к разработке семантических основ информационных систем для проектирования и производства авиационной техники / Д.В. Шустова // Онтология проектирования. - 2015. - № 1 (15). - С. 70-82.
  • Noy, F. Ontology Development. A Guide to Creating Your First Ontology / Deborah L. McGuinness - Stanford Knowledge Systems Laboratory Technical Report KSL-01-05 and Stanford Medical Informatics Technical Re-port SMI-2001-0880, March 2001.
  • Gruber, T. Toward Principles for the Design of Ontologies Used for Knowledge Sharing // International Journal Human-Computer Studies. - 1995. - Vol. 43. - P. 907-928.
Статья научная