Научная статья на тему 'Логические формализации спецификаций на основе ОО-проекций'

Логические формализации спецификаций на основе ОО-проекций Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
137
36
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ОНТОЛОГИЯ / ДЕСКРИПТИВНАЯ ЛОГИКА / ФОРМАЛИЗАЦИЯ / СПЕЦИФИКАЦИЯ / ОО-ПРОЕКЦИЯ / СЕМАНТИЧЕСКИЙ ВЕБ / ONTOLOGY / DESCRIPTION LOGIC / FORMALIZATION / SPECIFICATION / OO-PROJECTION / SEMANTIC WEB

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Стукушин Никита Олегович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Logical Formalizations of Specifications Based on OO-projections

In this paper the formalization development problem for standards and specifications is considered. Such formalizations are useful at both specification development and specification application phases. In particular, if a formalization is made in a constructive way, it can serve as a basis for the implementation of relevant information systems. In this paper an approach to specification formalization is developed, which is based on special sub-logics of description logics. The approach is illustrated on the example of the specifications of the international educational consortium IMS.

Текст научной работы на тему «Логические формализации спецификаций на основе ОО-проекций»

Серия «Математика»

2009. Т. 2, № 2, С. 171-182

Онлайн-доступ к журналу: http://isu.ru/izvestia

УДК 510.62:004.82

Логические формализации спецификаций на основе ОО-проекций *

Н. О. Стукушин

Иркутский государственный университет

Аннотация. В статье рассматривается проблема построения логических формализаций стандартов и спецификаций. Формализации полезны как при разработке, так и при использовании спецификаций. В частности, если формализация осуществлена в конструктивном ключе, то она может служить в качестве основы для реализации релевантных информационных систем. В данной работе развивается подход к формализации спецификаций, использующий специальные подлогики дескриптивных логик. Подход рассматривается на примере спецификаций международного образовательного консорциума ГМБ.

Ключевые слова: онтология, дескриптивная логика, формализация, спецификация, ОО-проекция, семантический веб.

В этой работе рассматривается идея использования дескриптивных логик [2] и онтологий для формализации спецификаций. Дескриптивные логики являются универсальным инструментом для формального описания знаний. Они предоставляют богатые выразительные средства, которые позволяют включать формализованные спецификации в компьютерные системы знаний. Диапазон различных дескриптивных логик весьма широк, что позволяет делать среди них выбор наиболее подходящего для наших целей формализма. Благодаря стандартизированному представлению онтологий в виде языка OWL (Web Ontology Language, [5]), имеющего строгую логическую семантику, формальное описание спецификации в виде онтологии обеспечивает однозначное

* Работа выполнена при частичной финансовой поддержке программ «Фундаментальные исследования и высшее образование» (проект НОЦ-017 «Байкал») и «Развитие научного потенциала высшей школы (2009-2010 гг.)» (проекты

1. Введение

РНП.2.2.1.1/5901 и 3.2.3/3488).

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

В процессе формализации нужно обеспечить «прозрачное» и точное отображение спецификации в те структуры (классы и объекты), которые будут в дальнейшем использоваться для работы. Кроме этого, необходимо не забывать и о моделях взаимодействия этих структур. Для решения этой задачи нами используется концепция ОО-проекций [4]. ОО-проекции - подлогики дескриптивной логики БНОТМ(В) [6], которые позволяют формировать в рамках БНОТМ(В) «объектные» модели предметных областей.

Технически концепция ОО-проекций реализована на платформе системы О^оВох [3]. О^оВох предоставляет спектр инструментов для обработки онтологий, описывающих предметную область. Данная платформа моделирует объектно-ориентированный подход к представлению информации и, кроме того, реализует свой собственный язык запросов к онтологиям - О^оВох QL [3].

В процессе формализации спецификации 1МЯ QTI [7] потребовалось провести объемную работу по описанию всех классов стандарта в виде компонент ОО-проекции. В данной работе эта техника иллюстрируется на примере ключевого класса спецификации - АввеввтепШет («Тест»). На его примере не только демонстрируется описание классов спецификации с помощью дескриптивной логики, но и иллюстрируется проверка корректности формального описания относительно определения ОО-проекции.

2. ОО-проекции

Логикой для построения логических архитектур, включающих ОО-проекции, была выбрана дескриптивная логика БНОТМ(В) [6]. Этот выбор обусловлен рядом причин, и в первую очередь тем, что БНОТМ(В) лежит в основе языка описания онтологий OWL-DL [5]. Это обеспечивает совместимость подхода, разрабатываемого нами, с базовыми конструкциями семантического веба.

Пусть

V = (01,...,0к ;О)

некоторая область данных. Примерами В^ могут служить целые и вещественные числа, строки, даты и т.д. О содержит символы «встроенных» операций и отношений, работающих на данных В^. Мы считаем, что все

элементы типов данных - выделенные, поэтому О содержит константы для каждого элемента каждого В^ В дальнейшем через V, Vi будем обозначать константы из О, а через ад, Wi основные термы (без переменных) на О.

Словарь дескриптивной логики включает символы концептов, ролей, атрибутов и объектов. Концепты выделяют в множестве объектов предметной области совокупности объектов, обладающих определенными свойствами. В дальнейшем концепты обозначаются через А, В, О, Е, причем А, Л, О обозначают именованные (атомарные) концепты, а E

- произвольные концепты (формулы). Роли (о-свойства) определяют отношения между объектами предметной области и обозначаются через К,Щ. Атрибуты (т-свойства), обозначаемые через P,Pi, привязывают элементы области данных к объектам. Через О, Oi обозначаем имена объектов предметной области. Словарь - это четверка (С, К, Р, О), где С - множество именованных концептов, К - множество ролей, Р - множество атрибутов, О - множество имен объектов. Область данных V считается фиксированной, поэтому ее компоненты в словари не входят.

Определение 1. [Язык БНОТМ(В)] Если с € С, то с называется примитивным концептом БНОТМ(В). Примитивные концепты являются концептами. Если а, Ь - концепты, € О, г € КиР, р € О, то а П Ь, аиЬ, -а, Зг.а, Уг.а, <п г, >п г, 3(ж1,..., жп).р, У(ж1,..., жп).р, {¿^} также концепты. Если г € К, то Зг'.а и Уг;.а - концепты, где г' € {г+, г-, г±}.

Описание предметной области в БНОТМ(В), как и в любой другой дескриптивной логике, состоит из двух блоков - А-бокса и Т-бокса. ТВох содержит описание знаний концептуального (терминологического) уровня и состоит из аксиом включения:

Е1 С Е2 интерпретируется как Уж.(Е1(ж) ^ Е2(ж))

Щ С Щ2 интерпретируется как УжУу.(Л1(ж, у) ^ Щ2(ж,у))

Р1 С Р2 интерпретируется как VжVv.(Pl(ж, V) ^ Рг(ж, V))

Е1 = Е2 - сокращенная запись двух аксиом (Е1 С Е2) и (Е2 С Е1). АВох описывает предметную область на уровне конкретных данных. АВох может содержать аксиомы следующих типов: О (О) - принадлежность объекта концепту, Я(О1,О2) - отношение между объектами, Р(О, V) - значение атрибута объекта.

В работе [4] в рамках БНОТМ(В) строится «объектно-ориентированная» подсистема, ответственная за построение объектных подмоделей произвольных логических моделей предметных областей. Такая подсистема назовается ОО-проекцией. ОО-проекции можно также рассматривать как модификацию и расширение простой дескриптивной логики ТЬс [2].

Язык ТЬс включает атомарные концепты Ci € С, роли Щ € К, конъюнкцию П, и квантор всеобщности VR.C. Также у нас имеются

две логические константы Т (top) и А (bottom). Так как FLo является дескриптивной логикой, то любая интерпретация I этих конструкций на множестве объектов А должна удовлетворять правилам:

Т1 = А

А1 = 0

C1 с А

R1 с А X А

(F П G)1 = F1 П G1

VR.C1 = {o | о € А and Vo;.(R(o, o;) ^ C(o;))}

Мы расширяем базовый формализм FLo средствами для привязки объектов к данным из области D. Это означает, что вместе с ролями Ri, которые описывают связи между объектами (как объектные роли spouse

- отношение «быть супругом», и hasChild - отношение «иметь ребенка»), мы можем определять атрибуты объектов (например, целое число возраста age, и строку имени name). Для этого используются атрибуты € P. Наконец, мы предоставляем возможность явного

именования объектов с помощью идентификаторов из O.

Введем теперь оператор типизации 0, который типизирует роли и атрибуты:

1. привязывает роли R € R к парам 0(R) = [Cd, Cr], где Cd, Cr € C;

2. привязывает атрибуты P к парам 0(P) = [Cd, Dr], где Cd € C и Dr € D.

Cd называется областью определения роли R (атрибута P), Cr (Dr) называется областью значений роли R (атрибута P).

Будем говорить, что интерпретация I согласована с 0, если

VR € R.(0(R) = [Cd, Cr] ^ R1 с Cd x Cl)

VP € P.(0(P) = [Cd, Dr] ^ P1 с Cd X D1)

Интерпретация I согласована со словарем (C, R, P, O), если для любого объекта о € Т1 существует имя O € O такое, что о = O1 (т.е. все объекты выделенные). В дальнейшем будем рассматривать только интерпретации, согласованные с 0 и словарем. K |= E будет обозначать, что E истинна в любой согласованной интерпретации K. В отличие от этого K h E означает, что E выводима из K в некотором полном исчислении (например, с помощью табличных алгоритмов), а значит, истинна в любой интерпретации.

Пусть V = (C, R, P, O) - словарь.

Определение 2. [OO-концепт] Концепт вида

C1 П ... П Cf П VR1.E1 П ... П VRg .Eg П VP1.D1 П ... П VPh.Dh

называется ОО-концептом, где Ei - ОО-концепты, C, Ci € C, Ri € R, Pi € P и Di € D. Если все Ei € C, то ОО-концепт называется примитивным.

Определение 3. [ОО-определение] Аксиома

C = E (2.1)

где E - примитивный ОО-концепт, называется объектно-ориентированным определением (ОО-определением).

Пример ОО-определения:

Person = Mammal П VhasChild.Person П Vname.String

Неформальная интерпретация этих конструкций с помощью объектноориентированных концептов (что оправдывает использование префикса «ОО-») прямая. В ОО-определении

C = C1 П ... П Cn П VR1 .B1 П ... П VRk.Bk П VP1.D1 П ... П VPj.Di

атомарные концепты C, Ci,Bi обозначают ОО-классы, C1 П ... П Cn обозначает наследование, и если n > 1, тогда мы имеем множественное наследование. Каждое выражение VRi.Bi обозначает поле Ri, значения которого являются объектами класса Bi. Каждое выражение VPi.Di соответствует полю, значения которого являются элементами предопределенного типа данных Di.

Мы говорим, что концепт C в ОО-определении непосредственно наследует от C1,..., Cn. Пусть A = {Ci = Ei} - множество ОО-опреде-лений. Ci наследует от Cj, если он непосредственно наследует от Cj, или существует Ck такой, что Ci наследует от Ck и Ck наследует от Cj. A называется ацикличным, если оно не содержит Ci, наследующих от самих себя.

Схожим образом, если концепт C определен с помощью ОО-опре-деления в множестве ОО-определений A, мы говорим, что концепт C непосредственно зависит от ролей R1,..., Rk и атрибутов P1,..., P. C зависит от роли R (атрибута P), если он непосредственно зависит от роли (атрибута), или существует C' в A, который непосредственно зависит от R (P), и C наследует от С.

Теперь обратимся к определению ОО-проекции. Пусть L - дескриптивная логика, содержащая SHOZN(D) как подлогику, и K = TBoxk U ABoxk - L-описание предметной области в словаре V = (C, R, P, O) (в дальнейшем такие описания мы называем онтологиями). Пусть Vo = (Co, Ro, Po, Oo) - подсловарь V, Oo ={O1,..., O^j, а 0 - оператор типизации на Vo.

Определение 4. [ОО-проекция]

Ko = TBoxo U ABoxo

- ОО-проекция словаря Vo и оператора 0, если

1. TBoxo - ацикличное множество ОО-определений, любая интерпретация которого согласована с 0;

2. для каждой аксиомы Ax Є TBoxo выполняется K Ь Ax;

3. любая роль и атрибут из словаря Vo входит в ОО-определения TBoxo не более одного раза;

4. ABoxo С ABoxK и

— для любого C(O) Є ABoxo: O Є |Оі,...,Ог} и C Є Co, причем для каждого O такой C является единственным;

— для любого R(O, O') Є ABoxo: O, O' Є {O1,...,O1}, R Є Ro

такие, что C(O),C'(O') Є ABoxo, причем Ko = C С C1, Ko = C' С C1 и 0(R) = [Ci,Cl];

— для любого P(O, v) Є ABoxo: O Є {O1,..., O^}, P Є Po, C(O) Є

ABoxo и v Є | D |, где 0(P) = [C1,D] и Ko = C С C1.

Далее демонстрируется метод формального описания спецификаций с использованием формализма ОО-проекций.

3. Формализация IMS

В этой работе рассматривается формализация спецификаций международного образовательного консорциума IMS [7]. Наша цель - формализация спецификации IMS QTI, задающей стандарты построения образовательных систем тестирования. Дело усложняется тем, что IMS QTI зависит от спецификации описания метаданных образовательных ресурсов IMS MD и спецификации пакетирования образовательных ресурсов IMS CP. Поэтому эти спецификации также должны быть формализованы. Каждая из спецификаций содержит описание своих основных конструкций в виде XML (XML binding). XML binding формально описывает объектную модель, которая сосредоточена на синтаксических и структурных аспектах, но не затрагивает вопросы семантики. Семантика этих конструкций описана отдельно на естественном языке (английском).

Задача состоит в том, чтобы представить каждую из трех спецификаций IMS в форме онтологий. Каждая спецификация представляется в виде отдельной онтологии. Таким образом, для формализации IMS QTI необходимо построить три онтологии, которые мы будем называть терминологическими, поскольку они содержат базовое терминологическое описание структур. При этом каждый конкретный тест формализуется в отдельной онтологии, и включает в себя объекты с конкретными

данными о вопросах теста и ответах. Общее знание о «поведении» теста наследуется этими онтологиями от терминологических онтологий спецификации. Такая структура формализации позволяет превратить конкретный тест в удобный объект для распространения и повторного использования, поскольку её семантика и структура зависят только от терминологических онтологий IMS и не зависят от конкретных форматов систем тестирования.

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

Приступим непосредственно к формализации. Этот процесс предполагает описание всех элементов спецификации с помощью некоторого набора формул, которые описывают все класссы спецификаций с помощью выбранной ранее дескриптивной логики SHOIN(D). Причём в процессе описания нельзя забывать, что мы строим объектную модель спецификации, используя для этого ОО - проекции. Это значит, что структура классов должна быть построена таким образом, чтобы чётко прослеживалось наследование и связываение этих классов, а формализация не должна выходить за рамки возможностей, предоставляемых ОО-проекциями.

Приведём выдержку из спецификации IMS QTI, которая описывает понятие «теста»:

Class : assessmentltem

Attribute : identifier [1]: string

Attribute : title [1]: string The title of an assessmentltem is intended to enable the item to be selected in situations where the full text of the itemBody is not available, for example when a candidate is browsing a set of items to determine the order in which to attempt them. Therefore, delivery engines may reveal the title to candidates at any time but are not required to do so.

Attribute : label [0..1]: string256 Attribute : lang [0..1]: language

Attribute : adaptive [1]: boolean = false Items are classified into Adaptive Items and Non-adaptive Items.

Attribute : timeDependent [1]: boolean

Attribute : toolName [0..1]: string256 The tool name attribute allows the tool creating the item to identify itself. Other processing systems may use this information to interpret the content of application specific data, such as labels on the elements of the items itemBody. Attribute : toolVersion [0..1]: string256 The tool version attribute allows the tool creating the item to identify its version. This value must only be interpreted in the context of the

toolName

Contains : responseDeclaration [*]

Contains : outcomeDeclaration [*]

Contains : templateDeclaration [*]

Contains : templateProcessing [0..1]

Contains : stylesheet [0..*]

Contains : itemBody [0..1]

Contains : responseProcessing [0..1]

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Contains : modalFeedback [*]

Формализация понятия «тест» в виде формулы дескриптивной логики представлена на рис. 1. Выражение (n..m) r является сокращением для формулы >n r П <m r. Выражение (n..) r - сокращение для >n r, а (= n) r - для >n r П <n r.

assessmentltem =

(= 1) identifier П (= 1) title П

(0..1) label П (0..1) lang П (= 1) adaptive П (= 1) timeDependent П

(0..1) toolName П (0..1) toolVersion П responseDeclaration П

outcomeDeclaration П templateDeclaration П

(0..1) templateProcessing П (0..) stylesheet П

(0..1) itemBody П (0..1) responseProcessing П modalFeedback

Рис. 1. Определение класса «вопрос» в SHOIN(D)

Формализовав подобным образом все элементы спецификации, кроме атомарных (не имеющих ни атрибутов, ни связанных элементов, кроме тех, что уже формализованы), мы полностью опишем стандарт IMS QTI с помощью SHOZN(D). Атомарные элементы будут являться членами в правых частях формализующих выражений. Опишем такую формализацию.

Несложно проверяется, что если опустить ограничения кардинальности, то приведённое выше описание класса «вопрос» соответствует определению ОО-проекции. Правая часть данного выражения полностью соответствует определению ОО-концепта.

Cl П ... П Cf П VR1.E1 П ... П VRg.Eg П VPl.Di П ... П VPh.Dh

с примитивными ролями и атрибутами Rj и Pj. А значит, всё выражение соответствует ОО-определению вида

C = E

Согласно спецификации IMS QTI, существует несколько независимых абстрактных классов, от которых наследуются основные классы,

использующиеся для создания вопросов, вариантов ответов, оценки и прочего. Они, в свою очередь, расширяются классами уровня ниже и т.д. Ацикличность ТВохо, состоящего из описаний этих классов/концептов, проверяется непосредственно.

Чтобы проверить соответствие условию 2 определения ОО-проекции, отметим, что сама формализация 1МЯ укладывается в рамки ОО-про-екций, а это значит, что К и Ко совпадают, что тривиальным образом влечет К Ь Ах для каждой аксиомы Ах € ТВохо.

Доказательство того, что любая роль и атрибут из словаря Уо входит в ОО-определения ТВохо не более одного раза следует из самой структуры спецификации. Очевидно, что если каждый класс расширяет класс более высокого уровня, а тот, в свою очередь наследует от одного из независимых абстрактных классов, то атрибуты и роли будут входить в ОО-определение ТВохо не более одного раза.

Утверждение АВохо С АВохк из условия 4 определения доказывается аналогично доказательству условия 2. Истинность подпунктов условия 4 определения ОО-проекции для указанной формализации следует из структуры специфкации. Формализация спецификации 1МЯ QTI построена таким образом, что каждый его класс, кроме «корневых», расширяет родительский, а следовательно, выполняется:

— для любого С (О) € АВохо: О € {О1,..., Ог} и С € Со, причем для каждого О такой С является единственным;

— для любого К(О, О') € АВохо: О, О' € {О1,..., Ог}, К € ^.о такие, что С(О),С'(О') € АВохо, причем Ко = С С С1, Ко |= С' С С1 и 0(К) = [СЬС1 ];

— для любого Р (О,и) € АВохо: О € {О1,...,Ог}, Р € Ро, С (О) € АВохо и V € | Б|, где 0(Р) = [С1,^] и Ко = С С С1.

Это завершает обоснование того, что наша формализация спецификаций 1МЯ представляет собой ОО-проекцию. Это означает, что к этой формализации могут быть применены методы обработки данных и знаний, действующие в рамках ОО-проекций, и реализованные, в частности, в системе О^оВох.

4. Методы и интерфейсы

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

подход соответствует общей концепции логической архитектуры [4], которая сочетает «расслоение» базового логического формализма на слои (страты) по уровню сложности и выразительности, и при этом каждая страта снабжается методами и интерфейсами работы с данными, описываемой на данном уровне.

Разрабатанная нами система методов и интерфейсов, построенных на формализации спецификаций 1МЯ, реализована в объектно-ориентированном стиле. Это позволяет приблизить «элитную» логическую формализацию к «обычным» разработчикам - через формирование привычной для них схемы взаимодействия, и сокрытие сложностей логической формализации от тех, кто не знаком с тонкостями дескриптивных логик. Фактически получается так, что на базе логической формализации строится привычная объектно-ориентированная программистская модель предметной области.

Погрузив формализацию спецификаций в О^оВох, мы получим возможность использовать в качестве интерфейсов его язык запросов -О^оВох QL [3]. С помощью языка запросов происходит взаимодействие внешних агентов с терминологическими онтологиями 1МЯ и онтологиями конкретных тестов. Таким образом, достигаются две цели:

1. перед разработчиком предстанет привычная объектно - ориентированная модель, инкапсулирующая логические структуры и операции, в которых пользователю разбираться совершенно не обязательно;

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

Основные методы работы с онтологиями 1МЯ содержатся в разработанной нами библиотеке QTI-Lib [8]. Система основных методов содержит:

Метод генерации терминологических онтологий 1МЯ QTI в О^оВох. Для этого описание спецификации в виде выражений (Б) пере-

водится с помощью Опо1оВох в онтологическое описание. Для каждого класса онтологии создаётся свой класс на объектно-ориентированном языке программирования, который в дальнейшем разработчик может использовать для своих целей.

Метод импорта XML/QTI-описания тестов и трансляции тестов в объекты отдельной онтологии, погруженной в О^оВох. Как упоминалось выше, тесты в формате !МЯ QTI хранятся в виде хт1-файлов. Необходимо эти тесты сформировать в виде отдельной онтологии, которая будет наследовать общие знания о тестах из терминологических онтологий !МЯ. Импортирующий метод создает конкретные экземпляры тестов, вопросов и других объектов, действующих в рамках терминоло-

гии IMS QTI и наследующих «знания» о тестах из терминологических онтологий, сформированных предыдущим методом.

Метод экспорта объектов из онтологии QTI, хранящейся в OntoBox, в тесты в виде XML/QTI. Этот метод обратен предыдущему. Некоторую сложность в его реализации определяет то, что «прямая» трансляция объектов в xml-дерево не всегда даёт корректный с точки зрения формата IMS QTI, xml-документ. Это объясняется тем, что xml-дерево, образно говоря, «плоское», а онтология «объёмная». Поэтому в процессе экспорта приходится программно учитывать особенности трансляции онтологичского класса и его объекта в xml-сущность.

Метод выборки компонента «тест» из онтологии - для дальнейшей обработки в образовательных системах. Этот метод позволяет из множества тестов, «погружённых» в онтологии, выбрать именно один, «собрав» его из составных частей типа вопросов, вариантов ответов и т.д.

Метод поддержки генерации компонента «тест» (помогает составлять шаблоны тестов из маленьких частей тестов QTI). Этот метод предоставляет дополнительные инструменты для создания тестов из вопросов, вариантов ответов, реакций на действия пользователя и т.д. Все эти компоненты описаны в виде классов и объектов онтологий.

Онтологии вместе с этими методами служат общей платформой для построения систем тестирования. Существенным качеством этой платформы является то, что она допускает многократное использование и распространение. Взаимодействие между OntoBox и методами может быть организовано как непосредственно, через собственный интерфейс библиотеки QTI-lib, так и с помощью языка запросов OntoBox QL. Здесь можно использовать клиент - серверную технологию, организовав обмен запросами по протоколу HTTP. Отметим, что на основе данной библиотеки была разработана практическая система тестирования в рамках научно-образовательного портала http://lake.baikal.ru.

Автор благодарен А.В. Манциводе за поддержку в работе и ценные замечания.

Список литературы

1. The Semantic Web http://www.w3.org/2001/sw/

2. Franz Baader, Diego Calvanese, Deborah L. McGuinness, Daniele Nardi, Peter F. Patel-Schneider (Eds.): The Description Logic Handbook: Theory, Implementation, and Applications. Cambridge University Press 2003.

3. A.Malykh, and A. Mantsivoda. A Query Language for Logic Architectures. Proceedings of 7th International Conference ’Perspectives of System Informatics’, June 2009.

4. А.А. Малых, А.В. Манцивода, В.С. Ульянов / Логические архитектуры и объектно-ориентированный подход // Вестник НГУ. Серия: Математика, механика, информатика. 2009. Т9. Вып. 3. С. 64-85

5. Web Ontology Language (OWL). www.w3.org/2004/OWL

6. Ian Horrocks, and Peter F. Patel-Schneider. Reducing OWL entailment to description logic satisfiability // In: Fensel, D., Sycara, K. and Mylopoulos, J., eds., Proc. of the 2003 International Semantic Web Conference (ISWC 2003). -number 2870 in Lecture Notes in Computer Science. - p.17-29. - Springer.

7. IMS Global Learning Consortium. http://imsglobal.org/

8. IMSQ QTI & Ontologies http://meta2project.org/ru/qti.html

N. O. Stukushin

Logical Formalizations of Specifications Based on OO-projections

Abstract. In this paper the formalization development problem for standards and specifications is considered. Such formalizations are useful at both specification development and specification application phases. In particular, if a formalization is made in a constructive way, it can serve as a basis for the implementation of relevant information systems. In this paper an approach to specification formalization is developed, which is based on special sub-logics of description logics. The approach is illustrated on the example of the specifications of the international educational consortium IMS.

Keywords: ontology, description logic, formalization, specification, OO-projection, semantic web

Стукушин Никита Олегович, Институт математики,экономики и информатики, Иркутский государственный университет, 664000, Иркутск, ул. К. Маркса, 1 тел.: (3952)242210 (stukushin@baikal.ru)

Nikita Stukushin, Irkutsk State University, 1, K. Marks St., Irkutsk, 664003 Phone: (3952)242210 (stukushin@baikal.ru)

i Надоели баннеры? Вы всегда можете отключить рекламу.