Опубликован: 19.07.2010 | Уровень: для всех | Доступ: платный
Лекция 10:

Введение в Web 2.0. Семантический Web

< Лекция 9 || Лекция 10 || Лекция 11 >
Аннотация: Показаны современные тенденции развития веб-технологий и ключевые концепции Web 2.0.

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

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

Термин получил распространение после конференции по Web 2.0 Медиа в 2004 году с подачи Тима О'Рейли для выражения нового способа взаимодействия разработчиков ПО и конечных пользователей через Веб. Ключевой принцип идеологии Web 2.0 был сформулирован как: "Интернет - как платформа".

Правомерность термина оспаривают многие эксперты, в том числе Тим Бернерс-Ли, поскольку многие компоненты технологий Web 2.0 существовали еще с первых лет существования сети Веб.

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

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

Сайты Web 2.0 предоставляют для пользователей возможность:

  • Не просто получать информацию, но и выполнять программы исключительно через браузер;
  • Размещать и управлять своими данными.

Еще одна важная концепция Web 2.0 - "Архитектура участия", которая поощряет пользователей повышать ценность ПО, путем его использования.

В качестве ключевых для Web 2.0 рассматриваются следующие технологии:

  • Веб-сервисы - это программы, доступ к которым осуществляется через протокол HTTP, а обмен данными происходит в формате XML (или производном от него). Веб-сервис реализуется на серверах компании, её создавшей. В любой момент пользователю доступны самые свежие данные; Веб-сервисы являются платформо-независимыми, поскольку инструменты для работы с HTTP и XML есть в любом современном языке программирования.
  • AJAX. Использование Ajax стало наиболее популярно после того как Google начала активно использовать его при создании своих сайтов, таких как Gmail и Google Maps.
  • Веб-синдикация (на основе технологий RSS или Atom ) - одновременное распространение информации в том числе аудио- и видео- на различные страницы или веб-сайты.
  • Веб mash-up - сервис, который полностью или частично использует в качестве источников информации другие сервисы, предоставляя пользователю новую функциональность для работы. Веб mash-up сервис может становиться также новым источником информации для других веб mash-up сервисов. Таким образом, образуется сеть зависимых друг от друга сервисов, интегрированных друг с другом.
  • Теги - ключевые слова, описывающие рассматриваемый объект, либо относящие его к какой-либо категории. Теги можно рассматривать как метки, которые присваиваются объекту, для определения его места среди других объектов.
  • Фолксономия - популярная классификация, практика совместной категоризации информации (ссылок, фото, видео клипов и др.) посредством произвольно выбираемых меток (тегов). Примеры использования фолксономии: Flickr, del.icio.us.
  • Социальное ПО - широкий диапазон ПО, предназначенного для обмена и совместного доступа к информации пользователей сети Веб.

К недостаткам Web 2.0 можно отнести следующие:

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

Мэшапы

Мэшап ( Mashup ) - гибридное веб-приложение, объединяющее данные из нескольких источников в рамках единого интегрированного инструмента. Контент мэшап обычно получает извне с помощью открытых интерфейсов, веб-сервисов, веб-источников (например RSS или Atom ) или анализа документов, генерируемых другими программами.

Наиболее часто мэшапы используют программные интерфейсы представляемые Аmazon, eBay, Flickr, Google, Microsoft, Yahoo и YouTube.

Архитектура мэшап включает в себя 3 части:

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

Различные типы мэшапов могут генерировать RSS, веб-сервисы, мгновенные и почтовые сообщения.

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

В качестве примера можно привести использование картографических данных Google Maps для добавления к ним данных о недвижимости в Cragislist (в результате создается новый уникальный веб-сервис, изначально не предлагаемый ни одним из источников).

Среди мэшапов можно выделить следующие группы:

  • Потребительские мэшапы - комбинируя данные различных типов из нескольких источников, предоставляют доступ к ним с помощью единого графического интерфейса. Наиболее известный пример - многочисленные приложения Google Maps,
  • Мэшапы данных - комбинируя данные одного типа из нескольких источников, предоставляет доступ к ним с помощью единого графического интерфейса. Пример - Yahoo!Pipes позволяет пользователям получать потоки информации из разных источников и создавать правила по управлению полученным контентом (например, используя фильтры).
  • Бизнес-мэшапы - акцент делают на различных способах аггрегирования и представления данных, предоставляя новые возможности для совместной работы представителей бизнеса и разработчиков.

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

Компания Microsoft предоставляет пользователям специальный сайт Microsoft Popfly, который позволяет пользователям создавать веб-страницы, фрагменты программного кода (для повторного использования) и мэшапы с помощью пакета разработки приложений с поддержкой Microsoft Silverlight.

На сайте имеются четыре инструменты, основанные на Microsoft Silverlight:

  • Разработчик игр
  • Разработчик мэшапов
  • Разработчик веб-страниц
  • Popfly Space - пространство для размещения готовых мэшапов и веб-страниц, доступных пользователям.

Приложения для социальных сетей

Понятие " Социальный Веб " ( Social Web ) используется для описания того, как происходит социализация пользователей и их взаимодействие друг с другом с помощью сети WWW. Основой для объединения пользователей служат самые разнообразные общие интересы.

Термин " Социальный Веб " может быть использован для выражения двух понятий.

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

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

Будучи нацеленными на стимулирование взаимодействия между людьми, социальное ПО для Веб оперирует со следующими социальными атрибутами:

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

Социальное программное обеспечение - это широкий диапазон программных систем, позволяющмх пользователям взаимодействовать и обмениваться данными. Этот способ компьютерно-опосредованного взаимодействия стал популярным с появлением таких социальных сайтов как MySpace, Facebook, Одноклассники, ВКонтакте.ru, медиа сайтов Flickr и YouTube, коммерческих сайтов eBay.

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

Внутри социального ПО можно выделить две группы программных инструментов: коммуникационные и интерактивные.

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

Можно назвать следующие примеры программных систем, которые относится к социальному ПО:

  • Системы обмена мгновенными сообщениями ( IM - Instant messaging ) позволяют общаться с другим пользователем через сеть в режиме реального времени (в относительно защищенном режиме). К наиболее популярным из них можно отнести Skype, ICQ, Yahoo! Messenger, MSN Messenger, AOL Instant Messenger, Miranda IM. К системам, ориентированным на бизнес, можно отнести IBM Lotus Sametime, Microsoft Messenger и Jabber.
  • Интернет-чаты ( IRC - Internet Relay Chat ) позволяют одновременно нескольким пользователям общаться в режиме реального времени.
  • Интернет-форумы пришли на смены электронным конференциям (возникшим до появления WWW ). Пользователь форума может создавать новую "тему", доступную для других. Другие пользователи могут просматривать тему и оставлять свои комментарии в режиме последовательной записи.
  • Веб-блоги ( web logs ), или кратко блоги, можно рассматривать как личные он-лайн журналы отдельных пользователей. Владелец блога может размещать сообщения в своем журнале, в то время как другие пользователи (читатели) могут оставлять к ним свои комментарии.
  • Вики-справочники ( wiki ), или просто вики, - по-сути, веб-сайты, содержимое которых может редактироваться посетителями сайта. Наиболее известный пример - Википедия.
  • Сервисные социальные сети позволяют пользователям объединяться в он-лайн режиме вокруг общих для них интересов, увлечений или по различным поводам. Например, некоторые сайты предоставляют сервисы, с помощью которых пользователи могут размещать для общего доступа персональную информацию, необходимую для поиска партнеров. Примеры: LinkedIn, В контакте.
  • Социальные сети принятия решений - веб-сети для обсуждения с целью принятия решений. Используются для установления постоянной связи отдельных людей с правительством.
  • Коммерческие социальные сети ориентированы на поддержку бизнес-транзакций и формирование доверия людей к брендам на основе учета их мнений о продукте, о том как сделать его лучше и т.п., тем самым позволяя потребителям участвовать в продвижении продукта и расширяя их осведомленность.
  • Социальные закладки ( social bookmarking ). Некоторые веб-сайты позволяют пользователям предоставлять в распоряжение других список закладок или популярных веб-сайтов. Такие сайты также могут использоваться для поиска пользователей с общими интересами. Пример: del.icio.us.
  • Социальные каталоги ( social cataloging ) напоминают социальные закладки, но ориентированы на использование в академической сфере, позволяя пользователям работать с базами данных цитат из научных статей. Примеры: Academic Search Premier, LexisNexis Academic University, CiteULike, Connotea.
  • Социальные библиотеки представляю собой приложения, позволяющие посетителям оставлять ссылки на их коллекции, книги, аудиозаписи и т.п., доступные другим. Предусмотрена поддержка системы рекомендаций, рейтингов и т.п. Примеры: discogs.com, imdb.com.
  • Многопользовательские сетевые игры ( Massively Multiplayer Online Games ) имитируют виртуальные миры с различными системами подсчета очков, уровней, состязательности, победителей и проигравших. Пример: World of Warcraft.

Фолксономия

Фолксономия ( folksonomy ) - практика и методика совместной категоризации контента (ссылок, фото, видео клипов и т.п.) посредством произвольно выбираемых меток (тегов). Она основана на спонтанном сотрудничестве группы людей с целью организации контента и полностью отличается от традиционных формальных методов классификации на основе индексных терминов. Как правило, этот феномен возникает только в неиерархических сообществах, например на общедоступных веб-сайтах. Так как участники фолксономии контента обычно являются и основными же ее потребителями, использование методики фолксономии приводит к результатам, более точно отражающим совместную концептуальную модель контента всей группы.

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

  • Наличие форм множественного числа.
  • Полисемия.
  • Синонимия.
  • Глубина (специфичность) использования меток.

Фолксономию можно рассматривать в качестве одного из ключевых элементов в развитии Семантической веб-сети, в рамках которой все веб-страницы содержат машинно-ориентированные метаданные, описывающие содержимое страниц. Эти метаданные должны значительно улучшать точность работы поисковых систем. Однако во избежание трудностей, вызванных ненадежностью и несогласованностью в работе больших сообществ авторов страниц, им рекомендуется использовать стандарты метаданных, например Дублинское ядро ( Dublin Core ).

Семантическая веб-сеть

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

Термин был введен Тимом Бернерсом-Ли в мае 2001 года.

В семантической веб-сети предполагается повсеместное использование

  • универсальных идентификаторов ресурсов ( URI ),
  • онтологий и языков описания метаданных.

Концепция семантической веб-сети была принята и продвигается W3С. Для её внедрения предполагается создание сети документов, содержащих метаданные о ресурсах WWW, и существующей параллельно с ними. Тогда как сами ресурсы предназначены для восприятия человеком, метаданные используются машинами (поисковыми роботами и другими интеллектуальными агентами) для получения однозначной информации о свойствах этих ресурсов с помощью механизмов логического вывода.

Техническую часть семантической паутины составляет семейство стандартов на языки описания, включающее XML, XML Schema, RDF, RDF Schema, OWL и др. Необходимость описания метаданных так или иначе приводит к дублированию информации. Каждый документ должен быть создан в двух экземплярах: размеченным для чтения людьми, а также в машинно-ориентированном формате.

Онтология

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

Современные онтологии обычно состоят из экземпляров, понятий, атрибутов и отношений.

Для описания онтологий Веб был разработан специальный язык - OWL (Web Ontology Language) , построенный на основе XML. Язык OWL может быть использован для описания классов и отношений между ними. В основе языка - представление действительности в модели данных "объект - свойство". Язык применим не только для описания веб-страниц, но и любых объектов действительности и рассматривается в качестве одной из фундаментальных технологий, необходимых для построения Семантической веб-сети.

Семантические веб-сервисы

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

Технически, семантический веб-сервис отличается от обычного веб-сервиса наличием не только описания интерфейса (обычно на языке WSDL ) в терминах типов данных, передаваемых сервису, возвращаемых значений и генерируемых ошибок, но и наличием семантического описания всех его характеристик.

Потенциальная выгода от использования семантических веб-сервисов заключается в возможности автоматического поиска (а также композиции) программными агентами подходящих сервисов для решения поставленных задач.

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

< Лекция 9 || Лекция 10 || Лекция 11 >
Владимир Вологжанин
Владимир Вологжанин
Россия