СЕМАНТИЧЕСКИЙ ВЕБ: ОТ ИДЕИ - К ТЕХНОЛОГИИ

                                  

Дмитрий ЛАНДЭ

За чуть более чем 10 лет своего существования Web настолько развился, что близок к состоянию "переполнения", как это ни парадоксально звучит.

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

В результате, во-первых, возникает проблема нахождения необходимой пользователю информации в любом виде - объемы Web-пространства не позволяют оперативно обновлять базы данных информационно-поисковых систем (не говоря уже о невозможности достижения 100-процентного охвата), а во-вторых в автоматизированном режиме практически невозможно выделить смысл информационных сообщений, например, по названию какой-либо конкретной статьи, представленной в Internet, можно найти сотни ссылок на эту статью, в массиве которых сама статья теряется.

Поэтому дальнейшее развитие Internet многие ученые связывают с концепцией Семантического Web (Semantic Web), которая во многом благодаря унификации обмена данными предположительно даст возможность интегрировать в Internet даже объекты реального мира. Концепцию Семантического Web выдвинул Тим Бернерс-Ли, один из основоположников Worl-Wide Web и председатель WWW-консорциума (W3C) на международной конференции XML-2000, прошедшей в 2000 году в Вашингтоне.

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

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

По определению консорциума W3C Семантический Web представляет собой расширение существующей сети Internet, в котором информация представляется в четком и определенном смысловом значении, дающем возможность людям и компьютерам работать с более высокой степенью взаимопонимания и согласованности. Семантический Web предусматривает объединение разнообразных видов информации в единую структуру, где каждому смысловому элементу данных будет соответствовать специальный синтаксический блок (тэг). Тэги должны составлять единую иерархическую структуру, на основе которой и должен функционировать Семантический Web. По словам Бернерса-Ли, в рамках проекта "Семантический Web" разрабатываются языки для выражения информации в форме, доступной для машинной обработки, на которых можно будет описывать как данные, так и принципы трактования этих данных. Это должно привести к тому, что правила выводов, существующие в какой-либо одной системе представления знаний, будут передаваться по сети другим подобным системам. В процессе реализации концепции Семантического Web получили широкое развитие синтаксические методы представления информации языковыми средствами XML и его дополнений, предназначенных для описания типовых свойств элементов XML- документов, их структуры и семантики: рекомендации W3C, регламентирующие DTD (Document Type Definition), XML Schema, XQuery (язык запросов к базам XML-данных) и т.д.

Другая ветвь Семантического Web связана с направлениями, близкими к области искусственного интеллекта, и названа онтологическим подходом. Этот подход включает в себя средства аннотирования документов, которыми могли бы воспользоваться компьютерные программы - Web-сервисы и агенты при обработке сложных пользовательских запросов.

Структура семантического Web

Итак, Семантический Web можно представить как симбиоз двух направлений, первое из которых охватывает языки представления данных. На сегодняшний день основными такими языками являются Расширяемый Язык Разметки XML (eXtensible Markup Language) и Средства Описания Ресурсов RDF (Resource Description Framework). Существует также ряд других форматов, однако XML и RDF предоставляют больше возможностей, потому они обладают статусом рекомендаций W3C.

Второе, концептуальное направление несет в себе теоретическое представление о моделях предметных областей. Такие модели предметных обласей в терминологии Семантического Web называются онтологиями. 10 февраля 2004 года консорциумом W3C была утверждена и опубликована спецификация языка сетевых онтологий OWL (Web Ontology Language).

Таким образом, две ветви Семантического Web используют три ключевых языка (соответственно, технологий):
- спецификация XML, позволяющая определить синтаксис и структуру документов;
- механизм описания ресурсов RDF, обеспечивающий модель кодирования для значений, определенных в онтологии.
- язык онтологий OWL, позволяющий определять понятия и отношения между ними. Семантический Web использует также и другие языки, технологии и концепции, в частности, универсальные идентификаторы ресурсов, цифровые подписи, системы логического вывода и т. д.

Список основных действующих рекомендаций W3C, связанных с Семантическим Web

- XML (www.w3c.org/XML) обеспечивает синтаксис для структурированных документов, но не налагает никаких семантических ограничений на содержание этих документов
- XML Schema (www.w3c.org/XML/Schema) определяет структуру документов XML, а также дополняет XML конкретными типами данных.
- RDF (www.w3c.org/TR/2002/WD-rdf-concepts-20021108) позволяет описать модель данных для ресурсов и отношения между ними, обеспечивает простую семантику для этой моделей данных, представляя их в синтаксисе XML.
- RDF Schema (www.w3c.org/TR/2002/WD-rdf-schema-20021112) предоставляет средства для описания свойств и классов RDF-ресурсов, а также семантику для иерархий-обобщений таких свойств и классов.
- OWL (http://www.w3.org/TR/owl-features/) расширенные возможности описания свойств и классов.


Если говорить о логических уровнях, на которых базируется технология Семантического Web, то самый нижний уровень - это Universal Resource Identifier (URI), унифицированный идентификатор, определяющий способ записи адреса произвольного ресурса. Семантический Web, именуя всякое понятие просто с помощью URI- идентификатора, дает возможность каждому выражать те понятия, которыми он пользуется. Типичными примерами URI-идентификаторов являются URL-адреса, однако URI-идентификатор задавая или ссылаясь на некоторый ресурс, не обязательно при этом указывает на его местонахождение в Internet.

Следующий уровень - язык XML как базовая форма разметки и средства, предназначенные для определения и описания классов XML-документов (DTD, XML- схемы). Отдельный уровень в концепции Семантического Web ориентирован на работу с цифровой подписью, которая необходима, чтобы клиенты могли определять степень достоверности данных.

На базе XML кроме того развертываются средства описания ресурсов RDF и RDF- схемы, объясняющие, как состыковывать XML-данные в сети и строить каталоги и словари понятий. RDF позволяет выполнять поиск необходимых понятий в Семантическом Web.

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

XML - синтаксическая основа Семантического Web

Первым специализированным инструментом Семантического Web, оказался язык XML (еХtensible Markup Language), отнесенный в итоговом рейтинге компании IDG за 2001 год к числу главных технологических достижений, способных изменить в ближайшие годы весь компьютерный мир.

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

Исходная версия XML, разработанная в консорциуме W3C под руководством Джона Босака, была опубликована в феврале 1998 г. и с тех пор развилась до уровня метаязыка, на базе которого определяются сотни новых предметно-ориентированных языков (к примеру, MathML, XLink, SMIL, XSL и др.)

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

Язык XML позволяет создавать свои собственные тэги - скрытые метки, которыми можно снабжать Web-страницы или разделы текста на страницах для описания их информационного наполнения. Например, тег <идентификатор> содержание </идентификатор>, который пользователь затем должен наполнить актуальной информацией, например: <DateOfBirth> 30-09-1987 </DateOfBirth>. Такой подход применим практически для всех областей, например, библиотекари могли бы определить собственные теги для обмена данными о книгах, в частности, <ISBN>, <Author> (<Автор>), <Price> (<Цена>) и т.д., а затем сохранить эти определения в некоторых схемах. После чего XML-ориентированные библиографические программы смогут автоматически обрабатывать такие документы. При этом XML, на самом деле, "не понимает" и не "розъясняет" содержания документов. Компьютерные программы могут использовать XML-теги, но при этом в программах должно быть на алгоритмическом уровне заложено "понимание" их назначения.

Поскольку в XML не существует фиксированного словаря тегов, то они могут определяться независимо для каждой программы. В XML это было изначально предусмотрено с помощью определения типа документа DTD (Document Type Definitions), накладывающего ограничения на используемые теги и задающегот грамматику, которая указывает допустимые комбинации и вложения имен тегов, имен атрибутов и т.д. Сегодня практически в каждой отрасли знаний имеется свой, постоянно расширяющийся список DTD. В XML применяется два вида указания на DTD:
- декларации внутренних подмножеств DTD-определений, помещаемых посредственно в XML-документ. При этом команду определение DTD заключается в квадратные скобки, например: <!DOCTYPE rootElement [declarations]>;
- ссылки на внешние DTD-определения, например, <!DOCTYPE wml PUBLIC "- //WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

Указание PUBLIC во втором случае свидетельствует о том, что DTD является общедоступным описанием, в частности стандартом языка WML.

Язык DTD позволяет определить логическую структуру документа, т.е.:
- указывать порядок следования элементов;
- определять вложенность элементов;
- устанавливать количество возможных элементов;
- устанавливать типы атрибутов;
- определять сущности и нотации.

Вместе с тем, языку DTD присущи два серьезных недостатка - ограниченность описания типов данных и синтаксис, отличный от XML. Поэтому в настоящее время консорциум W3C настоятельно рекомендует заменять использование DTD новым стандартом - XML-схем (XML Schema), который был утвержден в 2001 году (http://www.w3.org/TR/xmlschema-formal/).

Ведущие производители программного обеспечения во всем мире приняли концепцию XML-схем и внедрили ее в своих продуктах. Так корпорация Microsoft предоставила в доступ на условиях бесплатного лицензирования схемв Microsoft Office 2003 XML разработчикам. В настоящее время по адресу www.microsoft.com/office/xml/default.mspx доступны XML-схемы:
- SpreadsheetML для Microsoft Office Excel 2003;
- FormTemplate Schemas для Microsoft Office InfoPath 2003;
- WordprocessingML для Microsoft Office Word 2003;
- DataDiagramingML для Microsoft Office Visio 2003.

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

Еще одно безусловное преимущество XML заключается в использовании им современного стандарта кодировки символов Unicode, который позволяет комбинировать тексты, написанные на всех основных языках мира (в том числе, имеется поддержка кириллицы), в одном документе. Тем самым XML дает возможность с легкостью обмениваться информацией вне национальных границ.

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

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

Средства описания ресурсов RDF

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

Принцип построения отношений между сетевыми ресурсами в спецификации RDF предусматривает наличие трех компонент - объекта, атрибута и значения (аналогичных классической схеме "подлежащее - сказуемое - дополнение"). Каждому элементу данной цепочки (триплета) присваивается идентификатор (URI), с помощью которого при указании одного из звеньев можно автоматически восстановить всю цепочку в целом. Из триплетов языка RDF могут формироваться сети из взаимосвязанных объектов. Поскольку RDF использует URI-идентификаторы для кодирования информации в документе, это обеспечивает то, что каждое понятие будет привязано к единому определению, которое можно найти в Сети.

Базовый строительный блок в RDF - тройка "объект - атрибут - значение" часто записывают в виде A(O,V), где О - объект, А - атрибут со значением V. RDF позволяет менять местами объекты и значения.

Изначально в RDF используется синтаксис языка XML и URI-идентификаторы для указания объектов, понятий, свойств и отношений. Однако существуют и другие формы RDF-описаний, например, в виде наборов троек:

hasName
('http://dwl.visti.net', "Dmitry Lande")
authorOf
('http://dwl.visti.net/', 'ISBN5845907640')
hasPrice
('ISBN5845907640', "$8").

Кроме того, RDF допускает форму представления, в которой любое выражение RDF в триплете может быть объектом или значением, т. е. это позволяет указать, что данный объект имеет определенный тип, к примеру, что "ISBN5845907640" - это rdf:type book, за счет указания на определение book в схеме RDF:

<rdf:Description about="www.book.net/ISBN5845907640">
<rdf:type rdf:resource="http://description.org/schema/#book">
</rdf:Description>

Спецификации RDF обеспечивают поддержку тегов, позволяющих определять практически любые понятия (например, в электронной коммерции можно пользоваться такими тегами, как "Price" и "Invoice", которым приписать значения цены и счета, соответственно).

Информационные ресурсы описываются с помощью совокупности терминов. Семантика, смысл самих терминов и словарей терминов, фиксируется с помощью глобальных универсальных имен URI. В RDF предусмотрен словарь терминов, называемый RDF-схемой, который определяет, какие термины могут быть использованы в RDF- утверждениях о свойствах ресурсов, представляет иерархию понятий предметной области, описывает характеристики каждого из терминов.

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

Онтологии

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

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

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

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

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

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

Такая интеллектуальная программа, интерпретирующая онтологии, сможет вывести, например, что если Корнелльский Университет находится в г. Итака, который расположен в штате Нью-Йорк, который, в свою очередь, есть часть США, то адрес этого университета следует писать в американском формате.

Разработка языка описания структурированных онтологий OWL стало в последнее время одним из наиболее важных звеньев работ по Семантическому Web, проводимых консорциумом W3C. В конце 2001 года для этой цели в составе W3C была учреждена специальная рабочая группа - Web Ontology Working Group. 10 февраля 2004 года WWW- Консорциум присвоил языку OWL статус рекомендованной к реализации технологии. В рамках OWL онтология - это совокупность утверждений, задающих отношения между понятиями и определяющих логические правила для рассуждений о них. Компьютеры могут "понимать" смысл семантических данных на Web-страницах, следуя по гиперссылкам, ведущим на онтологические ресурсы. Онтология может включать описания классов, свойств и их примеры (индивиды).

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

На практике создание онтологий начинается с иерархии классов понятий, составляющих предметную область. Фундаментальным таксономическим конструктором для классов является rdfs:subClassOf. Он связывает более частный класс с более общим классом. Если X - подкласс Y, то каждый представитель X - также представитель Y. Отношение rdfs:subClassOf является транзитивным. Если X - подкласс Y, и Y - подкласс Z, то X - подкласс Z. Ниже приведены описания классов и подклассов, заимствованные из рекомендаций W3C и связанные с предметной областью - виноделием.

<owl:Class rdf:ID="Напиток">
<rdfs:subClassOf rdf:resource="#ПродуктПитания" />
...
</owl:Class>

В данном примере Напиток определен как подкласс класса ПродуктПитания. Ниже дано упрощенное определение для класса Вино, которое является Напитком:

<owl:Class rdf:ID="Вино">
<rdfs:subClassOf rdf:resource="Напиток"/>
<rdfs:label xml:lang="en">wine</rdfs:label>
<rdfs:label xml:lang="ru">вино</rdfs:label>
<rdfs:label xml:lang="fr">vin</rdfs:label>
...
</owl:Class>

Конкретный объект в OWL прийнято называть индивидом. В примере ВиноградКабернеСовиньон - это индивид, потому что обозначает один конкретный сорт винограда:

<owl:Class rdf:ID="ВинныйВиноград">
<rdfs:subClassOf rdf:resource="&food;Виноград" />
</owl:Class>

<ВинныйВиноград rdf:ID="ВиноградКабернеСовиньон" />

В OWL существует множество способов ограничения отношений. Например, можно определить домен и диапазон, - так свойство может быть определено как подсвойство (специализация) уже существующего свойства.

<owl:ObjectProperty rdf:ID="сделаноИзВинограда">
<rdfs:domain rdf:resource="#Вино"/>
<rdfs:range rdf:resource="#Виноград"/>
</owl:ObjectProperty>

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

По словам Тима Бернерса-Ли в пресс-релизе W3C, RDF и OWL - это серьезный шаг и весьма мощная база для приложений Семантического Web. Утверждение этих стандартов как рекомендованных W3-консорциумом подоспело вовремя. Сегодня открывается новая фаза Internet как информационного пространства. Эта фаза началась с того момента, когда проект Семантический Web начал свою работу.

Знания

Проект Семантический Web предполагает создание системы с элементами "искусственного интеллекта", которая бы позволила специальным приложениям качественно искать в Internet необходимую информацию, а также обмениваться информацией друг с другом. При этом именно язык онтологий OWL выступил решающей компонентой интеллектуализации, базисом для построения семантических сетей. Необходимо отметить, что впервые теория семантических сетей родилась в середине годах прошлого века и была ориентирована на задачи искусственного интеллекта, в частности, машинного перевода. Знания в теории семантических сетей представлялись в виде узлов, соединенных дугами, каждая из которых определяла тип отношения. Семантический Web по сути является реализацией идеи искусственного интеллекта, однако данный термин не очень популярен ввиду большого количества неудачных проектов в этой области, поэтому понятие "семантическая сеть" сегодня вызывает настороженность. Вместе с тем, Web онтологии по сути представляют собой настоящую базу знаний, одну из концептуальных основ искусственного интеллекта.

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

Агенты

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

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

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

В Семантическом Web агенту вовсе не обязательно обладать искусственным интеллектом, а просто реализовать четкий алгоритм при работе с базой знаний онтологий. Предполагается, что вся семантика будет заложена в Web-страницу автором, который с этой целью будет использовать стандартное программное обеспечение для написания страниц Семантическом Web.

Предполагается, что эффективность программных агентов в Семантическом Web будет расти по мере увеличения количества доступного им Web-контента и автоматизиро- ванных сервисов (включая других агентов). С другой стороны, даже те агенты, которые не были созданы специально для совместной работы, могут передавать информацию между собой.

В языке OWL имеется ряд возможностей, уже существовавших в языках подобного назначения, например, в DARPA Agent Markup Language (DAML, язык общения автономных агентов), предложенный военным научным агентством DARPA для автоматизации управления сложными объектами.

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

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

Обнаружение сервисов

В настоящее время существует множество автоматизированных Web-сервисов, построенных без учета возможностей Семантического Web. При этом автоматически обнаружить в сети подобную программу далеко не просто. Гарантированное обнаружение сервисов станет возможным лишь после того, как широко распространится унифицированный язык, позволяющий описывать сервисы, с тем чтобы соответствующие программные агенты могли "понимать", что позволяет делать данный сервис и каким образом им пользоваться.

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

Вне Семантического Web сегодня доступны некоторые схемы обнаружения сервисов. Так, например, Universal Plug and Play фирмы Microsoft решает проблему подключения различных типов устройств, а система Jini компании Sun Microsystems предназначена для соединения сервисов. В Семантическом Web обнаружение сервисов должно быть более гибким - Web-сервисы и агенты могут достичь "взаимопонимания" путем обмена онтоло- гиями, содержащими необходимые для общения терминологические словари. Более того, агенты смогут даже, находя новые онтологии, совершенствовать свои алгоритмы. С по- мощью семантических механизмов также станет проще обнаруживать сервисы, которые лишь частично отвечают критерию поиска.

Идеология систем "интеллектуальных агентов" вполне укладывается в существующие сегодня технологии CORBA, EJB, .NET и др. Агенты создаются прежде всего на Java как наиболее распространенном языке сетевого программирования, к тому же не зависящем от платформы.

Самый большой из известных открытых проектов по развитию Java-агентов - Cougaar (cougaar.org/projects/ cougaar/), позволяет создавать масштабные распределенные интеллектуальные комплексы планирования действий, отличающиеся высокой устойчивостью при работе в быстро меняющихся сетевых условиях.

В 2003 г. DARPA открыло пятилетнюю программу- Perceptive Assistant that Learns (PAL) с бюджетом 29 млн. долл. В соответствии с этой программой предполагается создание интеллектуальных помощников, способных динамически обучаться при общении с человеком и накапливать знания о конкретной предметной области. Обладая навыками самонастройки и высокой адаптации, PAL-агенты обучаются управлению доступными ресурсами и расстановке приоритетов при выполнении множества задач, а также взаимодействуют друг с другом.

Еще одна известная работа DARPA в этой сфере - CoABS (http://coabs.globalinfotek.com), объединяющая кластеры пользователей (людей и программы) с общими интересами. Она основана на проекте Массачусетского технологического института Yenta (www.media.mit.edu/people/foner/Yenta/overview.html), ориентированного на использование агентов при решении управляющих, информационных и логических задач.

Среди свободно доступных и постоянно развивающихся систем для создания Java- агентов и систем онтологий можно назвать и такие:

Protigi-2000 (http://protege.stanford.edu) - проект Станфордского университета, насчитывающий почти 18 тыс. пользователей.

JTP (Java Theorem Prover, www.ksl.stanford.edu/software/JTP/) - объектно- ориентированная система логического вывода;

AGLET (www.trl.ibm.com/aglets/) - проект научного подразделения корпорации IBM по созданию аглетов, или мобильных агентов, самостоятельно перемещающихся по сети.

OAA (Open Agent Architecture, www.openagent.com) - создаваемая компанией SRI International архитектура программирования, обеспечивающая динамическое взаимодействие программ в гетерогенных сетях для решения одной задачи.

Семантический Web не отменяет полезности Web-сервисов, а дополняет их. Однако, в то время, как задача большинства современных Web-сервисов - обеспечить коммуникацию между приложениями, Семантический Web решает более сложную проблему - повысить ценность информации, которую можно найти в Internet. Сделать это можно, построив сеть, которая логически состоит не из разрозненных документов, а из описаний реальных объектов и их взаимоотношений с другими объектами.

Реализации Семантического Web

Уже сегодня практически все известные компании уровня IBM, Adobe или Sun Microsystems, активно используют технологию Семантического Web в своих продуктах для решения задач управления данными.

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

В Европе ведется проект, подобный Семантическому Web, - "Сеть знаний", Knowledge Web (http://kw.dia.fi.upm.es/semanticportal/jsp/frames.jsp). Эта сеть ориентирована на нужды информационных технологий в промышленности, науке и образовании, а Семантический Web (поддерживаемый и в Европе - SWAD-Europe, www.w3.org/ 2001/sw/Europe/) больше рассчитан на электронную коммерцию и упрощение работы пользователей сети Интернет.

Недавно в рамках идеологии Семантического Web была разработана в School of Electronics & Computer Science (ECS) Университета Саутгемптона была разработана система mSpace. Программное обеспечение этой системы представляет собой набор мощных инструментов, позволяющих собирать данные из различных источников и организовывать информацию по категориям и дающих возможность пользователю свободно ориентироваться в ней.

Разработчики приводят следующий пример. Например, если в Google набрать "классическая музыка", то поисковик выдаст ссылки на сайты, так или иначе касающиеся классической музыки. Если же искать "классическую музыку" на mSpace, то будет выдан список композиций, которые можно тут же скачать. Другой пример - по запросу "Гарри Поттер" пользователь получит не просто набор ссылок, а отсортированный отчет, в котором часть ссылок будет лежать в графе "фильмы", другая часть - в колонке "книги", а третья - в колонке "рецензии". Семантический Web предоставит пользователю возможность выбирать, в каком направлении исследовать информацию, а не просто выдавать самое релевантное по общему алгоритму.

Перспективы

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

Семантический Web обещает вполне ощутимые преимущества, дополнительные сервисы. Навигация в Сети станет более осмысленной, а поиск - более точным. Сами пользователи смогут создавать страницы Семантического Web, давать собственные определения и вводить новые правила вывода, используя стандартное для этой сети программное обеспечение.

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

В настоящее время на Семантический Web работает множество научных подразделений по всему миру, совершенствуя и разрабатывая нове протоколы, технологи, среды программирования, агентовы, языки, пользовательские интерфейсы, методы распределенного поиска знаний. Прогнозируется, что работоспособная глобальная версия Семантической сети появится уже в этом десятилетии. О реальности этого прогноза свидетельствует публикация и утверждение WWW-консорциумом в феврале 2004 года финальных версий двух основных спецификаций Семантического Web. Это пересмотренная версия RDF (в нее добавлены описания тестов, позволяющие приложениям на разных языках программирования понимать друг друга, а также средства стыковки RDF и XML) и OWL.

В заключение назовем лишь некоторые из множества событий, происшедших за год, прошедший со "дня рождения" Семантического Web:

10 февраля 2004 г. - Консорциум W3C публикует ключевые компоненты глобального проекта Семантического Web: рекомендации RDF и Web Ontology Language (OWL). Многие эксперты считают эту дату официальным днем рождения Семантической Сети.

2 августа 2004 г. - Рабочая группа Semantic Web Best Practices and Deployment издала первую версию спецификации значений OWL, состоящую из двух частей: "набор значений" и "распределение значений". В спецификации представлен обширный набор различных элементов языка OWL, причем авторы предлагают всем заинтересованным лицам и организациям включаться в процесс доработки и пополнения этого набора.

22 ноября 2004 г. вышел в свет еще один комплект документации, посвященной технологиям Семантического Web. Рекомендации OWL-S: Semantic Markup for Web Services посвящены созданию онтологий и применению языка OWL как элемента Web- служб для автоматизации процессов компоновки, исследования, активизации и мониторинга ресурсов Сети.

Уроженец Великобритании, изобретатель World Wide Web Тим Бернерс-Ли (Tim Berners-Lee), который сейчас живет в США, в 2004 году за это свое изобретение получил от королевы Великобритании Елизаветы II рыцарский титул. В апреле 2004 года за это же изобретение сэр Тим Бернерс-Ли стал первым лауреатом новой премии Millennium Technology Prize, денежный эквивалент которой составляет 1 млн евро. Кроме того, он признан "Величайшим Британцем 2004 года".

Тим Бернерс-Ли закончил Королевский Колледж Оксфордского Университета, после чего поступил на работу в CERN (Европейский Центр Исследований Элементарных Частиц). Там в 1980 г. он написал программу Enquire, предназначенную для хранения информации, в которой использовались случайно устанавливаемые связи и которая стала предтечей WWW. Позднее в 1989 году он ввел термин Web и создал язык гипертекстовой разметки HTML. Затем в 1990 году появились первый HTTP-сервер и первый Web-браузер. Всемирная паутина WWW, как система доступа к информации, начала работать в 1991 г.

В 1994 г. Бернерс-Ли, в то время сотрудник Массачусетского технологического института (США), основал и возглавил некоммерческую организацию консорциум World Wide Web Consortium (W3C), которая занимается техническими проблемами развития и функционирования Web.

В настоящее время Тим Бернерс-Ли возглавляет разработку концепции Семантического Web.


 Статьи автора, обобщенные в книге 

Поле боя - семантика
Сегодня информационные ресурсы Сети составляют свыше десятка миллиардов документов (Web-страниц), к которым возможен свободный доступ любого пользователя. Естественно, для того, чтобы найти необходимую информацию и этой крупнейшей распределенной полнотекстовой базе данных необходимо использовать самые мощные ИПС. Такие системы существуют и конкурируют друг с другом на современном рынке информационных технологий.
Подробнее >>

Text Mining
Попытки анализа больших объемов неструктурированных или слабо структурированных данных очень часто усложняют процесс принятия решений. Если широкий спектр поисковых систем достаточно легко справляется с "простым" полнотекстовым поиском, то для подобного анализа нужны технологии совсем другого типа, представленные системами добычи знаний.
Подробнее >>

Новостной Интернет
Для решения задачи синдикации новостей было создано несколько форматов описания данных на основе XML. Самый распространенный формат получил название RSS, что означает Really Simple Syndication, Rich Site Summary, хотя изначально он назывался RDF Site Summary. Смысл всех этих аббревиатур заключается в простом способе обобщения и распределения информационного наполнения Web-сайтов - синдикации контента.
Подробнее >>

Система InfoStream®

При непосредственном участии автора и под его научным руководством в ElVisti создана система InfoStream®, с помощью которой охватываются новости из тысяч Web-сайтов, осуществляется их обработка и обобщение. Сервисы, построенные на основе Infostream, обеспечивают пользователям одновременный доступа в режиме поиска к информации из многих Web-сайтов, предоставляют возможность смысловой обработки и, вследствие этого, минимизацию усилий на получение необходимых данных из Интернет.

Методическое пособие


P e к л а м a: