Журнал Компьютерра - Журнал "Компьютерра" N741-742
Выводы о преимуществах и недостатках описанного подхода, а равно и перспективах его внедрения, оставим читателю в качестве домашнего задания.
(Редактор попытался начать выполнять "домашнее задание" и сразу столкнулся с вопросом: с чего бы агенту что-то отстегивать поставщику контента, если только мы не планируем вступать на шаткую землю "технологий защиты от копирования"?)
Подача в прыжкеЕсли попытаться дать простой ответ на прямой вопрос — побеждают ли идеи Семантического Веба? — то мы окажемся перед серьезным затруднением.
С одной стороны, разработанные инструменты — RDF как универсальный способ машиночитаемого описания данных, OWL как способ построения онтологий, SPARQL как способ запроса к этим данным и онтологиям — вполне себе заняли место в научных и смежных областях и стали стандартом де-факто. С другой стороны, в "мэйнстрим" эти технологии не спешат — а когда и прорываются, редко обходится без конфуза. Например, всем известный RSS — формат для описания обновлений сайтов и блогов, вполне себе семантическая штука, — изначально расшифровывался именно как RDF SiteSummary; завоевание им всеобщего признания казалось началом триумфального шествия Semantic Web по планете. Однако в результате некоторых противоречий и недопониманий на данный момент существует несколько разных RSS’ов (0.90, 0.91, 1.0,2.0), которые, даром что отличаются только номерами версий, имеют совершенно разную внутреннюю структуру и даже разную расшифровку аббревиатуры. Из этих форматов только 0.90 и 1.0 по-прежнему основаны на RDF. А RSS 0.91 (Rich Site Summary) и RSS 2.0 (Really Simple Syndication) — более простые форматы, не связанные с ключевыми технологиями Semantic Web. (Вдобавок существует еще и альтернативный и популярный формат Atom, тоже не имеющий с RDF ничего общего.)
Вообще говоря, превалирующим "сторонним взглядом" на перспективы идей Семантического Веба долгое время был абсолютный пессимизм и неприятие[Еще полтора года назад автор писал колонки на тему "почему Семан- тического Веба нет, не было, и не надо" — см.]. Причины, в общем, можно легко предпо ложить: среди всего разнообразия сайтов, созданных разнообразнейшими методами, руками авторов с разнообразнейшей квалификацией, трудно ожидать вспышки интереса к "правильной", осмысленной выдаче данных — тем более что выгоды каждого конкретного сайта/сервиса от собственной семантичности малоочевидны, а квалификации создателей не всегда хватает на семантически правильное использование элементов простого HTML, вроде заголовков и списков. Да и сама идея полной (или, по крайней мере, существенной) замены современного Веба Новым Вебом казалась утопией — при полном отсутствии так называемого killer app, привлекательного и общеполезного приложения (не гипотетического, а работающего "здесь и сейчас"), которое делало бы преимущества Нового Веба очевидными любому.
Но в новейшее время в семантичности Веба определенно происходят положительные сдвиги — хотя "семантические" технологии W3C играют в этих сдвигах далеко не первую роль. Killer app’ом, чья популярность только зарождается, оказались, вопервых, поиск, а во-вторых — переносимость данных.
Средством и основной технологией — микроформаты и простые API популярных сервисов. Средством структурирования — (контролируемые) фолксономии.
Результатом — не новая "сеть данных", но и не старая "сеть страниц", а гибридная "сеть страниц с (мета) данными".
Итак, семантическая информация в сегодняшнем Вебе-не-только-для-ученых преимущественно записывается в виде микроформатов — стандартов, позволяющих к существующей HTML-странице добавить информацию о смысле данных. Например, ‹a href=''http://vasya.com''› — это "какая-то ссылка"; а ‹a href=''http://vasya.com'' rel=''colleague''› [Помните "малоиспользуемый и забытый атрибут rel" из первого раздела? ] это та же ссылка, но семантически описывающая мои отношения с блогом-по-ссылке в формате XFN (XHTML Friends Network — натурально, формат задания информации о френдах), — при этом, с точки зрения простого браузера, страница выглядит все так же, но "понимающие" XFN боты[Или браузеры со специальным плагином, например Operator для Firefox.]"увидят" дополнительную информацию и смогут ее использовать. Существуют микроформаты для описания, например, контактной информации (hCard), календарной (hCalendar), информации о "Creative Commons"-лицензировании данного контента и множество других.
Смежный способ "придания дополнительной информации" обычной странице — задание "альтернативных представлений этой страницы" в ее заголовке.
Именно так в блогах указывают их RSS-потоки (тоже ведь — ссылка на "семантическое изложение" того же, что мы видим в HTML); именно так на страницах профилей в разно образных социальных сетях (в том же ЖЖ, например) указывают ссылки на FOAF документы[ FOAF (Friend of a Friend) — схема RDFдокументов, указывающих, опять же, информацию о френдах и ссылки на них. То есть FOAF и XFN — это конкурирующие технологии.].
Хорошо, допустим, кто-то решил описать таким образом часть контента на странице. Возникает закономерный вопрос (точнее — даже два): какая обычному инфопутешественнику [Это автор так предпочитает называть веб-серферов. И красивше, и семантичнее] польза и радость с этой семантики? и даже если она есть, много ли страниц, в которых заложена такая информация?
Действительно, даже Firefox+Operator, честно показывающий "в этой странице заложена контактная информация, хотите ее экспортировать?" или "здесь используются такие-то теги", кажется скорее "вспомогательной фенькой для гика", нежели "признаком качественно другого веба"[Впрочем, есть мнение, что скрытый потенциал семантических микроформатов еще раскроет себя в интеграции виртуальной и физической реальности на мобильных устройствах. Самыми простыми и очевидными примерами представляются мобильник, умеющий одним кликом позвонить по записанному на веб-странице телефону, или КПК, по геоинформации описания достопримечательности в путеводителе немедленно запускающий навигатор.]. Но — вспомним, что было сказано выше о killer app’ах Настоящего Семантического Веба["Настоящего" — не в смысле "истинного", а в смысле существующего здесь и сейчас (в отличие от утопического Полностью Семантического Веба).]: поиск и перенос данных.
Семантическим поиском (то есть поиском, учитывающим свойства данных, а не только встречаемость слов в документе) многие из нас пользуются ежедневно. Это, например, Яндекс-поиск по блогам, индексирующий RSS-потоки блогов и форумов и позволяющий находить отдельные посты (независимо от того, как они сгруппированы в HTML-страницы), причем вести поиск можно не только по встречающимся словам, но и по "семантическим" (смысловым) атрибутам записи — заголовку, имени автора, тегам и пр. Другой пример — множество сторонних сервисов для "сложного" поиска по Flickr или del. icio.us: здесь играет большую роль открытый и простой API, ставший одним из почти обязательных признаков Web2.0-сервиса. И породивший новую разновидность сервисов: машапы (mash-ups, помеси сервисов), извлекающие семантически описанную информацию из нескольких популярных сервисов и объединяющие ее по этим самым семантическим признакам[Навязший в зубах пример — показать чтонибудь, снабженное геоинформацией (например, записи-статусы Twitter), на картах Гугла.], — при этом, заметим, смешиваемым сервисам достаточно описать свою информацию в рамках своей области и вовсе не нужно договариваться об общем языке данных и общей онтологии допустимых значений.
Вот, кстати, и слово сказано — ответ на вопрос "кто вообще будет этим заниматься?" (в смысле — добавлением/экспортом семантической информации). Отдельный пользователь-автор — вряд ли (точнее — не стоит рассчитывать на всех и каждого). Но если наш пользователь-автор — участник крупной Web2.0-системы — будь то блог-хостинг, фотохостинг, голая "социальная сеть", энциклопедия, — создатель сервиса может озаботиться тем, чтобы ПО самой системы экспортировало метаинформацию (описание блоговых записей, фотографий на хостинге и т. п.).
Зачем? Чтобы потрафить семантическим поисковым системам, настоящим и будущим, и в конечном счете увеличить посещаемость и прибыли (чувствуете разницу с целями Идеального Семантического Веба — изничтожить само понятие "посещаемости отдельного сайта"?). Завтра создавать новый блог-хостинг/социальную сеть (или автономный движок для личного блога, например), не представляющую информацию о френдах в общеизвестном формате (FOAF или XFN), будет такой же глупостью, как сегодня — блог-хостинг без RSS-лент.
К вопросу "экспорта ради поиска" примыкает вопрос "экспорта ради миграции и интеграции", все больше волнующий пользователей — они жаждут возможности единожды записанные данные переносить между разными сервисами — для чего, опять-таки, все эти сервисы должны поддерживать общепонятные стандарты "описания данных по смыслу". Наиболее объемлющая инициатива такого рода — проект DataPortability, ставящий своей целью описать, какие открытые стандарты, микроформаты и протоколы (hCard, FOAF, OpenID, RSS, RDF…) должен "понимать" уважающий себя современный сервис, чтобы пользователю легко было "прийти" и "уйти" со своими данными. Учитывая, что этот молодой (основан в ноябре 2007-го) проект уже получил широчайшую поддержку рынка (по крайней мере, на словах) — от Google и Microsoft до Facebook и Twitter, — можно ожидать постепенного нарастания массы семантической информации, экспортируемой и импортируемой популярными сервисами. А вслед за "грандами" подтянутся и стандарты "хорошего тона" индустрии. Так победим!