УДК 004.75
А. А. Бездушный
Московский физико-технический институт (ГУ) Институтский пер., 9, Долгопрудный, 141700, Россия
E-mail: [email protected]
МАТЕМАТИЧЕСКАЯ МОДЕЛЬ СИСТЕМЫ ИНТЕГРАЦИИ ДАННЫХ
НА ОСНОВЕ ОНТОЛОГИЙ
В статье предлагается формальная модель системы интеграции данных на основе онтологий и рассматривается вопрос переформулировки запросов в такой системе. Предлагается выбор диалектов дескриптивной логики и языков запросов, при которых построение требуемой переформулировки возможно, а также алгоритм построения переформулировки для важного класса систем интеграции данных.
Ключевые слова: интеграция данных, онтологии, дескриптивная логика, OWL.
Цель работы
Данная работа посвящена интеграции данных распределенных гетерогенных информационных источников в единую систему, которая позволила бы эффективно исполнять запросы на выборку взаимосвязанных данных из таких источников. Такого рода системы в литературе известны как системы интеграции данных (Enterprise Information Integration, EII [1; 2]), или федеративные информационные системы (FIS), системы на основе механизма посредников (MBIS).
Задача интеграции данных заключается в соединении данных из различных источников и предоставлении пользователю унифицированного представления этих данных. Система интеграции данных позволяет освободить пользователя от необходимости самостоятельно отбирать источники, в которых находится интересующая пользователя информация, обращаться к каждому источнику по отдельности и вручную сопоставлять и объединять данные из различных источников. При решении задачи интеграции данных возникают проблемы технического обеспечения взаимодействия с информационными источниками, синтаксической неоднородности форматов данных и, наконец, семантической неоднородности данных. В данной работе акцентируется внимание на последней, наиболее существенной проблемной области, которая затрагивает вопрос спецификации соответствия смысла (семантики) информации в разных информационных источниках.
Централизованная система интеграции данных предполагает следующую архитектуру. Имеется некоторое множество информационных источников, данные источников считаются представленными (или динамически представимыми) в некоторой единой модели данных, структура данных каждого источника регламентируется его собственной локальной схемой данных. Предполагается, что каждый информационный источник «обернут» промежуточным компонентом-адаптером, который отвечает за выборку сведений из источника в рамках единой модели данных, а также за предоставление стандартного технического интерфейса для обращения к источнику (сетевой протокол, язык запросов). Пользователь не взаимодействует с источниками напрямую, а обращается к выделенному компоненту-посреднику, который отвечает за обслуживание пользовательских запросов и взаимодействие с источниками. Пользователь формулирует свои запросы в терминах глобальной схемы данных (схемы данных посредника), которая проектируется для системы интеграции исходя из интересующих пользователя аспектов предметной области. Помимо глобальной схемы данных, в системе имеется набор описаний источников, задающих семантическое отображение между терминами глобальной схемы и терминами различных схем источников. Данные, соответствующие глобальной схеме, к которым
ISSN 1818-7900. Вестник НГУ. Серия: Информационные технологии. 2008. Том 6, выпуск 2 © А. А. Бездушный, 2008
пользователь формулирует запросы, являются виртуальными в том смысле, что они не хранятся в системе физически. Вместо этого компонент-посредник использует описания источников для того, чтобы переформулировать пользовательский запрос в ряд запросов к источникам данных и на основе этих запросов динамически получить интересующий пользователя результат.
Целью настоящей работы является применение к задаче интеграции данных семантически богатых технологий, таких как онтологии и дескриптивная логика [3; 4]. Интеграция данных достаточно хорошо проработана для реляционных БД, однако для онтологий остается лишь слабо изученной актуальной областью исследований. Использование онтологий вместо реляционной модели данных позволяет повысить выразительные возможности системы интеграции данных, расширив ее сложными ограничениями целостности, логическим выводом, более гибкими механизмами спецификации отображения между глобальной схемой данных и схемами данных источников.
Применение онтологий к задаче интеграции распределенных данных целесообразно также в связи с тем, что онтологии в последнее время стали предметом стандартизации World Wide Web консорциума (W3C) в рамках проекта семантического веб (Semantic Web). Предложенные унифицированная модель данных RDF (Resource Decription Framework [5]) и язык веб-онтологий OWL (Web Ontology Language [3]) определили стандартный способ для семантически богатого описания распределенной в Интернет информации. Недавно была утверждена также спецификация языка запросов SPARQL [6], предназначенного для выборки информации из RDF-источников данных. Применение указанных технологий семантического веб в системе интеграции данных представляется важным и перспективным направлением.
В данной работе рассматривается класс систем интеграции данных, которые мы будем называть системами интеграции данных на основе онтологий. Применение в системе интеграции данных аппарата дескриптивной логики вместо реляционной модели данных ставит новые актуальные вопросы и задачи и приводит в ряде случаев к трудноразрешимости или неразрешимости задачи ответа на запросы в такой системе.
Основной задачей, которую мы будем рассматривать, является переформулировка запросов в системе интеграции данных на основе онтологий, т. е. построение на основе пользовательского запроса, заданного в терминах глобальной схемы данных, распределенного запроса к источникам данных. Сформулируем ключевые параметры рассматриваемого в данной работе класса задач о переформулировке запросов в системе интеграции данных.
Глобальная модель данных. В системе интеграции данных на основе онтологий будем исходить из унифицированной модели данных RDF.
Модель данных источников. Будем считать, что данные источников представлены (или представимы) в унифицированной модели данных RDF.
Язык спецификации глобальной схемы данных. Будем представлять глобальную схему данных онтологией на языке веб-онтологий OWL, используя некоторое подмножество конструкций OWL (выбор которого мы будем рассматривать ниже). Иначе говоря, формально глобальная схема представляется онтологией на некотором диалекте дескриптивной логики Lr.
Язык спецификации схем данных источников. Будем считать, что схемы данных источников также представлены с помощью некоторого фрагмента языка OWL, т. е. на некотором диалекте дескриптивной логики £д.
Язык спецификации отображения схем (описания источников). Отображение онтологий задается в общем случае парами запросов на некотором языке запросов QLF в терминах глобальной онтологии и в терминах онтологий источников соответственно.
Язык пользовательских запросов. Будем рассматривать запросы на языке SPARQL, однако для сохранения разрешимости задачи ответа на запросы в системе интеграции данных мы будем допускать лишь ограниченное число конструкций SPARQL. Формально мы рассматриваем некоторый язык запросов QLr над глобальной онтологией.
Язык переформулированных запросов. Будем рассматривать возможность переформулировки запроса в некоторое подмножество SPARQL, т. е. формально некоторый язык запросов QLr над онтологиями источников (выбор которого мы будем рассматривать ниже).
Выбор конкретных диалектов дескриптивной логики и языков запросов определяет наличие решения задачи, т. е. возможность переформулировки запроса в рассматриваемой системе интеграции данных. В данной работе предлагается формальная математическая модель системы интеграции данных на основе онтологий и рассматривается вопрос выбора параметров задачи переформулировки запросов в такой системе. Предлагается выбор диалектов дескриптивной логики и языков запросов, при которых построение требуемой переформулировки возможно. Рассматриваются условия, при которых переформулированный запрос может быть транслирован в язык запросов SQL, что означает важную на практике возможность оптимизированного исполнения запросов к источникам, представленным реляционными базами данных, непосредственно реляционной СУБД, и предлагается соответствующий алгоритм переформулировки.
Актуальность и новизна
Технологии семантического веб (Semantic Web) являются молодым и перспективным направлением развития современной информационной индустрии. Стандартизация World Wide Web консорциумом (W3C) в 2004 г. модели описания информационных ресурсов RDF (Resource Description Framework [5]) и языка веб-онтологий OWL (Web Ontology Language [3]) положила начало интенсивному развитию и внедрению семантических технологий. В январе 2008 г. была утверждена также спецификация языка SPARQL [6], предназначенного для формулировки запросов на выборку информации из информационных источников, данные которых могут быть представлены в унифицирующей модели данных RDF.
Применение семантически богатых технологий, таких как OWL-онтологии и дескриптивная логика [3; 4], к задаче интеграции данных является весьма перспективным подходом. Онтологии позволяют специфицировать структуру и семантику терминов системы интеграции и источников данных, выразить различные формы ограничений целостности в системе интеграции данных. Благодаря применению конструкций дескриптивной логики механизм спецификации соответствия глобальных терминов и терминов источников данных приобретает большие выразительные возможности, нежели доступные в реляционных системах интеграции данных. Это, в частности, позволяет расширить спектр возможных источников, которые могут быть интегрированы в единую систему, а также сделать спецификацию соответствия терминов более краткой. Другим стимулом для применения технологий семантического веб в контексте интеграции данных распределенных гетерогенных информационных источников является модель данных RDF, которая специально спроектирована для представления распределенной в сети информации. RDF позиционируется как унифицирующая модель данных, предназначенная для описания информационных ресурсов веб таким образом, чтобы любые совместимые со стандартами RDF и OWL сторонние системы могли единым образом автоматически проинтерпретировать смысл этих описаний (принцип семантической интероперабельности).
Следует отметить, что в отличие от реляционных баз данных онтологии могут выражать некоторую форму неполноты информации, что вносит существенные сложности при рассмотрении в контексте онтологий задач, решенных для реляционных баз данных. Принцип «открытости» онтологий (open-world assumption) предполагает, что в высказываниях онтологии зафиксирована лишь часть сведений об объектах и терминах, при этом могут существовать и другие сведения, не указанные в онтологии явно. Более того, предполагается, что некоторые дополнительные сведения могут быть получены дедуктивным логическим выводом на основе зафиксированных в онтологии фактов и высказываний. Принцип «открытости» определяет также особенности ответа на поисковые запросы к онтологии. Для вычисления множества ответов на запрос относительно онтологии требуется провести логический вывод на основе исходного множества фактов онтологии и ее аксиом, что может приводить к труд-норазрешимости или неразрешимости задачи. В частности, задача ответа даже на простые конъюнктивные запросы (вид запросов, аналогичный select-project-join запросам в SQL) для дескриптивной логики SHOXNv) [7], соответствующей диалекту языка веб-онтологий OWL-
DL, на момент написания статьи не решена, и вопрос ее разрешимости остается открытым.
Рассматриваемая в настоящей работе задача ответа на запросы в системе интеграции данных, а также смежная с ней задача ответа на запросы с использованием представлений, достаточно детально изучена для реляционных баз данных (см. обзор [8], а также работы [9-12]) и в то же время остается в большой степени областью актуальных исследований в контексте онтологий и дескриптивной логики. Можно отметить лишь небольшой ряд работ [13-19], в той или иной степени рассматривающих эту задачу для разных диалектов дескриптивной логики, разных языков запросов и разных механизмов спецификации представлений (отображения онтологий), при этом самые актуальные работы в этой области датируются 2008 г. Ключевой проблемой при рассмотрении такого рода задачи для дескриптивной логики является ее трудноразрешимость или неразрешимость для достаточно выразительных диалектов дескриптивной логики. Соответственно важно выбрать параметры задачи таким образом, чтобы она имела практическую ценность и определенные преимущества и при этом оставалась разрешимой за полиномиальное время относительно объема данных (фактов) онтологий (класс сложности P) или даже ограничивалась логарифмическим объемом памяти относительно объема данных (класс LOQSVACE). Последнее позволяет сохранить возможность
применения реляционных СУБД для хранения фактов онтологий и ответа на запросы, формулируемые в системе к таким множествам фактов, что важно с практической точки зрения. В данной работе делается акцент на практическом применении OWL-онтологий и дескриптивной логики в задаче интеграции данных и формулируется разрешимый класс задач переформулировки запросов в системе интеграции данных на основе онтологий.
Предварительные определения
Дескриптивная логика. Математической основой языка веб-онтологий OWL является так называемая дескриптивная (описательная) логика (Description logics, DL [4]). Дескриптивная
логика - это семейство языков представления знаний, предназначенных для выражения терминологического знания о предметной области, семантика которого задается отображением в исчисление предикатов первого порядка.
Дескриптивная логика оперирует двумя видами отношений - унарными, называемыми концептами (классами), и бинарными, называемыми ролями (свойствами). Концепты и роли могут быть атомарными или сложными, определенными с помощью конструкторов языка дескриптивной логики на основе других концептов и ролей. Роли принято делить на абстрактные роли, связывающие объекты, и атрибуты (конкретные роли), связывающие объекты со значениями примитивного типа данных. Онтология в дескриптивной логике определяется как O = {T A},
где T- терминология (англ. TBox), множество терминологических аксиом, т. е. высказываний
о терминах онтологии - концептах и ролях 1 ;
A - множество фактов 2 (ABox), высказываний об объектах 3 онтологии.
Если сравнивать с реляционными базами данных, то терминология соответствует схеме базы данных, а множество фактов - данным. Однако в отличие от реляционной базы данных в онтологии имеющиеся факты рассматриваются как неполная информация об описываемых
1 В ряде работ принято выделять отдельные множества высказываний о концептах (TBox) и о ролях (RBox), в настоящей работе мы опускаем это разделение, а концепты и роли обозначаем также понятием «термины».
2 В ряде работ для некоторых диалектов DL множество фактов A не вводится в систему определений, в частности для вариаций AL, а также для O-диалектов, в которых факты могут быть выражены номиналами и вложением концептов: C(a) ^ {a} != C, R(a, b) ^ {a} != ER.{b}. Мы приводим эти теории к общей системе определений, вводимой в данной работе.
3 В англоязычной литературе используется термин «individual», мы будем использовать термин «объект».
информационных ресурсах, а также предполагается, что на основе терминологии и исходных фактов могут быть дедуцированы производные факты.
Допустимые формы высказываний терминологии Tи множества фактов A определяются
используемым языком дескриптивной логики L. В табл. 1 приведено сопоставление выразительных возможностей ряда упоминаемых в настоящей работе диалектов дескриптивной логики, начиная с языков из класса AL (атрибутивный язык [4]) и заканчивая диалектами языка
OWL (OWL-Lite, OWL-DL [3]). Для сравнения приводятся также характеристики языка RDF Schema [20].
Для тех конструкций, которые представляются в языке OWL конкретным элементом, указаны наименования таких элементов OWL. Формальное определение упоминаемых в таблице конструкторов и аксиом приводится ниже. Кроме того, в табл. 1 приводится расшифровка принятой символьной нотации наименований диалектов дескриптивной логики, которую мы будем использовать в дальнейшем. Для каждой ключевой характеристики языка дескриптивной логики во втором столбце указана соответствующая литера символьной нотации. Наименование диалекта получается соединением соответствующих литер, например ALCNR =
= AL + C + N +R, атрибутивный язык, расширенный сложным отрицанием, - ограничениями
мощности и сложными ролями.
Рассмотрим формальное определение допустимых высказываний онтологии для дескриптивной логики SKOXhfv'), которая соответствует диалекту OWL-DL [3] (см. также [7]). Пусть
С - бесконечное множество констант, состоящее из двух непересекающихся подмножеств Ca объектов и Cd значений примитивных типов данных. Пусть NC - множество имен концептов, NRa - множество имен абстрактных ролей, NRd - множество имен атрибутов. Множество всех имен будем также называть алфавитом N = NC U NRaU NRd. Атомарной ролью будем называть P е NRa и NRd, атомарным концептом - A е NC. Абстрактной ролью называется роль
Ra е NRa или обратная роль R~ для любой Ra е NRa. Атрибутом называется роль Rd е NRd. Множество SHOXN'^ концептов С определяется согласно следующей синтаксической
нотации (пояснение ниже):
C ^ Т | 1 | A | -С | С П С2 | С1 U С2 | VRa.C | 3Ra.C | > n Rs | < n Rs | {ai, ..., a„} | > n Rd |
I < n Rd | VRd1..Rdn-D | 3Rdi..Rdn.D
D ^ d | {cb ..., Cn}.
Здесь A - атомарный концепт, C1n - концепт, Ra - абстрактная роль, Rd1..n - атрибут, Rs - абстрактная роль, не имеющая транзитивных вложенных ролей (с учетом рефлексивнотранзитивного замыкания, см. [7]), a, е Ca, с, е Cd, n > 1, d - допустимый примитивный тип данных (см. [7]).
Неформально, сложный концепт задает некоторый класс объектов на основе других концептов и ролей с помощью следующих конструкторов:
• верхний концепт Т, содержащий все объекты;
• нижний концепт 1, не содержащий объектов;
• атомарный концепт A е NC;
• дополнение концепта —С - задает класс объектов, не принадлежащих к С;
• конъюнкция концептов С1 П С2 - задает класс объектов, принадлежащих одновременно к обоим концептам С1 и С2;
• дизъюнкция концептов С1 U С2 - задает класс объектов, принадлежащих к С1 или С2;
• универсальное ограничение VRa.C - задает класс объектов, которые роль Ra связывает только с объектами из класса C (аналогично VRd1..Rdn.D - со значениями типа D);
Таблица 1
Сопоставление диалектов дескриптивной логики
Характеристика Нотация RDFS [20] ALE [4] N] S ~ o il 3 ч FT <N ^ (U ( 5 S Ss О в С ( -g я s Î 3 ^ pi “ в 1
Конструкторы концептов и ролей
Т - Верхний концепт (Thing) AL + + + + + + +
L - Нижний концепт (Nothing) AL + + + только АіПА2^± только а1Па2 !=± + +
—A - Атомарное отрицание AL + + + + + + +
—С - Сложное отрицание (complementOf) C + + +
С П С2 - Конъюнкция (intersectionOf) AL неяв- но + + + + + + +
С1 U С2 - Дизъюнкция (unionOf) U + +
VR.C - Универсальные ограничения (allValuesFrom) AL неяв- но range, do- main + + + + + +
3R (3R.T) - Простые экзистенциальные ограничения AL + + + + + + +
3R.C - Экзистенциальные ограничения (someValuesFrom) E + + + + +
> n Rs, < n Rs -Ограничения мощности (min/maxCardinality) N + + только 0 или i + +
> n Rs.C, < n Rs.C -Сложные ограничения мощности Q +
(ab ..., an} - Номинал^!, перечисление класса (oneOf, has-Value) O + +
Примитивные типы данных (DatatypeProperty) (D) + + + + +
R~ - Обратные роли (inverseOf) I + + + +
Окончание табл. 1
Характеристика Нотация КВ¥Б, [20] АСЕ [4] 1 ^ и ^ ч гг ч а и -В <и £ 'О £ О и а 1 й ^ в£ ^ О .В ^ р? ~ О . 8
Сложные роли, рефлексивность, отрицание ролей п только К п к2 только -К
Высказывания терминологии
С1 Е С2 - Вложение концептов, вС1 (БиЬОаББОТ) AL + + + + + огранич. + + +
Я1 Е Я2 - Вложение ролей ^иЪРгорег- Н + + + + +
Рипс^Я), или Т Е <1 Я - Функциональные роли (РипсИопаГРгорейу) Т + огранич. + + +
Тгаш(Я) - Транзитивные роли (Тгап-8ШуеРгорейу) Б * + + +
Высказывания множества фактов
С(а), К(а, Ь) - Принадлежность к концепту, роли + + + + + + + +
* Класс в объединяет АС, С и поддержку обратных ролей.
• экзистенциальное ограничение ЗЯа.С - задает класс объектов, связываемых ролью Яа с объектом из класса С (аналогично ЗЯ^.Я^В - со значением типа данных П);
• ограничения мощности > п Я^ > п Я^ (и соответственно < п Я^ < п Я¿¡) - задают классы объектов, связываемых заданной ролью не менее чем (не более чем) с п объектами (значениями);
• перечисление (аь ..., ап} - задает класс перечислением множества объектов.
Теперь мы готовы дать определение допустимых видов высказываний онтологии. Терминология для вНОХМТ,) (О^^-БЬ) может включать следующие аксиомы:
• С Е С2, где Сь С2 - концепты (аксиома вложения концептов);
• Яа1 Е Яа2, где Яа1, Яа2 - абстрактные роли (аксиома вложения абстрактных ролей);
• ЯЛ Е ЯЛ2, где ЯЛ, ЯЛ2 - атрибуты (аксиома вложения атрибутов);
• Тгап8(Яа), где Яа - абстрактная роль (аксиома транзитивности роли).
Множество фактов онтологии А содержит высказывания формы С(а) или Я(а, Ь), где С -
концепт, Я - роль, а е Са, Ь е С.
В данной работе нам понадобится также диалект дескриптивной логики DL.-L.ite [18; 21-22].
Его основное отличие от вНОХМ^ (т. е. OWL-DL) заключается в запрете ряда конструкто-
ров, а также в ограничении формы аксиом вложения концептов. Рассмотрим определение языка VC-CiteÁ, эквивалентное [18]. Как и для S'HOIN(v'>, абстрактная роль Ra £ NRa U [Ra~ |
Ra £ ^Ra}, атрибут Rd £ NRd, атомарный концепт Á £ NC. Концепты в VC-CiteÁ определяются
согласно следующей синтаксической нотации (CL - простой концепт, C - концепт):
CL ^ Á | 3Ra | 3Rd;
C ^ Т | Á | -Á | Ci П С2 | 3Ra | 3Rd | 3Ra.C | -3Ra | -3R.
Терминология VC-Cite может включать только следующие ограниченные формы аксиом:
• CL Е C, где CL - простой концепт, C - концепт, согласно приведенной нотации (ограниченная аксиома вложения концептов);
• Ra1 Е Ra2, Ra1 Е -Ra2, где Ra1, Ra2 - абстрактные роли (аксиомы вложения и различия абстрактных ролей);
• Rd1 Е Rd2, Rd1 Е -Rd2, где Rd1, Rd2 - атрибуты (аксиомы вложения и различия атрибутов);
• p(Rd) Е d, где Rd - атрибут, d - допустимый примитивный тип данных, р задает множество всех значений Rd (аксиома типа значений атрибута);
• Funct(R) (аксиома функциональной роли при отсутствии конструктора <1 R).
При этом в VC-CiteÁ-терминологиях для функциональных ролей не допускается определение вложенных ролей, а также их использование в конструкциях 3Ra.C. На основе VC-CiteÁ определяются диалекты VC-CiteR и VC-CiteF. Язык VC-CiteR получаем из VC-CiteÁ запретом аксиом Funct(R), язык VC-CiteF - запретом аксиом вложения ролей.
Теперь перейдем от рассмотрения синтаксиса высказываний онтологии к их семантике. Введем ключевые понятия интерпретации и модели онтологии, которые формализуют семантику онтологий (см. также [7]). Интерпретацией I онтологии O = {T A} называется пара (А1, •/), где А1 - непустое множество объектов, называемое областью определения интерпретации I, а • - функция интерпретации, которая сопоставляет каждому концепту
терминологии T некоторое подмножество А1, а каждой роли - подмножество декартова произведения А1 х А1. Функция интерпретации определяется индуктивно, в зависимости от конструкций используемого диалекта дескриптивной логики. Следующее определение функции интерпретации вводится для SHOlN^, т. е. OWL-DL (обозначения те же, что и выше):
• P с А1 х А1 (каждой атомарной роли P сопоставляется подмножество А1 х А1);
• (a, b) £ P ^ (b, a) £ (P-)1 (обратные роли P_);
• (a, b) £ R+ л (b, c) £ R+ ^ (a, c) £ R+ (для любой транзитивной роли R+ : Trans(R));
• Á1 с А1 (каждому атомарному концепту сопоставляется подмножество А1);
• Т1 = А1 (верхний концепт представляет А1);
• = 0 (нижний концепт - пустое множество);
• (-С) 1 = А1 \ С (дополнение С в А1);
• (С1 П С2) 1 = С/ П С/ (пересечение);
• (С1 U С2) 1 = С11 U С21 (объединение);
• (VR.C)1 = {a £ А1 | Vb £ А1 : (a, b) £ R ^ b £ C1} (аналогично VRd1..Rdn.D);
• (3R.C)1 = {a £ А1 | 3b £ C : (a, b) £ R1} (аналогично 3Rd1..Rdn.D);
• (> n Rs)1 = {a £ А1 | |{b | (a, b) £ R/}| > n} (аналогично > n Rd);
• (< n Rs)1 = {a £ А1 | |{b | (a, b) £ R/}| < n} (аналогично < n Rd);
• ({a1, ..., an})1 = {a/, ..., a/} (перечисление класса).
Аналогично функция интерпретации вводится и для других диалектов дескриптивной логики (для DL-LiteA также (p(Rd))7 = {b £ А7 | (a, b) £ Rd7}).
Интерпретация I называется моделью онтологии O = {T, A}, если она удовлетворяет всем высказываниям в Tи A. Для SHOIN^ (OWL-DL) это означает, что:
• для любой аксиомы С\ Е С2 верно С\ с С27;
• для любой аксиомы Ri Е R2 верно R\ с R27;
• для любой аксиомы С(а) верно а7 £ С7;
• для любой аксиомы R(a, b) верно (d, b1) £ R1.
Множество моделей онтологии O будем обозначать MO. Онтология O называется выполнимой, если она имеет модели, т. е. Ф 0. Интерпретация I £ называется моделью концепта C относительно O, если C7 Ф 0. Концепт называется выполнимым, если он имеет модели.
Отношение логического следствия = определяется в соответствии с функцией интерпретации следующим образом:
• I = С(а) «• а1 £ С1;
• I = R(a, b) «• (а7, b1) £ R7;
• I = R\ Е r2 ^ R\ с R27;
• I = С\ Е С2 «• С/ с С27.
Индуктивно отношение логического следствия вводится для любых высказываний а (I = а),
являющихся логическими комбинациями указанных видов простых высказываний. Например, I = С(а) л 3b R (a, b) ^ а7 £ С1 л 3b7: (а7, b7) £ R7. Высказывание а логически следует из
онтологии O (O = а), если I = а VI £ MO.
Будем говорить, что объект а £ Са принадлежит к концепту С относительно O, если O = С(а) (т. е. а £ С VI £ MO). Будем говорить, что концепт С\ содержится в концепте С2 относительно O (C\ EO C2), если O = С\ Е С2 (т. е. С/ с С27 VI £ MO). Концепт С\ эквивалентен концепту С2 относительно O (C\ =O C2), если C\ EO C2 и C2 EO C\ (т. е. С\7 = С27 VI £ MO).
Будем говорить, что некоторый язык дескриптивной логики принимает уникальность имен, если различные константы представляют различные сущности предметной области, т. е. не допускается эквивалентность объектов, представленных различными константами: а Ф b ^ а7 Ф b7. Уникальность имен принята в ряде диалектов DL, в том числе в DL-Lite, в OWL уникальность
имен не принята.
Язык запросов. Для описания запросов в соответствии с моделью данных RDF было предложено достаточно много диалектов языков, на основе пересмотра которых сформирован утвержденный недавней рекомендацией W3C язык SPARQL [6] (от 15 января 2008 г.). В роли языка запросов в системе интеграции данных на основе онтологий мы будем рассматривать именно язык SPARQL, так как он является фактическим стандартом и специально спроектирован для унифицирующей модели данных RDF, а также предполагает совместное использование с языком веб-онтологий OWL.
В то же время использование полного набора конструкций SPARQL в контексте рассматриваемой задачи может привести к ее неразрешимости. В дальнейшем нам понадобится рас-
сматривать более ограниченные языки запросов. В этой связи введем определение класса запросов SPARQL-BGP, допускающего только базисную форму запросов SPARQL - простой шаблон подграфа (Basic Graph Pattern, BGP [6]). Ограничивая возможности SPARQL поиском по таким шаблонам и выборкой значений соответствующих вершин RDF-графа, мы получим примерный аналог класса запросов SPJ (selection-projection-join) в реляционной модели данных, который является основой для построения алгоритмов планирования запросов в реляционных системах интеграции данных. Ниже приведен пример запроса из класса SPARQL-BGP, предназначенного для выборки информации о публикациях всех докторов наук в отделении математических наук (ОМН) за 2008 г. (определение синтаксиса SPARQL приведено в [6]):
prefix : <http://umeta.ru/...> select ?x, ?y where {
?x :academicDegree ?d.
?d :academicDegreeLevel
<urn:degree:doctorate>.
?x :worksFor ?o.
?o :superOrganization <urn:orgid:omn>.
?y :author ?x.
?y :year '2008'.
}
Формальным эквивалентом класса запросов SPARQL-BGP являются конъюнктивные запросы. Введем формальные определения для конъюнктивных запросов на выборку данных в контексте DL-онтологий, которые нам понадобятся в дальнейшем.
Конъюнктивным запросом Q(X) 4 над терминологией T, выраженной на языке дескриптивной логики L, называется формула Q(X) ^ B(X, Y), где B(X, Y) = Лг=1к pi(Zi) - тело запроса, представленное конечным числом конъюнктов. Переменные из вектора X называются свободными (различимыми) переменными, Y - экзистенциальными (неразличимыми) переменными. Конъюнкты pi, называемые предикатами, могут иметь форму C(a), где C - концепт в терминологии T либо R(a, b), где R - роль в терминологии T Параметры предикатов
могут быть переменными из X или Y либо константами (Z с X U Y U С, при этом X с Z\ U — U Z). Конъюнктивные запросы над L-терминологией будем обозначать CQ-L, запросы
в форме конечного объединения (дизъюнкции) таких конъюнктивных запросов - UCQ-L.
Рассмотренная форма запросов допускает указание в предикатах сложных концептов или ролей с помощью конструкторов дескриптивной логикой L. Конъюнктивные запросы относительно пустой терминологии, допускающие только атомарные концепты или роли в конъюнктах, будем обозначать CQ (их объединения - соответственно UCQ). Такие языки запросов будем называть реляционными. Реляционный язык конъюнктивных запросов, допускающий также конъюнкты в форме неравенств Z\ Ф Z2, будем обозначать CQ^ конечные объединения (дизъюнкции) таких запросов - WCQФ.
4 Здесь и ниже подчеркнутый символ обозначает вектор переменных или констант (конечный упорядоченный набор переменных или констант).
Множеством ответов на CQ-L запрос Q относительно интерпретации I называется
множество векторов констант t, такое, что при подстановке их вместо свободных переменных тела запроса, формула 3 Y B(t, Y) является истинной в I:
Q(I) ^ {t | I = 3YB(t, Y), t = (с\, ..., с„), с,- £ С}.
Когда t является ответом на запрос Q относительно интерпретации I (t £ Q(I)), будем также
писать I = Q(t).
Множеством ответов на CQ-L запрос Q относительно онтологии O = {7, A} называется множество векторов констант t, которые являются ответами на запрос Q относительно любой интерпретации I, являющейся моделью онтологии O:
Q(O) ^ {t | I = Q(t) VI £ Mo, t = (с\, ..., с„), с, £ С}.
Отметим, что приведенное определение существенно отличается от аналогичного определения для реляционной модели данных ввиду принципа «открытости» онтологий (open-world assumption). В отличие от реляционной базы данных, содержащей фиксированный набор данных, онтология может иметь множество моделей, каждая из которых представляет собой набор данных, совместимый с онтологией. Ответами же на запрос относительно онтологии считаются только такие факты, которые верны для всех совместимых с онтологией интерпретаций, т. е. которые неизбежно логически следуют из фактов и высказываний онтологии.
Математическая модель системы интеграции данных на основе онтологий
Формализуем математическую модель центральной системы интеграции данных на основе онтологий. Пусть задача заключается в исполнении согласованных распределенных запросов над т источниками данных {Д}\..т, которые представлены онтологиями {Од}\..т.
Система интеграции данных на основе онтологий 5 формально определяется нами как
У ^ {Or, {Од} 1 m, {F}\..m},
где Ог={7г, Аг} - глобальная онтология, выраженная на языке дескриптивной логики Lr
над алфавитом Nr (алфавит содержит символы, соответствующие всем концептам и ролям онтологии), будем считать, что онтология Ог выполнима (МОг Ф 0), а также
имеет пустое множество исходных фактов (Аг = 0);
{Од}\..т - конечное множество онтологий источников данных Од={7д, Ад}, каждая из которых выражена на языке дескриптивной логики LA над собственным алфавитом NA
(без ограничения общности принимаем все алфавиты взаимно непересекающимися), будем считать, что все онтологии Од выполнимы (МОА Ф 0);
{F}1m - конечное множество отображений F между Ог и множеством онтологий источников {Од}, задаваемых в общем случае в форме qA~ qr, где qr и qA - запросы на некотором языке QLf, сформулированные в терминах Ог и {Од} соответственно, а знак ^
обозначает один из операторов {с, з, =}; отображения в форме qA с qr называются
корректными, в форме qA з qr - полными, в форме qA = qr эквивалентными.
5 В дальнейшем систему интеграции данных на основе онтологий будем называть для краткости системой интеграции данных или просто ¥.
Будем говорить, что отображение qA^ qr определяет глобальные термины, если запрос qr относительно глобальной онтологии имеет форму A(a), где A - атомарный концепт в терминологии 7г, либо P(a, b), где P - атомарная роль в терминологии 7г, а и b - свободные переменные (запросы такой формы будем называть атомарными терминологическими). Такое отображение сопоставляет отдельному атомарному концепту или роли глобальной онтологии Ог запрос в терминах онтологий источников {Од}. Данный подход известен в литературе
как Global-as-view, GAV [1; 2; 12], система интеграции данных, допускающая только отображения в форме GAV, называется GAV-системой.
Аналогично, будем говорить, что отображение qA^ qr определяет локальные термины, если запрос qA относительно онтологий источников является атомарным терминологическим, то есть имеет форму A(a), где A - атомарный концепт в терминологии 7д, либо P(a, b), где P -
атомарная роль в терминологии 7Д, а и b - свободные переменные. Такое отображение сопоставляет отдельному атомарному концепту или роли онтологии источника Од запрос в терминах глобальной онтологии Ог. Данный подход известен в литературе как Local-as-view,
LAV [1-2; 11], система интеграции данных, допускающая только отображения в форме LAV, называется LAV-системой. Если же в системе интеграции данных допускаются отображения
произвольной формы qA^ qr, т. е. не ставится условие представления первого или второго запроса в атомарной терминологической форме, то такая система называется GLAV-системой (Global-local-as-view [1-2]).
Глобальной моделью для системы интеграции У будем называть интерпретацию I^ которая
является моделью для глобальной онтологии Ог (!г £ МОГ). Пусть Ои - онтология, полученная объединением онтологий источников, т. е. Ои = {идеУ ±д, идеУ Ад}. Будем говорить, что глобальная модель !г удовлетворяет корректному отображению F, заданному формулой qA с qr, если qA (Ои) с qr (!г), т. е. VX (X £ qA (Ои) ^ X £ qr (IГ)). Аналогично, Iг удовлетворяет полному отображению qA з qr, если qA (Ои) з qr (IГ), т. е. VX (X £ qr (IГ) ^ X £ qA (Ои)). Наконец, !г удовлетворяет эквивалентному отображению qA = qr, если qA (Ои) = qr (IГ), т. е. VX(X £ qA (Ои) ^X £ qr (IT)). Будем говорить, что глобальная модель !г корректна относительно У, если Iг удовлетворяет всем отображениям {F} в У.
Запросы к системе интеграции данных У формулируются на некотором языке запросов QLГ в терминах глобальной онтологии 7г, выраженной на языке дескриптивной логики Сг.
Множеством точных ответов на QLГ запрос Q относительно системы интеграции данных
У называется множество векторов констант t, которые являются ответами на запрос Q относительно любой корректной глобальной модели !г для У:
Q (У) = {t | Iг = Q(t) V^ £ МОг: !г корректна относительно У}.
Это определение по сути означает, что такие ответы логически следуют из фактов и высказываний онтологий источников, отображений, а также высказываний глобальной онтологии. Ответ является точным (является логическим следствием), если он имеет место в любой глобальной интерпретации, совместимой с высказываниями глобальной онтологии и отображениями ее в онтологии источников данных
В большинстве случаев вычисление множества точных ответов на основе логического вывода непосредственно над множествами фактов распределенных онтологий источников не-
приемлемо ввиду высокой сетевой нагрузки и низкой производительности, поэтому мы будем рассматривать смежную задачу, предполагающую предварительную переформулировку исходного запроса в отдельные запросы к источникам данных, которые могли бы быть исполнены непосредственно источниками. Результатом переформулировки запроса является так называемый логический план его распределенного исполнения - запрос, в котором используются исключительно термины онтологий источников. На основе логического плана запроса производится построение физического плана исполнения запроса, определяющего последовательность операций по извлечению данных из источников и их обработке. Вопрос построения физического плана исполнения запроса в данной статье не затрагивается.
Дадим формальные определения, связанные с переформулировкой запросов. Нам потребуются следующие определения содержимости и эквивалентности запросов. Будем говорить, что запрос Q1 содержится в запросе относительно системы интеграции данных на основе онтологий ¥, и обозначать это Ql Q2, если для любых корректных глобальных моделей Ъг
множество ответов на запрос Q1 содержится в множестве ответов на Q2, т. е. Q1(Ъr’) с Q2{ЪГ') УЪГ £ М0г такой, что Ъг корректна относительно ¥. Запросы Q1 и Q2 эквивалентны относительно ¥ ^1 =т Q2), если Ql Q2 и Q2 Ql.
Теперь рассмотрим виды переформулировок в системе интеграции данных на основе онтологий. Пусть Q - запрос на языке <0,СГ в терминах глобальной онтологии Ог. Запрос Q на
языке (над ^-терминологией) называется эквивалентной переформулировкой запроса Q
на основе системы интеграции данных ¥, если:
1) все концепты или роли, используемые в запросе Q', являются терминами онтологий источников Од системы интеграции данных ¥;
2) запрос Q' эквивалентен запросу Q относительно ¥ (@ =¥ Q).
Пусть Q - запрос на языке <0,СГ в терминах глобальной онтологии Ог. Запрос Q на языке (над ^-терминологией) называется максимальной переформулировкой запроса Q на основе системы интеграции данных ¥ относительно языка запросов <2,Сц, если:
1) все концепты или роли, используемые в запросе Q', являются терминами онтологий источников {Од} системы интеграции данных ¥;
2) запрос Q' содержится в запросе Q относительно ¥ (@ !=¥ Q);
3) не существует такого запроса Р на языке (над £д-терминологией), в котором все используемые концепты или роли являются терминами онтологий источников {Од} системы
интеграции данных ¥ такого, что Q Р и Р Q, но Q не эквивалентен запросу Р.
Если запрос Q удовлетворяет первым двум условиям, но не является максимальной переформулировкой, будем называть его просто переформулировкой. Переформулировку Q' запроса Q на основе системы интеграции данных ¥ будем называть точной относительно системы интеграции данных ¥, если множество ответов на запрос Q относительно объединения всех онтологий источников Оц={иде¥ 7Д, иде¥ Ад} совпадает с множеством точных ответов
на запрос Q относительно системы интеграции данных ¥: Q (Ои) = Q (¥).
Следует отметить, что одним из ключевых параметров задачи построения переформулировки является целевой язык переформулированного запроса, этот параметр непосредственно влияет на разрешимость задачи. Так, требуемая переформулировка может не существовать для некоторого ограниченного целевого языка и при этом существовать для более выразительного целевого языка. Отметим, что, в принципе, точная переформулировка запроса всегда возможна при условии, что на язык переформулированного запроса не накла-
дывается никаких ограничений и что задача ответа на исходный запрос относительно отдельной онтологии для используемого диалекта дескриптивной логики в принципе разрешима. Действительно, если в Я,Сц может быть заложено произвольное вычисление машины
Тьюринга, то такая машина может полностью произвести логический вывод на основе исходного запроса, терминологий и множеств фактов всех онтологий источников и выдать в качестве результата множество точных ответов на исходный запрос.
Анализ разрешимости задачи по переформулировке запросов
Рассмотрим условия, при которых возможна переформулировка запросов в системе интеграции данных на основе онтологий. Для того чтобы выявить случаи, в которых точная переформулировка исходного запроса невозможна, рассмотрим леммы, связывающие сложность вычисления множества ответов на запросы (далее также будем называть ее сложностью ответа на запросы) с фактом существования точной переформулировки.
Лемма 1. Пусть система интеграции данных ¥ такова, что в ней всегда возможна точная переформулировка запроса Q на языке <0,СГ над ^-терминологией в запрос на языке Я,СК
над ^-терминологией. В таком случае сложность ответа на 2£д-запросы над Сд-онтологиями относительно объема фактов онтологии |А| не ниже сложности вычисления множества точных ответов на 2Сг-запросы для системы интеграции данных ¥ относительно суммарного объема фактов всех источников в системе |иде¥ Ад|.
Лемма 2. Сложность вычисления множества точных ответов на запросы на языке <0,СГ над ^-терминологией в системе интеграции данных ¥, выраженная относительно суммарного объема фактов всех источников в системе |иде¥ Ад|, не ниже сложности ответа на запросы для языка <0,СГ над Сг-онтологиями относительно объема фактов онтологии |А|.
Лемма 3. Сложность ответа на конъюнктивные запросы С<0,-£, над онтологиями на языке дескриптивной логики С, выраженная относительно объема фактов онтологии |А| или объема терминологии |7|, не ниже сложности проверки принадлежности объекта к концепту, а также сложности проверки содержимости одного концепта в другом для дескриптивной логики С относительно |А| или |7| соответственно.
Таким образом, для возможности точной переформулировки, сложность ответа на запросы для языка Я,Ск переформулированных запросов над дескриптивной логикой Сд должна
быть не ниже аналогичной сложности вычисления точных ответов на 2Сг-запросы в системе
интеграции ¥, которая в свою очередь ограничена снизу сложностью ответа на 2Сг-запросы
над дескриптивной логикой Сг.
Эти простые леммы позволяют на основе анализа сложности ответов на запросы сделать выводы относительно невозможности точной переформулировки запросов для достаточно выразительных диалектов дескриптивной логики на недостаточно выразительных языках запросов, в том числе таких, которые могли бы быть напрямую транслированы в SQL.
Пусть QСГ = CQ-СГ, т. е. пользовательские запросы к системе интеграции данных на основе онтологий ¥ формулируются только в виде простых конъюнктивных запросов над дескриптивной логикой Сг (математический эквивалент введенного выше класса запросов
SPARQL-BGP). В реляционных LAV-системaх интеграции данных с корректными конъюнктивными отображениями схем всегда возможна максимальная переформулировка конъюнктивного запроса (CQ) в конечное объединение конъюнктивных запросов (ЯСО) в терминах
источников данных [8; 10]. Рассмотрим, для каких Сг в системе интеграции данных на основе онтологий ¥ возможна переформулировка СО-Сг запроса в реляционный ЯСО-запрос или
хотя бы в произвольную формулу реляционного исчисления.
Как известно, сложность вычисления для некоторого набора данных ответов на запрос, заданный формулой реляционного исчисления (в том числе ЯСО), относительно объема данных, лежит в классе СOQSVЛC£, т. е. ограничивается логарифмическим объемом памяти
относительно объема данных (см. [24]). Непосредственным следствием этого утверждения и приведенных лемм 1 и 2 является следующая теорема
Теорема 1. Пусть дана система интеграции данных на основе онтологий ¥ = {Ог, {Од},
{Т}}, где Ог выражена на диалекте дескриптивной логики Сг. В системе ¥ невозможна точная переформулировка СО-СГ запроса в формулу реляционного исчисления (в том числе конечное объединение конъюнктивных запросов ЯСО), если диалект дескриптивной логики Сг таков, что сложность ответа на СО-СГ запросы для онтологий на языке дескриптивной логики Сг относительно объема фактов онтологии |Л| лежит вне класса СOQSVЛC£.
В табл. 2 приведена информация о рассмотренных в литературе характеристиках вычислительной сложности типовых задач для ряда распространенных диалектов дескриптивной логики [24-27]. Для различных диалектов дескриптивной логики С приведена вычислительная сложность ответа на конъюнктивные запросы (СО-С), проверки принадлежности объекта к концепту (а £ С), проверки содержимости одного концепта в другом (С1 ЕО С2), а также
проверки выполнимости онтологии и выполнимости концепта. В столбцах таблицы приводятся характеристики вычислительной сложности от объема множества фактов онтологии |Л|, терминологии |7|, размера запроса ^| (для СО-С) и от |Л| + |7| + ^| в совокупности.
Таблица 2
Сопоставление вычислительной сложности задач для разных диалектов дескриптивной логики
Диалект С Сложность от объема данных |A| Сложность от размера терминологии | 7| Сложность от размера запроса ^| Совокупная сложность
Сложность ответа на конъюнктивный запрос (СО-С)
RDF Schema [20] COQSVAC8 eV Неизвестна Неизвестна
VC-Lit^ [18; 21-22] LOQSVACE eV ^"Р-полная ^Р-полная
EL++ [28] P-сложная Неизвестна Неизвестна Неизвестна
DLP [29] V-полная eEXVTIME еЕХРИМЕ еЕХРПМЕ
Продолжение табл. 2
Диалект C Сложность от объема данных |A| Сложность от размера терминологии |7| Сложность от размера запроса ^| Совокупная сложность
Hom-SUIQ [30] eP Неизвестна Неизвестна Неизвестна
SUIT(D) (OWL-Lite) co-NP-полная ЕХР71МЕ- полная е2ЕХР71МЕ £2ЕХР71МЕ
SUOINv) Разрешимость Разрешимость Разрешимость Разрешимость
(OWL-DL) неизвестна неизвестна неизвестна неизвестна
Сложность проверки п эинадлежности объекта к концепту (a e C)
RDF Schema eCOGSPACE eP - eP
DC-CiteA eCOGSPACE eP - eP
EC++ P-полная P-полная - P-полная
Hom-SUIQ P-полная EXPTIME- полная EXPTIME- полная
AC, ACN - P - P
ALE NP-сложная, co-NP-сложная NP-сложная, co-NP-сложная
ACR - NP -
ACU - 4 о о -
ACC - PSPACE - PSPACE
SUIT(D) (OWL-Lite) co-NP-полная EXPTIME- полная EXPTIME- полная
suoiNv) (OWL-DL) NP-сложная NEXPTIME- полная NEXPTIME- полная
Сложность проверки содержимости одного концепта в другом (С !=О С2)
RDF Schema COGSPACE eP - eP
DC-CiteA COGSPACE eP - eP
EC++ P-полная P-полная - P-полная
DLP P-полная eEXPTIME - eEXPTIME
Hom-SUIQ P-полная EXPTIME- полная EXPTIME- полная
AC, ACN - P - P
ACE - NP - NP
ACR - NP - NP
Окончание табл. 2
Диалект L Сложность от объема данных |A| Сложность от размера терминологии | Т| Сложность от размера запроса |Q| Совокупная сложность
ALU - со-МР - co-NV
ALC - РБРАСЕ - VSVACE
SHIF(D) (OWL-Lite) co-NV-полная ЕХРТ1МЕ- полная EXVTIME- полная
SHOIhfv) (OWL-DL) NV-сложная МЕХРТ1МЕ- полная NEXVTIME- полная
Сложность проверки выполнимости онтологии, выполнимости концепта
RDF Schema Тривиально Тривиально - Тривиально
DC-CiteA eLOQSVACE eV - eV
EC++ P-полная V-полная - V-полная
DLP V-полная eEXVTIME - eEXVTIME
Hom-SUIQ V-полная EXVTIME- полная EXVTIME- полная
AC, ACN - V - V
ACE - co-NV - co-NV
ACR - co-NV - co-NV
ACU - NV - NV
ACC - VSVACE - VSVACE
suit (D) (OWL-Lite) NV-полная EXVTIME- полная EXVTIME- полная
suoiNv) (OWL-DL) NV-сложная NEXVTIME- полная NEXVTIME- полная
* В таблице используются следующие обозначения классов сложности: СООБРАСЕ - разрешимо детерминированной машиной Тьюринга (ДМТ) с логарифмическим объемом памяти; Р - разрешимо ДМТ за полиномиальное время; МР - разрешимо за полиномиальное время недетерминированной машиной Тьюринга (НДМТ); со-МР -дополнение задачи лежит в классе МР (например, дополнением задачи содержимости концепта является несо-держимость концепта); РБРАСЕ - разрешимо ДМТ с полиномиальным объемом памяти; ЕХРТ1МЕ - разрешимо ДМТ за экспоненциальное время; МЕХРТ1МЕ - разрешимо НДМТ за экспоненциальное время; 2ЕХРТЕМЕ -разрешимо ДМТ за время 22рп\ Известно включение СООБРАСЕ с Р с МР с РБРАСЕ с ЕХРТ1МЕ с с МЕХРТ1МЕ с еЕХРЛМЕ. Полной в классе называется задача, к которой полиномиально сводимы ДМТ
все задачи класса. Сложной в классе называется задача, к которой полиномиально сводима ДМТ некоторая полная задача в классе.
Из теоремы 1 и приведенных характеристик следует, что даже диалект OWL-Lite (дескриптивная логика 3'НХ^Т>)) обладает слишком высокими выразительными способностями
для того, чтобы простейшие конъюнктивные запросы относительно OWL-Lite онтологии всегда можно было переформулировать в реляционное исчисление, т. е. в SQL (точнее, в то подмножество SQL, которое соответствует реляционному исчислению). Это означает невозможность в полной мере задействовать оптимизированные механизмы исполнения запросов современных реляционных СУБД в том случае, когда интегрируемые системой источники данных представлены, полностью или частично, реляционными базами данных (т. е. когда множества фактов Ад онтологий источников хранятся в реляционных базах данных). В то же
время возможность задействовать SQL для вычисления переформулированных запросов весьма принципиальна с практической точки зрения, поскольку это позволяет эффективно работать с большими объемами данных.
Переформулировка запросов для дескриптивной логики ОС-СИе
Наиболее выразительные языки дескриптивной логики, для которых сложность ответа на конъюнктивные запросы относительно объема данных все еще лежит в классе СООБРАСЕ,
принадлежат к семейству ОС-СШ [18; 21-22]. Детальный анализ показывает, что для языка
ОС-СИвк (см. определение выше) действительно можно предложить корректный алгоритм
переформулировки конъюнктивных запросов в реляционное исчисление (конкретнее, ЫСО),
и имеет место следующая теорема.
Теорема 2. Пусть система интеграции данных ¥ = {Ог, {0д}, {Т}} такова, что:
• глобальная онтология Ог={ТГ, Аг} выполнима и выражена на языке дескриптивной логики Сг = ОС-Си^1, причем Аг = 0;
• онтологии источников данных 0д={Тд, Ад} выполнимы и выражены на языке дескриптивной логики Сд = ОС-СИвк;
• отображения Т заданы в форме дд с дГ, где дд и дГ - конъюнктивные запросы над ОС-С/7ея-терминологиями {Тд} и Тг соответственно, т. е. рассматривается GLAV-системa с корректными СО-ОС-отображениями.
Пусть пользовательский запрос Q к системе ¥ задается в форме объединения конъюнктивных запросов ОСг = иСО-ОС-СИвк над терминологией Тг. Тогда всегда существует максимальная переформулировка запроса Q на основе системы интеграции данных ¥, представимая в виде объединения реляционных конъюнктивных запросов над терминологиями {Тд}
(на языке ОСк = ЫСО).
Вкратце рассмотрим основные принципы предлагаемого алгоритма 6 построения переформулированного запроса для рассматриваемого в теореме 2 класса систем интеграции данных. Предварительным условием является нормализация ОС-СИвк терминологии Тг исчерпывающим применением к аксиомам следующих правил нормализации (обозначения даны выше):
6 Подробная спецификация алгоритма переформулировки и исследование характеристик и сложности алгоритма приводится в диссертационной работе автора.
• CL Е С П С2 о CL Е Сь CL Е С2;
• CL Е 3Ra.C о CL Е 3Rn, Rn Е Ra, 3R%~ Е C, где Rn- новая абстрактная роль;
• 3R1 Е 3R2 о 3R1 Е Ап, Ап Е 3R2, где Ап - новый атомарный концепт;
• 3R Е —А о 3R1 Е Ап, Ап Е —А, где Ап - новый атомарный концепт;
• А Е —3R о А Е —Ап, 3R Е Ап, где Ап - новый атомарный концепт;
• 3R1 Е —3R2 о 3R1 Е Ап, Ап Е —Вп, 3R2 Е Вп, где Ап, Вп - новые атомарные концепты;
• А Е 3Ra~ о А Е 3Rn, Rn Е Ra~, где Rn - новая абстрактная роль;
• Raí Е Ra2~ о Ra1 Е Ra2;
• Raí Е —Ra2_ о Ra1 Е—Ra2;
• Ra1 Е Ra2~ о Ra1~ Е Ra2;
• Ra1 Е —Ra2_ о Ra1~ Е —Ra2;
• Ra1~ Е —Ra2 о Ra1~ Е R„, R„ Е —Ra2, где R„ - новая абстрактная роль.
После нормализации DL-LiteR терминология 7Г будет содержать только аксиомы в форме:
• А1 Е —А2, Ra1 Е —Ra2, Rd1 Е —Rd2 - непересекаемость атомарных концептов, ролей;
• А1 Е А2, Ra1 Е Ra2, Rd1 Е Rd2 - иерархия вложения атомарных концептов, ролей;
• Ra1_ Е Ra2 - определение обратной роли;
• 3R Е А - ограничение домена роли (определение концепта субъектов роли);
• 3Ra_ Е А - ограничение значений роли (определение концепта объектов роли);
• p(Rd) Е d - указание типа данных атрибута;
• А Е 3R - экзистенциальное ограничение.
Перейдем к рассмотрению этапов алгоритма переформулировки. На первом этапе алгоритма производится построение промежуточной переформулировки Q пользовательского запроса Q с учетом ограничений целостности глобальной онтологии, т. е. аксиом 7Г. Основная идея этапа заключается в том, чтобы «закодировать» в запрос необходимые аксиомы терминологии 7Г. Исходно ответ на запрос относительно онтологии предполагает предварительное поведение логического вывода на основе фактов онтологии и ее терминологических аксиом, в результате которого вычисляются производные факты. Предлагаемый алгоритм позволяет исключить необходимость проведения такого логического вывода, вместо этого переформулировав запрос таким образом, чтобы он учитывал все необходимые производные факты. По сути построение такого переформулированного запроса является своего рода логическим выводом относительно исходного запроса и аксиом терминологии.
Краткий листинг предлагаемого алгоритма переформулировки запроса относительно DL-
LiteR терминологии приводится ниже. Алгоритм производит построение альтернативных
формулировок запроса на основе аксиом терминологии исчерпывающим применением к запросу правил замены предикатов, приводимых в табл. 3. Помимо расширения запроса альтернативными формулировками алгоритм производит отсеивание пустых подзапросов, согласно аксиомам непересекаемости, и минимизацию запросов.
На следующем этапе вычисляется переформулировка Q" полученного запроса Q' относительно правил отображения qA с qr. Для этой цели может быть использован модифицированный Bucket-алгоритм или алгоритм обратных правил (см. [8]), используемые в реляционных системах интеграции данных. На третьем этапе алгоритма производится, при необходимости, переформулировка запроса Q" относительно терминологических аксиом 7д онтологий источников, задействованных в запросе. Эта операция аналогична этапу 1. На последнем этапе производится исключение избыточных операций и оптимизация запроса.
Таблица 3
Правила переформулировки запроса относительно '0£.-£.ИеЯ терминологии
Исходный предикат запроса Аксиома терминологии Заменяющий предикат
А(х) А 2 Е А А2(Х)
Я(х, У) Я2 Е Я Я2(х, у)
Я(х, У) Я{ Е Я Я2(у, х)
А(х) ЗЯ Е А Я(х, уп), где уП - новая экзистенциальная переменная запроса
А(х) ЗЯ~ Е А Я(уп, х), где уП - новая экзистенциальная переменная запроса
Я(х, у), где у - экзистенциальная переменная А Е ЗЯ А(х)
Алгоритм 1. Переформулировка запроса относительно DL-LiteR терминологии
Входные параметры: Q - запрос на языке ЫСО-ЪС-СИе11 Т- терминология на языке '0£.-£.іїеЯ Результат: Q' - запрос на языке иС<0,^С,-С,иЄ~
► Q' = Q
Цикл { // цикл поиска возможных переформулировок
Qврем : Q
Цикл V дизъюнкта д в Qвpем {
// переформулировка с учетом аксиом терминологии:
Цикл V конъюнкта р в д {
Цикл V аксиомы Т терминологии Т {
Если дляр и Т есть правило замены нар' (см. табл. 3){
д' := (д -р) лр' //заменить р нар' согласно правилу Q’ := Q' V д' /добавить в Q' переписанный дизъюнкт
}
}
} // конец цикла по конъюнктам Цикл V пары конъюнктов одинаковой «арности» р1, р2 в д {
// учет аксиом непересекаемости:
Если параметры предикатов рі и р2 идентичны (одинаковые переменные и константы) {
Цикл V аксиомы непересекаемости терминологии Тв форме і1 Е —2, где і1, ґ2 Є {А, Яа,
Я,} {
Если і1 сводимо к р1, а ґ2 к р2 (либо ^ к р2, ґ2 к р1) путем рекурсивного применения правил замены по табл. 3
Q' := ^ - д //убрать невыполнимый дизъюнкт
}
}
// минимизация запросов:
Если рь р2 представлены одним и тем же концептом или ролью, причем приравниванием переменных может быть достигнута полная идентичность конъюнктов Р1 и р2 {
д' := q -р2 //убрать дублирующий предикатр2
д' := геп_уаге(д') // переобозначить в q' переменные с учетом их приравнивания
для идентичности р\ и р2
Q' := ^ V д' // добавить в ^ переписанный дизъюнкт
}
} // конец цикла по конъюнктам } // конец цикла по дизъюнктам Если Q' = Qврем, прервать цикл // нет переформулировок } // конец цикла поиска переформулировок
Вернуть Q'<
В результате выполнения всех этапов алгоритма вычисляется максимальная переформулировка исходного UCQ-VL-LiteR запроса к системе интеграции ¥, представляющая собой
объединение конъюнктивных запросов (UCQ) к информационным источникам, в которых
используются исключительно термины онтологий источников. На основе переформулированного запроса производится построение физического плана исполнения запроса, определяющего последовательность операций по извлечению данных из источников и их обработке. Вопрос построения физического плана исполнения запроса в данной статье не затрагивается, здесь может быть непосредственно применена методика, используемая в реляционных системах интеграции данных.
Смежные работы
Задача ответа на запросы в системе интеграции данных, в том числе смежная задача ответа на запросы с использованием представлений (вариант для LAV-систем интеграции), в той или иной степени рассмотрена в литературе для различных моделей данных, включая реляционную модель данных, объектную модель данных, слабоструктурированные данные, XML, а также некоторые диалекты дескриптивной логики. При этом для разных моделей данных, разных языков запросов и разных механизмов отображения схем (спецификации представлений) для решения задачи используются существенно различные алгоритмы, и имеют место различные условия разрешимости задачи.
Наибольшее внимание рассматриваемая проблема получила в контексте реляционных баз данных, прежде всего в связи тем, что задача ответа на запросы с использованием представлений (LAV) непосредственно применима также к оптимизации запросов в реляционной СУБД с материализованными представлениями. В этом случае рассматривается возможность переформулировки исходного пользовательского запроса таким образом, чтобы снизить время его исполнения за счет использования предварительно подготовленных материализованных представлений.
Обзор основных работ, посвященных задаче ответа на запросы с использованием представлений (и переформулировки запросов с использованием представлений) в реляционной модели данных приведен в [8]. В этом обзоре рассматриваются также три алгоритма (Bucket-алгоритм, алгоритм обратных правил и алгоритм MiniCon), предназначенных для переформулировки конъюнктивных запросов (в том числе с арифметическими сравнениями) к отношениям глобальной реляционной схемы в объединение конъюнктивных запросов (UCQ) к
реляционным схемам источников данных, для конъюнктивных LAV-отображений. Эти алгоритмы были разработаны для первых систем интеграции данных: Bucket-алгоритм был реализован в системе Information Manifold [11], а алгоритм обратных правил - в системе
InfoMaster. В обзоре [8] приводится также перечень работ, рассматривающих расширение стандартной реляционной задачи переформулировки запросов с использованием представлений, в частности агрегацией в запросах или отображениях, ограничениями целостности (см. также [31; 32]), ограничениями доступа и пр. Кроме того, приводятся ссылки на результаты для других моделей данных, в том числе для слабоструктурированных данных.
В работе [10] приводятся характеристики вычислительной сложности ответа на запросы с использованием представлений в реляционной модели данных. Рассматриваются корректные (гд с qr) и эквивалентные (гд = qr) LAV-отображения, задаваемые конъюнктивными запросами CQ (в том числе с неравенствами CQf), их объединениями (UCQ), рекурсивными
Datalog-запросами или произвольными формулами реляционного исчисления. Аналогично рассматриваются различные формы пользовательских запросов к системе. Среди основных выводов: задача в принципе неразрешима, когда запросы либо отображения представлены произвольными формулами реляционного исчисления, а также неразрешима в ряде случаев при использовании рекурсивных представлений. Кроме того, задача трудноразрешима (co-NP) за
исключением случая корректных отображений, задаваемых конъюнктивными запросами CQ
(в том числе CQf), при формулировке пользовательских запросов на языках CQ, UCQ или
Datalog. Отсюда следует, в частности, что класс полиномиально разрешимых задач ответа на запросы даже в реляционных LAV-системах интеграции данных крайне ограничен.
Первая попытка рассмотреть задачу переформулировки запросов относительно LAV-системы интеграции данных в контексте дескриптивной логики была представлена в работе [13] (1997). В работе показывается, что максимальная переформулировка терминологических (задаваемых описанием концепта или ролью) запросов для дескриптивной логики ALN в
UCQ относительно корректных CQ-ALN отображений возможна только при наложении жестких ограничений на форму отображений (отсутствие экзистенциальных переменных), что неприемлемо на практике. Помимо этого, в [13] доказывается разрешимость более простой задачи, в которой пользовательские запросы, отображения и переформулировки задаются терминологическими запросами в дескриптивной логике ALCNR (т. е. описанием концепта
или ролью на языке ALCNR).
Задача чисто терминологической переформулировки для ALN и ALE также детально
рассмотрена в работе [33]. В работах [14-16] рассматривается переформулировка запросов относительно корректных терминологических отображений.
В [14] рассматривается GAV-система интеграции данных с ограничениями целостности, в которой пользовательские запросы формулируются на языке UCQ-ALN, а отображения задаются ALN-терминами (терминологическими запросами на языке ALN). Жесткое ограничение выразительных возможностей отображений принимается в связи с доказанной в [13] невозможностью максимальной переформулировки запросов для конъюнктивных отображений CQ-ALN. Примечательно, что в работе рассматривается также применение в онтологии
правил логического вывода (horn rules) помимо стандартных возможностей дескриптивной логики. Предложенный в статье [14] алгоритм был частично реализован в системе интеграции данных PICSEL.
В [15] приводится алгоритм максимальной UCQ-переформулировки CQ-ALE запросов в
LAV-системе интеграции данных относительно корректных терминологических отображений ALE. Также показывается, что при замене ALE на ALNE получить конечное число максимальных UCQ-переформулировок не всегда возможно.
Наконец, в работе [16] рассматривается LAV-система интеграции с терминологическими отображениями на собственном диалекте дескриптивной логики AL+ (расширение AL совмещением конструктора V с 3, при ограничении формы аксиом вложения концептов). Для такой системы приводится алгоритм точной переформулировки CQ-AL+ запросов в UCQ.
Относительно всех работ [13-16; 33] следует отметить, что с практической точки зрения терминологические запросы или отображения для АХ*-диалектов дескриптивной логики не
представляют интереса в контексте интеграции данных, поскольку реляционные конъюнктивные запросы имеют больше необходимых на практике выразительных возможностей. Ввод в систему интеграции данных конструкций дескриптивной логики при отказе от конъюнктивных запросов в отображениях не делает ее более выразительной, чем аналогичные реляционные системы интеграции данных, даже наоборот. Кроме того, сами по себе AL*-
диалекты дескриптивной логики являются устаревшими. Современные экспрессивные языки дескриптивной логики, в том числе положенные в основу языка веб-онтологий OWL, имеют существенно более высокие выразительные возможности, которые теперь являются неотъемлемой частью понятия онтологии. Прежде всего это касается различных характеристик ролей, их взаимосвязи, ролевых аксиом. В настоящей работе, напротив, делается попытка «обменять» проблемные конструкции AL* на более важные на практике выразительные
возможности современных диалектов дескриптивной логики. При этом делается выбор такого языка дескриптивной логики, для которого требуемая переформулировка запросов в системе интеграции данных будет возможна даже при использовании конъюнктивных отображений вместо терминологических. В итоге мы получаем сбалансированную по функциональным возможностям систему интеграции данных, вобравшую в себя допустимый максимум от реляционных систем интеграции данных и от дескриптивной логики при сохранении разрешимости задачи.
В работе [17] проводится теоретический анализ вычислительной сложности ответа на запросы в LAV-системе интеграции данных, в которой пользовательские запросы и отображения задаются объединениями конъюнктивных запросов над дескриптивной логикой DLR
(UCQ-DLR). DLR является экспрессивным диалектом дескриптивной логики, допускающим
и-арные отношения. Сложность рассматривается для корректных, полных и эквивалентных отображений. Показывается, что для корректных отображений задача проверки, принадлежит ли заданный кортеж множеству ответов на заданный запрос к системе, разрешима для UCQ-DLR запросов и отображений. Однако полученные результаты имеют исключительно
теоретический характер и, по замечанию автора работы, не ясно, как предложенная методика может быть использована на практике
Наиболее актуальные результаты, касающиеся ответа на запросы в системах интеграции данных с дескриптивной логикой, отражены в работах 2008 г. В работах [18; 19; 22] впервые рассматривается в этом контексте дескриптивная логика DL-Lite [21; 24], в которой предпринята попытка выделить максимальный LOGSPACE-разрешимый фрагмент OWL. DL-Lite
включает наиболее практически значимые для построения онтологий конструкции OWL и отбрасывает проблемные конструкции, приводящие к трудноразрешимости.
В работах [18; 22] рассматривается GAV-система интеграции данных на основе дескриптивной логики DL-LiteÄ, и показывается, что для корректных GAV-отображений возможно
раскрытие пользовательских UCQ-DL-LiteÄ запросов в формулы реляционного исчисления.
Предложенный алгоритм реализован в прототипе системы интеграции данных MASTRO-I. Однако в этих работах рассмотрена лишь достаточно простая задача раскрытия запросов относительно Global-as-view системы интеграции данных. GAV-отображения обладают определенными недостатками с практической точки зрения: термины глобальной схемы в GAV-
системе на практике выбираются «снизу вверх», т. е. отталкиваясь от терминов источников, и нуждаются в постоянном пересмотре при добавлении новых источников. Это приемлемо для интеграции фиксированного набора устаревших источников информации, но неприемлемо для построения «сверху вниз» крупной динамической интеграционной системы. В настоящей работе рассматривается Global-local-as-view система, лишенная указанных недостатков, и показывается возможность GLAV переформулировки UCQ-DL-LiteR запросов в
UCQ. Полученный в настоящей работе результат существенно расширяет сферу применения
дескриптивной логики в системах интеграции данных и впервые позволяет построить достаточно выразительную GLAV-систему интеграции данных, расширенную дескриптивной логикой.
Наконец, в работе [19] рассматривается теоретический вопрос определения вычислительной сложности ответа на конъюнктивные запросы относительно онтологий с использованием материализованных представлений. В частности, показывается, что сложность лежит в пределах LOQSVACE для DL-LiteR, и вне LOQSVACE для VL-LiteF’A. Для ALC, ALCQI, SHIQ
доказывается co-NP-полнота задачи. Система определений в [19] существенно отличается от
используемой в настоящей работе, поскольку рассматривается именно ответ на запросы с использованием материализованных представлений, а не система интеграции данных. Кроме того, в этой работе делается попытка рассматривать альтернативную семантику представлений, не имеющую отношения к системам интеграции данных.
Выводы
В настоящей работе формализована математическая модель системы интеграции данных на основе онтологий и рассмотрен выбор параметров задачи переформулировки запросов в такой системе.
Произведен выбор диалекта дескриптивной логики, для которого переформулировка запросов в системе возможна при использовании конъюнктивных отображений и запросов. В итоге впервые предложена сбалансированная по функциональным возможностям GLAV-система интеграции данных на основе онтологий, вобравшая в себя допустимый максимум от реляционных систем интеграции данных и от дескриптивной логики, при сохранении разрешимости задачи и предложен алгоритм переформулировки запросов в такой системе.
Областью непосредственного применения результатов работы является проект построения Единого научного информационного пространства РАН (ЕНИП РАН [34; 35]). Полученные результаты позволяют обеспечить динамическое исполнение распределенных запросов в среде ЕНИП РАН.
Список литературы
1. Halevy A. Y, Rajaraman A., Ordille J. Data Integration: The Teenage Years // Proc. of the 32nd International Conference on Very Large Data Bases (VLDB’06). N. Y.: ACM Press, 2006. P. 9-16.
2. Lenzerini M. Data Integration: A Theoretical Perspective // Proc. of the 21st ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems (PODS 2002). N. Y.: ACM Press, 2002. P. 233-246.
3. OWL Web Ontology Language, http://www.w3.org/TR/owl-features/
4. Baader F., Calvanese D., McGuinness D., Nardi D., Patel-Schneider P. F., The Description Logic Handbook: Theory, Implementation and Applications. Cambridge University Press, 2003.
5. RDF Primer, http://www.w3.org/TR/rdf-primer/
6. SPARQL Query Language for RDF, http://www.w3.org/TR/rdf-sparql-query/
7. Horrocks I., Sattler U. A Tableaux Decision Procedure for SHOIQ // J. of Automated Reasoning. 2007. Vol. 39. No. 3. P. 249-276.
8. Halevy A. Y. Answering Queries Using Views. A Survey // VLDB Journal: Very Large Data Bases. 2001. Vol. 10. No. 4. P. 270-294.
9. Ullman J. D. Information Integration Using Logical Views // Proc. of the 6th International Conference on Database Theory (ICDT’97): Lecture Notes in Computer Science. Berlin, Germany: Springer, 1997. Vol. 1186. P. 19-40.
10. Abiteboul S., Duschka O. Complexity of Answering Queries Using Materialized Views // Proc. of the 17th ACM SIGACT-SIGMOD-SIGART Conference on Principles of Database Systems (PODS’98). Seattle, WA, 1998. P. 254-265.
11. Levy A. Y, Rajaraman A, Ordille J. J. Querying Heterogeneous Information Sources Using Source Descriptions // Proc. of the International Conference on Very Large Databases (VLDB). N. Y.: ACM Press, 1996. P. 251-262.
12. Chawathe S., Garcia-Molina H, Hammer J, Ireland K., Papakonstantinou Y, Ullman J., Widom J., The TSIMMIS Project: Integration of Heterogeneous Information Sources // Proc. of IPSJ. Tokyo, 1994.
13. Beeri C, Levy A. Y, RoussetM.-C. Rewriting Queries Using Views in Description Logics // Proc. of the Sixteenth ACM SIG-SIGMOD-SIGART Symposium on Principles of Database Systems (PODS'97). N. Y.: ACM Press, 1997. P. 99-108.
14. Goasdoue F., Lattes V, Rousset M.-C. The Use of CARIN Language and Algorithms for Information Integration: The PICSEL Project // International Journal of Cooperative Information Systems (IJCIS). 2000. Vol. 9. No. 4. P. 383-401.
15. Goasdoue F., Rousset M.-C. Rewriting Conjunctive Queries Using Views in Description Logics with Existential Restrictions // Description Logics (DL 2000). Aachen, Germany, 2000. P.113-122.
16. Goasdoue F., Rousset M.-C. Answering Queries Using Views: a KRDB Perspective for the Semantic Web // ACM Journal - Transactions on Internet Technology (TOIT). 2004. Vol. 4. No. 3. P. 255-288.
17. Calvanese D, De Giacomo G., Lenzerini M. Answering Queries Using Views in Description Logics // Proc. of the 17th Nat. Conf. on Artificial Intelligence. AAAI 2000. P. 386-391.
18. Poggi A., Lembo D, Calvanese D, De Giacomo G., Lenzerini M., Rosati R. Linking data to ontologies // J. on Data Semantics. 2008. P. 133-173.
19. Calvanese D, De Giacomo G., Lenzerini M., Rosati R. View-Based Query Answering Over Description Logic Ontologies // Proc. of the 11th Int. Conf. on the Principles of Knowledge Representation and Reasoning (KR 2008). Berlin: Springer, 2008.
20. RDF Vocabulary Description Language 1.0: RDF Schema, http://www.w3.org/TR/rdf-schema/
21. Calvanese D, De Giacomo G., Lembo D, Lenzerini M., Rosati R. Tractable Reasoning and Efficient Query Answering in Description Logics: The DL-Lite Family // J. of Automated Reasoning. 2007. Vol. 39. No. 3. P. 385-429.
22. Calvanese D, De Giacomo G., Lembo D, Lenzerini M., Poggi A., Rosati R., Ruzzi M. Data Integration Through DL-LiteA Ontologies // Proc. of the Int. Workshop on Semantics in Data and Knowledge Bases (SDKB 2008): Lecture Notes in Computer Science. Berlin: Springer, 2008.
23. Patel-Schneider P. F., Horrocks I., Motik B. OWL 1.1 Web Ontology Language: Structural Specification and Functional-Style Syntax., eds., 2006. http://www.w3.org/2007/OWL/wiki/Syntax
24. Calvanese D, De Giacomo G., Lembo D, Lenzerini M., Rosati R., Data Complexity of Query Answering in Description Logics // Proc. of the 10th Int. Conf. on the Principles of Knowledge Representation and Reasoning (KR’06). Berlin: Springer, 2006. P. 260-270.
25. Tobies S. Complexity Results and Practical Algorithms for Logics in Knowledge Representation: Ph.D. Dissertation. Aachen, Germany, 2002.
26. Donini F. M, Lenzerini M., Nardi D, Schaerf A. Deduction in Concept Languages: From Subsumption to Instance Checking // J. Logic Computat. 1994. Vol. 4. No. 4. P. 423-452.
27. Grau B.C., OWL 1.1 Web Ontology Language Tractable Fragments. http://www.w3.org/ Submission/owl11-tractable/
28. Baader F., Brandt S., Lutz C. Pushing the EL Envelope // Proc. of the 19th Int. Joint Conf. on Artificial Intelligence (IJCAI 2005). San Francisco: Morgan Kaufmann, 2005. P. 364-369.
29. Grosof B., Volz R., Horrocks I. Decker S. Description Logic Programs: Combining Logic
Programs with Description Logics // Proc. of the 12th International World Wide Web Conference (WWW 2003). N. Y.: ACM Press, 2003.
30. Hustand U, Motik B, Sattler U, Data Complexity in Very Expressive Description Logics // Proc. of the 19th Joint Int. Conf. on Artificial Intelligence (IJCAI 2005). Menlo Park, CA: AAAI Press, 2005.
31. Gryz J. Query Rewriting Using Views in the Presence of Functional and Inclusion Dependencies // J. Information Systems. 1999. Vol. 24. No. 7. P. 597-612.
32. Call A, Lembo D, Rosati R. Query Rewriting and Answering under Constraints in Data Integration Systems // Proc. of the Eighteenth International Joint Conference on Artificial Intelligence (IJCAI 2003). Berlin: Springer, 2003. P. 16-21.
33. Baader F., Kusters R, Molitor R. Rewriting Concepts Using Terminologies // Proc. of the 17th International Conference on Knowledge Representation and Reasoning (KR 2000). San Francisco: Morgan Kaufmann Publishers, 2000. P. 297-308.
34. Бездушный А. А, Бездушный А. Н, Серебряков В. А, Филиппов В. И, Интеграция метаданных Единого научного информационного пространства РАН / Вычислительный Центр им. А. А. Дородницына РАН. М., 2006.
35. Бездушный А. А, Бездушный А. Н, Жижченко А. Б, Калёнов Н. Е, Кулагин М. В, Серебряков В. А. Предложения по наборам метаданных для научных информационных ресурсов ЕНИП РАН // 6 Всерос. конф. «Электронные библиотеки: перспективные методы и технологии, электронные коллекции» (RCDL’2004). Пущино, 2004. С. 277-284.
Материал поступил в редколлегию 20.05.2008
A. A. Bezdushny
Formal Model of Ontology-Based Data Integration Systems
The paper proposes a formal theory for ontology-based data integration systems, and considers the query rewriting problem for such class of data integration systems. A choice of appropriate description logic dialects and query languages is studied, provided that the rewriting problem is decidable. A query rewriting algorithm is proposed for an important class of ontology-based data integration systems.
Keywords: data integration, ontologies, description logics, OWL.