Семантический Веб: роль XML и RDF

 

Source: http://classweb.gmu.edu/kersch/infs770/Semantic_Web_16_2/Semantic%20Web.pdf

STEFAN DECKER AND SERGEY MELNIK, FRANK VAN HARMELEN, DIETER FENSEL, AND MICHEL KLEIN, JEEN BROEKSTRA, MICHAEL ERDMANN, IAN HORROCKS



Феномен World Wide Web стал возможен потому, что набор широко распространенных стандартов гарантирует интероперабельность на различных уровнях. До недавних пор Web была ориентирована на обработку человеком, но Web следующего поколения, которую Тим Бернерс-Ли и его коллеги называют Semantic Web, должна быть рассчитана на машинную обработку информации [1].

Формирование Semantic Web будет возможным только при условии обеспечения высокого уровня интероперабельности. Стандарты должны быть определенны не только для синтаксической формы документов, но и для их семантического наполнения. Среди последних усилий по стандартизации предпринятых консорциумом W3C инициатив, стали XML и RDF, которые поддерживают семантическую совместимость.

В статье обяъсняется роль онтологий в архитектуре Semantic Web. Кратко рассказывается об основных элементах XML и RDF. Показывается, почему, используя XML в качестве инструмента для семантической совместимости будет неэффективным в долгосрочной перспективе.

Онтологии: описание концепций предметной области

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

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

Онтология, как правило, содержит иерархию концепций предметной области и описывает важные свойства каждой концепции с помощью механизма «атрибут — значение». Связи между концепциями могут быть описаны с помощью дополнительных логических утверждений. Наконец, константы (такие как «Январь») сопоставляются одной или нескольким концепциям (таким как «Месяц»).

В языке OIL онтологии содержат определения свойств (slot-def) и определения классов (class-def). Определения Slot-def описывают отношения между двумя объектами. Class-def связывает имя класса с его описанием и содержит ряд компонентов.

  • В качестве типа определения (definition type) может быть указано либо defined («определяемый»), либо primitive («примитивный»). Для типов defined класс полностью описывается в определении класса.
  • Ограничение свойства (slot constraint) указывает допустимые значения для свойства применительно к экземпляру класса.
  • Ограничение свойства (slot constraint) указывает допустимые значения для свойства применительно к экземпляру класса.

У ограничения свойства есть несколько компонентов.

  • Имя (name) — строка, называющая свойство, на которое накладывается ограничение.
  • Значение-типа (value-type) — список, состоящий из одного или нескольких выражений классов, которые представляют собой диапазон ограничений для свойства применительно к определяемому классу. Например, если класс имеет свойство eats («ест») при наличии ограничения свойства value-type animals («животные»), описываемые экземпляры класса «едят только животных».
  • Имеет-значение (has-value) — список, состоящий из одного или нескольких выражений классов, в которых все экземпляры класса, определенные посредством некоторого свойства, должны быть связаны этим свойством по крайней мере с одним экземпляром каждого выражения класса в списке. Например, если класс имеет свойство eats («ест») с ограничением свойства has-value zebra, wildebeest («зебра», «гну»), тогда каждый экземпляр нового класса «ест» по крайней мере один экземпляр класса «зебра» и один — класса «гну». Он может также «есть» экземпляры других классов, скажем, gazelle («газель»).

XML, и RDF вносят свой вклад в основы Semantic Web. RDF предлагает более адекватные механизмы применения языков представления онтологии, таких как OIL, для решения задачи семантической интероперабельности Web.

Грамматика XML

В отличие от языка HTML, создававшегося для гипертекстовых документов с фиксированной структурой, XML [3] предназначен для разметки документов произвольной структуры. XML-документы содержат сбалансированное дерево вложенных открывающих и закрывающих тегов, каждый из которых может включать в себя несколько пар «атрибут-значение». Поскольку фиксированного словаря тегов, и набора их допустимых комбинаций не существует, теги могут определяться независимо для каждого приложения. В XML 1.0 это делается с помощью определения типа документа DTD (document type definition), накладывающего ограничения на используемые теги и указывающего, каким образом должна быть организована их вложенность внутри документа. DTD задает грамматику, которая указывает допустимые комбинации и вложения имен тегов, имен атрибутов. В настоящее время W3C активно работает над тем, чтобы заменить DTD на определения XML Schema [4, 5].

В отличие от языка HTML, создававшегося для гипертекстовых документов с фиксированной структурой, XML [3] предназначен для разметки документов произвольной структуры. XML-документы содержат сбалансированное дерево вложенных открывающих и закрывающих тегов, каждый из которых может включать в себя несколько пар «атрибут-значение». Поскольку фиксированного словаря тегов, и набора их допустимых комбинаций не существует, теги могут определяться независимо для каждого приложения. В XML 1.0 это делается с помощью определения типа документа DTD (document type definition), накладывающего ограничения на используемые теги и указывающего, каким образом должна быть организована их вложенность внутри документа. DTD задает грамматику, которая указывает допустимые комбинации и вложения имен тегов, имен атрибутов. В настоящее время W3C активно работает над тем, чтобы заменить DTD на определения XML Schema [4, 5].

XML используется для целого ряда целей.

  • Представление синтаксиса для других языков разметки. Например, язык Synchronized Multimedia Integration Language (SMIL) [6].
  • Семантическая разметка Web-страниц. XML- может использоваться на Web-странице вместе с таблицей стилей XSL представления, которая отвечает за правильный вывод различных элементов [7].
  • Единый формат обмена данных. XML- может использоваться для передачи между двумя приложениями как объект данных.

DTD определяет только синтаксические соглашения; любая предполагаемая семантика находится вне сферы действия спецификации XML.

RDF: описание ресурсов

Resource Description Framework, рекомендация W3C, целью которого является стандартизация определений и использование метаданных, описывающих ресурсы Web [8], также хорошо подходит и для представления данных. Базовый строительный блок в RDF — триплет «объект — атрибут — значение», которую часто записывают в виде A(O,V). Что значит объект O имеет атрибут A со значением V. Также данная запись может пониматься как ребро с меткой A, соединяющее два узла, O и V: [O]-A—>[V]. Данная нотация весьма полезна, поскольку RDF позволяет менять местами объекты и значения. Таким образом, любой объект может играть роль значения, что в графическом представлении соответствует цепочке из двух ребер с метками. Граф на рис. 3, к примеру, представляет следующие три отношения в формате A(O,V):

hasName
(?http://www.w3.org/employee/id1321?,
«Jim Lerners»)
authorOf
(?http://www.w3.org/employee/id1321?,
 ?http://www.books.org/ISBN0012515866?)
hasPrice
(?http://www.books.org/ISBN0012515866?, «$62»).

RDF допускает форму представления, в которой любое выражение RDF в триплете может быть объектом или значением, т. е. графы могут быть как вложенными, так и линейными. В Web это позволяет нам, к примеру, выражать сомнение или согласие с выражениями, созданными другими людьми. Наконец, это позволяет указать, что данный объект имеет определенный тип, к примеру, что «ISBN0012515866» — это rdf:type book, путем создания дуги, указывающей на определение book в схеме RDF.

Цель RDF — предложить базовую модель данных «объект — атрибут — значение» для метаданных. Помимо этой предполагаемой семантики, описанной в стандарте лишь неформально, RDF не содержит каких-либо четких правил, ориентированных на моделирование данных. Также как и XML Schema используется для определения словаря, RDF Schema позволяет разработчикам определять конкретный словарь для данных RDF (такой, как authorOf) и указывать виды объектов, к которым могут применяться эти атрибуты [9]. Механизм RDF Schema предоставляет базовую систему типов для моделей RDF. Эта система типов использует некоторые предопределенные термины, такие как Class, subPropertyOf и subClassOf, для схемы, ориентированной на конкретное приложение. Выражения схемы RDF также являются корректными выражениями RDF (как выражения схемы XML, корректны выражениям XML). Объекты RDF можно определить как экземпляры одного или нескольких классов с помощью свойства type. Свойство subClassOf позволяет разработчику указывать иерархическую организацию таких классов, а subPropertyOf выполняет то же самое для свойств. Ограничения на свойства также могут быть указаны с помощью конструкций домена и диапазона, которые применяются как для расширения словаря, так и для предполагаемой интерпретации выражений RDF. Именно этот механизм мы и использовали для преобразования языка представления онтологий в RDF.

Представление знаний

Web стал средством обмена данными, поддерживающим связи «многие-ко-многим», и она предъявила новые требования к используемым форматам обмена.

  • Универсальная выразительная сила. Формат обмена на базе Web должен позволять представлять любой вид данных.
  • Синтаксическая интероперабельность. Приложения должны иметь возможность читать данные и получать представления, с которыми они могут работать.
  • Семантическая интероперабельность. Требований к формату обмена состоит в том, что данные должны быть понятными. Если синтаксическая интероперабельность неразрывна с синтаксическим разбором данных, то семантическая связана с установлением првильности условий терминов, что требует контент-анализ.

Использование XML

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

Минус XML состоит в том, что он лишь описывает грамматику. Выделить семантическую единицу в конкретной предметной области невозможно, т.к. XML ориентирован на структуру документа и не предполагает общей интерпретации данных, имеющихся в документе. Все выгоды использования XML сводятся лишь к возможности повторно использовать программные компоненты, выполняющие синтаксический разбор. Это, полезно, но такая ситуация предусматривает наличие между сторонами связи «один-к-одному» с заранее достигнутым соглашением. Для Web это решение не подходит, поскольку здесь требуется взаимодействовать с множеством клиентов, которые часто меняются. XML является полезным для обмена данными между приложениями, которые знают, что собой представляют эти данные, но не ситуациях, когда часто меняются клиенты. В Web постоянно появляются новые источники информации. Важно максимально уменьшить затраты на расширение круга клиентов, с которыми поддерживается связь. Определение соответствия одной модели предметной области другой — задача достаточно сложная, если они обе записаны в терминах DTD. Установить прямое соответствие по различным определениям DTD невозможно, поскольку задача состоит не в том, чтобы отобразить друг на друга грамматики, а в том, чтобы найти соответствие объектов и связей между предметными областями. Таким образом, необходимо восстановить исходные модели предметной области и определить соответствия между концепциями и отношениями. (В решении этой задачи часто оказываются полезными методы, разработанные в области инженерии знаний и исследований баз данных [12, 13]). Затем, необходимо выполнить еще один шаг и определив соответствие между двумя DTD. Что касается обмена XML-документами, соответствие предметных областей должно быть преобразовано с помощью процедур определения соответствия, таких как XSL Transformations (XSLT) для грамматик. Необходимо также предпринять дополнительные усилия, чтобы преобразовать «реконструированную» модель предметной области в XML DTD и сгенерировать процедуры соответствия для документов XML на основе установленного соответствия предметных областей. С помощью более проработанного подхода к передаче данных, нежели «чистый» XML, можно значительно сократить эти дополнительные усилия.

Использование RDF

Вложенные структуры «объект — атрибут — значение» в RDF удовлетворяют требованию поддержки универсальных выразительных возможностей для формата обмена, хотя, на первый взгляд, это совсем не очевидно. Также существуют синтаксические анализаторы RDF, не зависящие от приложения, поэтому RDF удовлетворяет требованию синтаксической совместимости. Что же касается семантической совместимости, то RDF значительно превосходит XML. Структура «объект — атрибут» предоставляет естественные семантические единицы, поскольку все объекты являются независимыми сущностями. Модель предметной области, определяющая объекты и отношения, может быть представлена в RDF естественным образом, поэтому этапы, на которых выполняется преобразование, необязательны в той степени, как это требуется в случае с XML. Чтобы установить соответствие между двумя описаниями RDF, можно непосредственно использовать методы, созданные в области исследования представления знаний. Конечно, это не решит полностью общую задачу поддержки интероперабельности при поиске сохраняющих семантику соответствий между объектами, но применение RDF для обмена данными позволяет повторно применять множество других программных компонентов помимо синтаксического анализатора, что предлагают все XML. Более того, модель RDF (и программное обеспечение, использующее модель RDF) по-прежнему будет применяться, даже если существующий сейчас синтаксис XML изменится или исчезнет, поскольку RDF описывает уровень, не зависящий от XML. В идеале хотелось бы получить универсальный язык представления знаний для поддержки Semantic Web, но в силу различных прагматических и технологических причин, на практике это недостижимо. Вместо этого придется работать с множеством представлений метаданных. RDF позволяет настолько широко использовать технологии представления знаний, насколько это поддерживают многообразные языки метаданных.

Расширение RDF

Три уровня систем представления знаний Брахмана[14].

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

Эпистемологический уровень, как правило, определяется грамматикой, которая указывает язык предметной области, но представления примитивов также могут рассматриваться и как онтология, т. е. как объекты конкретной предметной области. При таком подходе методики моделирования предметных областей оказываются весьма удобными для определения языка представления знаний. Таким образом, эпистемологический уровень — это онтология, которая определяет термины языка представления. Определить онтологию в RDF — значит определить схему RDF, которая указывает все концепции и взаимосвязи конкретного языка.

Направления исследований

Сообщество Web сейчас рассматривает язык XML как самый важный шаг к семантической интеграции, но на наш взгляд, в длительной перспективе это не так. Семантическая интероперабельность станет обязательным условием создания Semantic Web, но этого можно добиться за счет использования RDF, а не за счет разметки XML. Модель данных RDF весьма выразительна, и для ее расширения с целью обеспечения семантической совместимости можно напрямую использовать уже существующие подходы, от искусственного интеллекта до инженерии знаний.

Литература

[1] T. Berners-Lee, Weaving the Web, Harper, San Francisco, 1999

[2] I. Horrocks et al., «The Ontology Interchange Language OIL», tech. report, Free Univ. of Amsterdam, 2000; http://www.ontoknowledge.org/oil/

[3] T. Bray, J. Paoli, and C.M. Sperberg-McQueen, «Extensible Markup Language (XML) 1.0», W3C Recommendation, Feb. 1998; http://www.w3.org/TR/REC-xml

[4] H.S. Thompson et al., «XML Schema Part 1: Structures», W3C, work-in-progress, current as of Apr. 2000; http://www.w3.org/TR/2000/WD-xmlschema-1-20000407/

[5] P.V. Biron and A. Malhotra, «XML Schema Part 2: Datatypes», work-in-progress, current as of Apr. 2000; http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/

[6] P. Hoschka, «Synchronized Multimedia Integration Language (SMIL) 1.0 Spec.», W3C Recommendation, June 1998; http://www.w3.org/TR/REC-smil/
[7] J. Clark, «XSL Transformations (XSLT)», W3C Recommendation, Nov. 1999; в Web по адресу: http://www.w3.org/TR/xslt/
[8] O. Lassila and Ralph Swick, «Resource Description Framework (RDF) Model and Syntax Specification», W3C Rec-ommendation, Feb. 1999; http://www.w3.org/TR/REC-rdf-syntax/
[9] D. Brickley and R. Guha, «Resource Description Framework (RDF) Schema Specification,»W3C Candidate Recommendation, Mar. 2000; http://www.w3.org/TR/2000/CR-rdf-schema-20000327/
[10] M. Page-Jones and L.L. Constantine, Fundamentals of Object-Oriented Design in UML, Addison-Wesley-Longman, Reading, Mass., 1999
[11] R. Barker, Entity Relationship Modeling, Addison-Wesley, Boston, Mass., 1990
[12] J. Jannink et al., «An Algebra for Semantic Interoperation of Semistructured Data», Proc. IEEE Knowledge and Data Eng. Exchange Workshop, IEEE Computer Soc. Press, Los Alamitos, Calif., 1999 [13] D.L. McGuinness et al., «The Chimaera Ontology Environment», Proc. 17th Nat?l Conf. Artificial Intelligence (AAAI 2000), AAAI Press, Menlo Park, Calif., 2000
[14] R.J. Brachman, «On the Epistemological Status of Semantic Networks», in Associative Networks: Representations and Use of Knowledge by Computers, N.V. Findler, ed., Academic Press, 1979
[15] S. Melnik, H. Garcia-Molina, and A. Paepcke, «A Mediation Infrastructure for Digital Library Services», Proc. ACM Digital Libraries Conf., ACM Press, New York, 2000
[16] J. Broekstra et al., «OIL: A Case Study in Extending RDF-Schema», tech. report, Vrije Universiteit, Amsterdam, 2000; http://www.ontoknowledge.org/oil/