Вы находитесь на странице: 1из 5

Лабораторная работа №7 – Ontology in electric connectors

Цель: закрепить полученные на лекции теоретические знания об


онтологиях и получить практические навыки по построению семантической
информационной модели в программном обеспечении Protege.
Задачи:
1. Создать классы электрического соединителя
2. Создать объекты свойств
3. Создать объекты данных
4. Создать объекты классов и привязать к ним объекты свойств и данных
5. Создать 2 правила для проверки соединения (факта соединения и
совпадения характеристик сигнала)
Ход работы:
В результате выполнения лабораторной работы необходимо создать
семантическую информационную модель электрического соединителя.
Представление элементов и связей между ними изображено на рисунке 1. В
соответствии с этой схемой будет выполнена вся дальнейшая работа.

Рисунок 1 – Схема разрабатываемой модели

В Protégé создан новый проект, в который вначале добавлены классы и


сабклассы (рисунок 2).
Далее для классов создаются объекты свойств и данных (рисунки 3 и
4). Затем добавляются объекты классов – individuals (рисунок 5). Им, а также
1
собственно классам, назначаются объекты свойств и данных (рисунки 6-11).
После проверки инструментом Reasoner не должно быть ошибок.
Для указанных объектов классов также созданы 2 правила, код которых
указан в листингах 1 и 2.
Rule 1 сопоставляет n-ный штырь и n-ное отверстие электрического
соединений.
Rule 2 проверяет передаваемый сигнал и выдаёт сообщение об ошибке,
если текстовые поля в атрибуте carries сопоставленных контактов не
совпадают.
1 Plug(?plug-v) ^
2 Socket(?socket-v)^
3 Pin(?pin-v) ^
4 Hole(?hole-v)^
5 isPluggedInto(?plug-v,?socket-v)^
6 hasContact(?plug-v,?pin-v)^
7 hasContact(?socket-v,?hole-v)^
8 number(?pin-v,?pin-n-v)^
9 number(?hole-v,?hole-n-v)^
1 sameAs(?pin-n-v, ?hole-n-v)
0 ->isConnectedTo(?pin-v, ?hole-v)
1
1
Листинг 1 – Rule 1

1 Pin(?pin-v)^
2 Hole(?hole-v)^
3 isConnectedTo(?pin-v,?hole-v)^
4 carries(?pin-v,?pin-v-carries)^
5 carries(?hole-v,?hole-v-carries)^
6 differentFrom(?pin-v-carries,?hole-v-carries)
7 ->signalViolation(?pin-v, ?hole-v)

Листинг 2 – Rule 2

Структура полученного в результате выполнения лабораторной работы


объекта представлена на рисунке 12.

2
Рисунок 2 – Entities. Classes Рисунок 3 – Entities. Object
properties

Рисунок 4 – Entities. Data properties Рисунок 5 – Entities. Individuals

Рисунок 6 – Individuals. plug_X

Рисунок 7 – Individuals. socket_Y

3
Рисунок 8 – Individuals. hole_1

Рисунок 9 – Individuals. hole_2

Рисунок 10 – Individuals. pin_1

Рисунок 11 – Individuals. pin_2

4
Рисунок 12 – Ontology graph

Заключение: В ходе выполнения лабораторной работы были получены


навыки работы в Protege, освоены азы разработки семантической
информационной модели. Электрический соединитель описан при помощи
классов, объектов классов, объектов правил, объектов данных, созданных
при помощи программного кода правил. Все элементы соединены между
собой в соответствии с заданием на рисунке 1. На рисунке 10 видно, что из-за
несовпадения передаваемого и ожидаемого сигналов в pin_1 и hole_1
происходит ошибка. Правило 2 распознаёт такие случаи и явно показывает,
какие объекты вызвали ошибку.