310 likes | 517 Views
Совместимость OWL и RIF КОМБИНАЦИИ ОНТОЛОГИЙ И ПРАВИЛ. М.К.Валиев (ИПМ РАН) М.И.Дехтярь (Тверской госуниверситет). ПЛАН. Необходимость комбинации онтологий и правил Два подхода к интеграции: однородный и гибридный Сценарии обмена правилами со ссылками на онтологии /RDF- графы
E N D
Совместимость OWL и RIF КОМБИНАЦИИ ОНТОЛОГИЙ И ПРАВИЛ М.К.Валиев (ИПМ РАН) М.И.Дехтярь (Тверской госуниверситет)
ПЛАН • Необходимость комбинации онтологий и правил • Два подходак интеграции: однородный и гибридный • Сценарии обмена правилами со ссылками на онтологии/RDF-графы • Синтаксис RIF+RDF/OWL • Семантика RIF+RDF: совместные интерпретации • Семантика RIF+OWL Full и RIF+OWL DL • Заключительные замечания
Для чего нужны комбинации? Онтологии : - Богатые средства описанияпредметной области - Ограниченные средства вывода следствий из имеющихся знаний Пример.Пусть в онтологии имеется информация, что Иван – отец Петра и Николая, Петр и Николай – мужчины и Михаил – брат Ивана (и другой информации о них нет). Как отсюда вывести, что Михаил – дядя Петра, Петр – сын Ивана и Петр с Николаем - братья? Первые две из этих задачрешаются в OWL2 довольно просто. В частности, в первом случае достаточно в онтологию ввести аксиому, что отношение «дядя» является композицией (property chain) отношений «отец» и «брат». Второй случай несколько сложнее, а третий вероятно вообще не имеет решения в рамках OWL2. В то же время все три задачи имеют очень простое единообразное решение, если в онтологиях допустить правила типа «если…, то…»
Языки правил - Специально построены для вывода следствий - Для эффективности поиска вывода обычно в основе языка лежат продукции или Хорновские правила, что сильно ограничивает описательные возможности языка. Комбинация онтологий и правил позволяет объединить достоинства подходов и обойти их недостатки. Пример (продолжение). Использование правила «если x – отец у, x – отец z, уи z – мужчины, то уи z – братья» совместно с вышеупомянутой онтологией позволяет вывести, что Петр и Николай –братья.
Однако синтаксис и семантика языковонтологий (в частности, OWL) и языков правил (в частности, RIF) довольно сильно отличаются, поэтому возникает вопрос, как их совмещать.
Однородный подход • Онтологии и правила используются на одинаковых правах, т.е. создается единый язык, в котором одни и те предикаты используются как для выражения онтологических утверждений, так и в формулировках правил (в частности, правила можно использовать для определения классов и свойств онтологии). • SWRL (Semantic Web Rules Language, OWL DL+Хорновы правила)
В этом случае проблема совместимости фактически исчезает: • Синтаксис общий • Интерпретации тоже общие, их только нужно распространить на правила, что делается достаточно стандартным образом.
Недостатки: • Совмещение в одном языке разных средств сильно затрудняет его реализацию: в частности, известно, что основные проблемы (выполнимость, следование) для SWRL неразрешимы (хотя разрешимы по отдельности для онтологической компоненты и компоненты правил). • Однородный подход часто неприменим, так как онтологии и системы правил могут строиться независимо разными специалистами.
Гибридный подход • Строго различаются обычные предикаты, которые определяются правилами (они могут участвовать как в условиях (антецедентах) правил, так и в их заключениях (головах)), и предикаты онтологий, которые используются как ограничения в условиях правил. • Вывод происходит путем взаимодействия отдельно реализуемых (существующих) программ вывода (reasoner) для правил и для онтологий. Гибридный подход развязывает строителей онтологий и систем правил друг от друга, но, к сожалению, также требуют дополнительных ограничений, чтобы гарантировать разрешимость основных проблем для комбинаций онтологий и систем правил (с разрешимыми проблемами).
Подход рабочей группы RIF В применении к RIF-BLD описан в документе «RIF RDF and OWL Compatibility» http://www.w3.org/TR/2010/REC-rif-rdf-owl-20100622/ Этот подход в чистом виде нельзя отнести ни к однородным, ни к гибридным. Хотя точное определение синтаксиса комбинаций отсутствует, по некоторым примерам видно,что предикаты из RDF/OWL могут быть как в теле так и голове правила.Однако RIF- и RDF/OWL-интерпретации определяются по отдельности и склеиваются по общей части. Неразрешимость основных проблем для комбинаций, используемых при таком подходе без дополнительных ограничений, сохраняется как в гибридном подходе.
Типичные сценарии совместного использования RDF/OWL 2 и RIF • Типичный сценарий использования RIF совместно с RDF/OWL состоит в обмене правилами, которые используют данные из RDF и/или OWL. У одного из партнеров A имеется язык правил, поддерживающий RDF-данные, он использует некоторую RDFS или OWL онтологию или расширяет RDF(S)/OWL. Aпосылает свои правила, используя RIF, возможно со ссылкой на соответствующий RDF-граф (или графы), партнеру B. Bполучает правила и восстанавливает RDF-граф(ы), на которые имеются ссылки. Эти правила транслируются во внутренний язык Bи обрабатываются вместе с RDF графами механизмом вывода (rule engine) B, поддерживающим RDF/OWL • Публикация системы правил со ссылками: один ко многим.
<RIF doc> serialize de-serial. Rules Rules Rules Rule system 1 Rule system 2 <XML doc> serialize de-serial. data Передача правил и данных (слайд из [Christian de Saint Marie. W3C rule interchange format, ILOG, 30 October 2008]) Application A Application B Data model (OWL, RDF-S, XML-S, XMI, …) Data Data
Еще один сценарий • Обмен наборами правил, расщиряющих OWL. В этом сценарии публикатор правил намеревается расширить правилами некоторую OWL онтологию. Партнер по обмену A имеет язык правил, расширяющих OWL. A разбивает описание своего набора онтология + правила на отдельные описания OWL онтологии и RIF-документа, публикует OWL онтологию и посылает (или публикует) RIF-документ, содержащий ссылку на эту OWL онтологию. Потребитель правил извлекает OWL онтологию и транслирует ее вместе с документом в совместное описание пары онтология + правила в своем собственном расширении OWL правилами.
Синтаксис RIF+RDF/OWL • Комбинация:RIF-документ R и RDF-графы u1,… un. R содержит директивы импорта вида import(<ui>,<pi>). Предикаты из ui импортируются в R c использованием так называемого профиля pi, который, грубо говоря, указывает, какой из шести вариантов семантик используется при интерпретации графа ui (не все графы могут интерпретироваться во всех шести вариантах). • Профили: Simple, RDF, RDFS, D,OWL Direct, OWL RDF-based.
Тройки RDF переходят в RIF как фрейм-формулы • Пример: RDF-граф с тройками ex:john ex:brotherOf ex:jack . ex:jack ex:parentOf ex:mary . иRIF-документ с правилом Forall ?x ?y ?z (?x[ex:uncleOf -> ?z] :- And(?x[ex:brotherOf -> ?y] ?y[ex:parentOf -> ?z])) RDF-тройка ex:john ex:brotherOf ex:jack отображается в RIF как фрейм-формула ex:john[ex:brotherOf -> ex:jack] (аналогично для parentOf) Отсюдаследует RIF-формула ex:john[ex:uncleOf -> ex:mary], котораяв RDF становитсятройкой ex:john ex:uncleOf ex:mary
Пустые вершины • Пустые вершины в RDF соответствуют переменным с квантором существования, такую можно унифицировать в теле RIF-правила с некоторой переменной ?x, и если ?x входит в голову, то после применения правила получаем эту переменную с квантором существования • Пример: RDF-граф с тройкой _:x ex:hasName "John" . и RIF-документ с правилами Forall ?x ?y (?x[rdf:type -> ex:named]:- ?x[ex:hasName ->?y] ) Forall ?x ?y ( <http://a>[<http://p> -> ?y] :- ?x[ex:hasName -> ?y] ) • Из первого правила получаем RIF-формулу Exists ?z (?z[rdf:type -> ex:named]) и RDF-тройку _:y rdf:type ex:named . • Из второго правила получаем RIF-формулу <http://a>[<http://p> -> "John"] и RDF_тройку <http://a> <http://p> "John"
Коллизия с константами • Множества констант у RIF и RDF несколько отличаются Например, константе"literal string" из RDF в RIF соответствует "literal string@"^^rdf:PlainLiteral. Поэтому из пустого RIF-документа и графа с RDF-тройкой <http://a> <http://p> "abc" следует RIF-формула <http://a>[<http://p> -> "abc"^^xs:string] (т.е. при обратном переходе тройка <http://a> <http://p> "abc"^^xs:string).
Семантика комбинаций (все должно быть согласовано) Семантика определяется в терминах совместных (common) моделей для RIF и RDF/OWL. RDF: Простая интерпретация ( Simpleinterpretation) словаря V - это набор • I=< IR, IP, IEXT, IS, IL, LV >, где • IR – непустое множество ресурсов (область интерпретации), • IP – множество свойств, • IEXT – функция расширения, которая отображает IP в множество подмножеств IR × IR, • IS – это отображение из множества IRI из V в объединение IR и IP, • IL – это отображение типизированных литералов из V в IR, • LV – это множество значений литералов, являющееся подмножеством IR и включающее все простые литералы. RDF-, RDFS- и D-интерпретации –это простые интерпретации, удовлетворяющие дополнительным условиям.
RIF-интерпретация(без списков, для упрощения) Семантика RIF-BLD задается через семантическую структуру I, которая представляет собой набор вида <TV, DTS, D, Dind, Dfunc, IC, IV, IF, INF, Iframe, Isub, Iisa, I=, Iexternal, Itruth>. Совместимость комбинации RIF-RDF связана только с компонентами DTS, D, IC, IV, Ilist, Itail, Iframe, Isub, Iisa, и Itruth. Остальныекомпонентынеиспользуютсяприопределениикомбинаций. • Пусть Const – множество символов констант и Var – множество символов переменных из RIF. • DTS – это множество типов данных, с которыми связаны идентификаторы типов данных, • D– это некоторое множество (область), • Dind – непустое подмножество D, • Dfunc – непустое подмножество D, • IC – это отображение из констант в Dтакое, что константы в позициях индивидов (individual position) отображаются в Dind , а константы в позициях функций отображаются в Dfunc, • IV – это отображение из Var в Dind, • Iframe – это отображение из Dind в функции вида SetOfFiniteBags(Dind × Dind) → D, • Isub – это отображение из Dind × Dind в D, • Iisa – это отображение из Dind × Dind в D, and • Itruth – это отображение из D в TV.
Совместная интерпретация (без списков и импорта других RIF-документов) • Пара (Î, I), где Î -- это RIF-интерпретация, I – простая интерпретация словаря V. Для этой пары выполнено 8 условий: 1. (IR union IP) = Dind; Т.е. объединение ресурсов и свойств в точности соответствует области RIF (если I является RDF-, RDFS- или D интерпретацией, то IP входит в IR и IR=Dind. 2. IP содержит все такие k из Dind, для которых существуют a, b из Dind, что Itruth(Iframe(a)(k,b))=t; Множество RDF-свойств по крайней мере содержит все элементы, которые используются как свойства во фреймах области RIF. 3 LV содержит объединение всех пространств значений (value spaces) всех рассматриваемых типов данных (datatypes); Все конкретные значения из Dind входят также и в LV (по определению Dind содержит пространства значений всех рассматриваемых типов данных) 4. IEXT(k) = {(a, b) | a, b и k изDindиItruth(Iframeme(a)(k,b))=t}; Т.е. RDF-тройкиинтерпретируютсятакжекаксоответствующиефрейм-формулы.
Продолжение 5. IS(i) = IC(<i>) для каждого IRI i из VU; Т.е. все IRI интерпретируются одинаково в RDF и RIF. 6. IL((s, d)) = IC("s"^^d) для каждого правильно типизированного литерала( well-typed literal) (s, d) из VTL; Т.е. все типизированные идентификаторы интерпретируются одинаково. 7. IEXT(IS(rdf:type)) = { (a, b) изDind × Dind | Itruth(Iisa(a,b))=t}; Типизация в RDF соответствует типизации в RIF, т.е. тройка a rdf:type b истиннаутверждение a # b истинно. 8.EXT(IS(rdfs:subClassOf)) содержит множество всех пар (a, b) из Dind × Dind , для которых Itruth(Isub(a,b))=t; Для всякого истинного в RIF утверждения о подклассах соответствующее утверждение о подклассах из RDF также истинно, т.е., a rdfs:subClassOf b истинно, если a ## b истинно.
Выполнимостьимодели • RIF-RDF комбинацияC=< R, S > выполняется на совместной RIF-RDF-интерпретации (Î, I) , если Î является моделью R и каждый RDF-граф Sиз Sвыполняется на I. В этом случае (Î, I) называется RIF-простой(Simple)-моделью или просто моделью C, а C является выполнимой (совместной). • Обобщенный RDF-граф Sвыполняется на (Î, I) , если он выполняется на I. • Формула условия φ выполняется на (Î, I), если TValÎ(φ)=t. • Выполнимость для комбинаций RIF-RDF-, RIF-RDFS- и RIF-RIF-D- определяется аналогично, с помощью добавления соответствующих ограничений на I.
Логическое (семантическое) следование • Определяется обычным образом: Пусть C – это комбинация RIF-RDF, S – обобщенный RDF-граф, φ - формула условия и D – это отображение типов данных, согласованное с множеством рассматриваемых типов данных. C RIF-D-влечет (entails)S (или SRIF-D следует изC) , если Sвыполняется на каждой RIF-D-модели C. Аналогично, C RIF-D-влечет φ, если φ выполняется на каждой RIF-D-модели C • Понятия логического следования для комбинацийRIF-Simple-, RIF-RDF- и RIF-RDFS- определяются аналогично.
RIF-OWL комбинации • Синтаксис определяется аналогично RIF+RDF: RIF-документ и несколько импортируемых онтологий. Семантика тоже в целом следует такому же принципу построения общих интерпретаций, но имеются некоторые серьезные различия в рассмотрении RIF+OWL Full и RIF+OWL DL.
Причины различия • В OWL Full (так же как и в RDF) свойстваявляются такими же объектами как остальные, поэтому их интерпретация определяется в два шага: IS сопоставляет свойству p некоторый элемент области интерпретации, которому IEXT в свою очередь сопоставляет множество пар.
OWL DL • Свойства отделены от ресурсов и им дается прямая (в духе логики первого порядка) интерпретация в виде множества пар. • Чтобы соотнести смысл фреймовых формул RIF со смыслом OWL DL утверждений, приходится несколько изменить интерпретацию фреймовых формул и ввести для них некоторые синтаксические ограничения на использование переменных в фреймовых формулах, формулах вхождения в класс и формулах подклассов.
Cемантика на основе RDF для RIF-OWL Full • Строится как простое обобщение семантики для RIF+RDF: такие же совместные интерпретации, но имеются дополнительные ограничения на интерпретацию словаря (Vocabulary).
Прямая семантика для RIF-OWL DL • Модифицируется семантика RIF-формул (фреймовых, вхождения в класс и подклассов). Для этого в RIF-интерпретации I изменяются интерпретации отображений Isub IIca Iframe так, чтобы формулы s[rdf:type->o] и s#o интерпретировались как вхождение s в множество, в которое отображается o, а формулы s[p->o], где p – не rdf:type, как вхождение пары (s,o) в бинарное отношение, в которое отображается p.
Совместная прямая интерпретация для RIF+OWL2 DL • Это пара (I,J), где I – RIF-интерпретация, модифицированная как сказано выше, а J – интерпретация для ОWL2 DL. Эта пара должна удовлетворять десяти условиям взаимного согласования, которые аналогичны условиям для совместных RIF+RDF-интерпретаций. • Понятия модели и следования определяются обычным образом.
Конформность RIF-OWL • Определяется обычным образом через понятия преобразований RIF+OWL-комбинаций в язык L процессора и обратно, сохраняющих отношение логического следования.
Новый семантический Веб-стек(слайд взят из [I.Herman.Semantic Web Adoptions and Applications]