OWL - это логический язык для формального описания онтологий. Применительно к OWL под онтологиями понимаются иерархические структуры понятий (классов), связанных отношениями (свойствами). OWL предоставляет средства для логического описания семантики (т.е. смысла) понятий, благодаря чему последние могут согласованно использоваться как людьми, так и приложениями в различных информационных системах (Web-сайтах, базах данных, экспертных системах, системах поддержки принятия решений и т.д.).
Выражаясь неформально, OWL позволяет гарантировать, что в условиях высокой гетерогенности современных информационных систем (ИС), термины, объявленные в одной системе будут корректно интерпретированы в другой системе, причем независимо от технических особенностей систем и сценариев работы с ними. Важность подобной согласованности легко представить на примере двух медицинских ИС - электронных медицинских карточек и системы помощи в постановке диагнозов. Обе системы оперируют медицинскими терминами, в частности, симптомами, наименованиями болезней, тестов и медикаментов. При этом если "симптом Х", указанный в карточке пациента, будет неверно интерпретирован системой постановки диагноза, то последствия (как для пациента, так и для врача) могут оказаться самыми нежелательными.
OWL предоставляет данные возможности благодаря своим логическим основам, а именно, описательной логике (Description Logic или DL). Одним из ключевых преимуществ логики является формальная семантика (смысл) логических утверждений. Проще говоря, это означает, что семантика логический утверждений (или смысл понятий в OWL) не зависит от того, как, кем и в каком контексте они используются. Смысл описывает декларативным образом, не оставляя возможностей для неоднозначной интерпретации.
Рассмотрим пример описания термина НесчастныйРебенок в виде сын или дочь инженера и врача (заранее прошу прощения, если кому-то шутка покажется неуместной в современных реалиях!). Итак, налицо двусмысленность: кто-то скажет, что имеются в виду дети, у которых один родитель - врач, а другой - инженер, а кому-то покажется, что речь идет о детях, у которых хотя бы один родитель и врач и инженер одновременно. Это может вызвать улыбку, но если бы речь шла об описании специфических болезней, то некорректная интерпретация симптомов могла бы легко привести к неверному диагнозу.
OWL позволяет определить термин следующим образом: НесчастныйРебенок SubClassOf ребенок some (Инженер and Врач) (синтаксис будет рассматриваться ниже), что недвусмысленно означает, что один из родителей должен быть инженером и врачом одновременно (другой вариант тоже легко описывается, но несколько длиннее). Таким образом, все клиенты (пользователи или приложения), использующие корректные средства для работы с OWL, будут одинаково интерпретировать термины.
Варианты применения OWL весьма разнообразны, поэтому ниже приведены лишь наиболее классические сценарии. В целом, будучи языком представления знаний, OWL может быть полезен в любой информационной системе, которой требуется явное описание метаинформации (т.е. информации или знаний о структуре данных). При этом, чем сложнее и разнообразнее подобные знания, тем лучше подходит OWL для этой задачи.
Итак, на данный момент варианты применения OWL включают следующие:
Согласованное представление терминологии в медицине, химии и биоинформатике.
Эти области активно развиваются и непрекращающиеся исследования приводят к появлению все большего объема данных и знаний. При этом основная проблема заключается в том, что накапливаемые знания зачастую описываются неформальными образом и содержатся во множестве различных, неинтегрированных источников. Одной из актуальных проблем являются трудности в проверке согласованности результатов научных исследований. Например, разные исследовательские проекты могут прийти к заключениям, что "протеин Х взаимодействует с протеином Y при условии Z1" и "не взаимодействует при условии Z2". При этом автоматически проанализировать и сопоставить эти результаты можно только в том случае, если, в частности, термины "условия Z1 и Z2" описаны формально, скажем, в виде классов OWL. В этом случае несовместимость (disjointness) классов УсловияZ1 и УсловияZ2 будет означать полную согласованность результатов, включение УсловияZ1 в УсловияZ2 (или наоборот) — несогласованность (противоречивость) результатов, а отсутствие какого-либо отношения может говорить о том, что необходимо дополнительное исследование взаимодействия протеинов в случае, если условия Z1 и Z2 наблюдаются одновременно. Последний случай может служить примером того, как существующие знания могут использоваться для выбора направления исследований.
Интеграция гетерогенных информационных систем (в особенности баз данных)
Во многих областях наблюдается ситуация, при которой важная информация распределяется по множеству баз данных. Основная проблема заключается в том, что эти базы данных, как правило, создавались разными людьми, в разное время и с использованием разных технологий, поэтому схемы данных также оказываются весьма различными. В результате крайне осложняется задача интеграции данных, которая необходима, в частности, для прозрачного выполнения запросов над всеми имеющимися данными.
Онтологии в целом, и OWL в частности, могут использоваться в этой ситуации для формального описания и интеграции схем баз данных (тех самых метаданных). Это позволяет организовать дополнительный метауровень, который создает интегрированную картину данных для внешних клиентов. Таким образом, клиенты могут использовать запросы к интегрированному представлению данных, которые затем разделяются на части, выполняются над отдельными БД, после чего результаты вновь объединяются в соответствии с интеграцией схем.
К сожалению, насколько я знаю, полностью готовых решений на данный момент не существует, поэтому подобная метаинтеграция в каждом конкретном случае разрабатывается отдельно.
Описание расширенных классификаций для Web-порталов.
Web-порталы, обладающие богатым информационным содержимым, могут использовать онтологии OWL и SKOS для улучшения качества поиска и просмотра информации, а также упрощения сопровождения. Яркими примерами подобных порталов могут служить ebay.com, amazon.com, craigslist.org, gumtree.com и т. д., на которых продаются практически любые виды товаров. Описание модели информации (категорий товаров и связей между ними) имеет следующие преимущества:
Описание ограничений целостности данных
С некоторыми оговорками OWL может использоваться в качестве выразительного языка для ограничений целостности и валидации данных. Выше уже упоминалось, что OWL можно применять для описания и интеграции схем данных, но проверка ограничений целостности представляет собой отдельную задачу. Главным моментом здесь является то, что OWL изначально ориентирован на логический вывод новых знаний, а не на проверку целостности существующих данных. То же самое, кстати, относится и к RDFS. Разницу можно пояснить на следующем примере:
Person SubClassOf hasMother exactly 1 Woman
hasMother(John, Maria)
hasMother(John, Jessica)
Первая аксиома означает, что у любого человека есть одна и только одна мать, являющаяся женщиной. Следующие две аксиомы означают, что Мария и Джессика являются матерями Джона. Казалось бы, налицо нарушение ограничения целостности. Однако, с точки зрения семантики OWL здесь нет противоречия, но делается логический вывод, что Мария и Джессика являются одним и тем же человеком (другим логическим выводом является то, что обе они — женщины). Разумеется, если явно указать, что они — разные объекты (для этого в OWL есть специальная конструкция — owl:differentFrom), то противоречие будет выведено.
Тем не менее, поскольку ограничения целостности идут рука об руку с описанием схем (метаданных), то были созданы специальные решения, позволяющие использовать OWL для их описания. В частности, Pellet предоставляет специальное расширение для проверки данных на соответствие ограничениям целостности, описанным в виде аксиом OWL (оно было представлено на конференциях "Semantic Technologies 2009" и "OWL: Experience and Directions 2009"). Причем существует возможность использовать одни и те же онтологии, как для представления знаний, так и для валидации данных.
Задать вопрос по использованию OWL или предложить свои примеры использования OWL можно в разделе нашего форума Представление, извлечение знаний и вывод над ними
| Дерево категорий: |
Показано 8 страниц этой категории из 8.
"O |
PВЗ |
З (продолжение)НО |