
- •Национальный исследовательский
- •Университет
- •В ы п у с к н а я р а б о т а
- •Введение
- •Глава 1 общие сведения об онтологиях и языках для спецификации онтологий
- •1.1. Содержание онтологии
- •1.2 Цели создания онтологий
- •1.3. Области применения онтологий
- •1.4. Формальная концептуализация и формальные онтологии
- •1.5. Формальная модель понятия и концептуальные языки
- •Глава 2 бинарная модель знаний
- •2.1. Синтаксис имен, используемых в бмз
- •2.2. Бинарная Модель Данных
- •2.2.1. Спецификация типов данных
- •2.2.2. Конструкторы типов данных
- •2.2.3. Спецификация функций
- •2.2.4. Спецификация структуры объектов
- •2.2.5. Синтаксис языка структурной спецификации
- •2.2.6. Атрибутные условия и интервальные ограничения
- •2.2.7. Структурные схемы
- •2.2.8. Представление данных в бмд
- •2.2.9. Логические предложения.
- •Глава 3 язык запросов для бинарной модели данных
- •3.1. Примеры запросов
- •3.2. Описание запросов
- •3.3. Описание алгоритма трансляции.
- •3.4. Примеры работы транслятора.
- •Глава 4 описание и использование программы, реализуюшей транслятор
- •4.1. Описание интерфейса программы.
- •4.2. Задание схемы
- •4.3. Использование транслятора в программном коде.
- •4.4. Программа с подключенной базой данных.
- •Приложение
- •Код программы Файл Onthology.Cs
- •Файл Translator.Cs
- •Заключение
- •Литература
- •Содержание
2.2.7. Структурные схемы
Введенные в пп. 2.2.4 – 2.2.6 предложения составляют формализм, который можно понимать как некоторый язык описания данных (ЯОД) для Бинарной Модели Данных (БМД).
Структурная
схема
состоит из (конечного числа) предложений
ЯОД. В стандартной терминологии, принятой
в теории баз данных, такие описания
схемами
баз данных.
База данных в БМД состоит из экстенсионалов
понятий (классов и бинарных связей).
Рассматриваются только конечные
экстенсионалы, которые представляются
(конечными) таблицами. При этом
предполагается, что имеется полное
представление каждого экстенсионала.
(Это предположение называется
предположением
замкнутого мира
[Reiter
1980])
В частности, это означает, что если
данный суррогат c#j
UC
не
представлен в таблице для понятия С,
то
c#j
EsurrC.
В БМД в качестве точек соотнесения естественно выступают моменты времени, когда изменяются (или могут изменяться) экстенсионалы понятий концептуальной схемы. Полные экстенсионалы понятий схемы базы сотавляют то, что в стандартной терминологии теории баз данных называют историческими базами данных. Но в этом разделе мы будем игнорировать точки соотнесения.
Пример 2.9. Рассмотрим моделирование данных для ПО, касающиихся сведений об учебном процессе в вузе. Здесь используются понятия Студент, Препод (преподаватель), Предмет, Экзамен и т.д. Эти понятия связаны с помощью следующей структурной схемы.
SCHEME’Учебный процесс’:
1. Студент[ФИО:String, ГодРожд:Integer, Группа].
2. Группа[Номер:String, Староста:Студент].
3. Препод[ФИО:String, Должность:String, Стаж:Integer].
4. Предмет[Назв:String, КоличЧасов:Integer,
ВидЗанятия:{лекция,семинар,лаб_занятие},
Отчет:{экзамен,зачет,зач_и_экз}].
5. Кафедра[Назв:String, ПрепСостав:Препод(*)].
6.(Студент СдалЭкзамен Предмет)[Дата:String,
Оценка:String, Кому:Препод].
7. (Студент СдалЗачет Предмет)[Дата:String, Оценка:String,
Кому:Препод].
8. (Препод(Должность=профессор)Читает(=<3,=<1)
Предмет(ВидЗанятия=лекция)) Группа(*)).
9. (Препод(Должность=ассистент) ВедетЗанятие(1:3,=<1)
Предмет(ВидЗанятия=семинар|лаб-занятие)) Группа(*)).
10. (Препод: Работает_на -> Кафедра)[ДатаПоступ:Integer].
11. (1-ый:Предмет Предшест 2-ой:Предмет)
12. (Студент Изучал Предметы:Предмет(*))
END
Замечания. 1) Имя Группа в предложении 1 обозначает атрибут класса Студент, но в предложении 2 это имя обозначает класс. 2) В предложении 7 интервальное ограничение (=<3,=<1) означает, что каждый профессор не должен читать лекции более, чем по трем предметам, причем лекции по каждому предмету должны читаться только одним профессором.
2.2.8. Представление данных в бмд
Стандартным представлением данных в БМД является табличное представление. Если при моделировании ПО сделано предположение замкнутого мира, то экстенсионалы понятий (классов и бинарных связей) представляются таблицами. Способ представления ясен из примера базы данных для схемы ’Учебный процесс’.
Пример 2.10. Состояние схемы ’Учебный процесс’ (база данных) имеет таблицы, «шапки» которых отвечают предложениям 1 - 11.
Студент
Surr |
ФИО ГодРожд Группа |
студент#1 студент#2 ……..…… cтудент#47 |
А.Д.Алексеев 1988 А05-01 В.М.Андреев 1987 А13-01 ……………………………..…………. Б.М.Яковлев 1989 А05-01 |
Препод
Surr |
ФИО Должность Стаж |
препод#1 препод#2 ………… препод#15 |
В.Н. Д.А. Абрамов профессор 40 C.C.Борисов ассистент 12 .. ………………………………………
В.Е.Устинов
ассистент 6 |
Предмет
Surr |
Назв КоличЧасов ВидЗанятия Отчет |
предмет#1 предмет#2 ……………… предмет#12 |
дискрет-мат 48 лекция экз дискрет-мат 16 семинар зачет ……………………………………………………………… теор-графов 36 лекция экз |
Группа
Surr |
Номер Староста |
группа#1 группа#2 |
А13-01 студент2 А05-01 студент47 |
Кафедра
Surr |
Назв ПрепСоcтав |
кафедра#1 кафедра#2 |
прикл-мат {препод#1, препод#2,…,препод#9} мат-модел {препод#10, препод#11,…,препод#22} |
СдалЭкзамен
Surr |
Студент Предмет Дата Оценка |
сдалЭкзамен#1 сдалЭкзамен#2 ………………… сдалЭкзамен#165 |
студент#1 предмет#1 05.01.07 5 студент#1 предмет#2 10.01.07 4 ……………………………………………………… студент#40 предмет#10 22.01.07 3. |
Предшест
|
1-ый 2-ой |
предшест#1 предшест#2 ……………. предшест#9 |
предмет#1 предмет#12 предмет#2 предмет#12 ……………………………….. предмет#4 предмет#7 |
Читает
Surr |
Препод Предмет Группа(*) |
читает#1 читает#2 ………… читает#32 |
препод#1 предмет#1 {группа#1, группа2#} препод#1 предмет#2 {группа#1} ………………………………………………………. препод#22 предмет#2 {группа#1,группа2#} |
ВедетЗанятия
Surr |
Препод Предмет Группа(*) |
ведетЗанятия#1 ведетЗанятия#2 ……………….. ведетЗанятия#32 |
препод#15 предмет#1 {группа#1, группа2#} препод#15 предмет#2 {группа#1} ………………………………………………………. препод#17 предмет#8 {группа2#} |