Опубликован: 04.07.2012 | Доступ: свободный | Студентов: 1919 / 91 | Оценка: 4.08 / 3.69 | Длительность: 21:39:00
Лекция 14:

Синдикация и аггрегирование веб-контента. Улучшение usabilty веб-контента

< Лекция 13 || Лекция 14: 123 || Лекция 15 >
Аннотация: Цель лекции: обзор спецификаций и технологий, направленных на повышение доступности (видимости) актуальной и релевантной для конечных пользователей информации, а также улучшение usability при работе с этой информацией.

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

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

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

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

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

Хотя RSS и веб-фрагменты основаны на Windows RSS Platform, между ними есть принципиальные различия:

  • Веб-фрагменты основываются на спецификации микроформата hAtom (основанного на формате Atom с исключением ряда элементов). В RSS используются RSS 2.0 и Atom.
  • Для организации RSS-потока вебмастер должен создать специальный XML-файл, в который будет записываться транслируемая информация, который будет загружаться в RSS-агрегатор. В случае с веб-фрагментами дополнительных файлов не требуется - данные собираются непосредственно со страницы сайта.
  • При подписке на RSS-канал пользователю потребуется открывать сам поток в браузере или в программе для чтения каналов, после чего держать запущенной вкладку с потоком (если чтение идет в IE8). В случае с веб-фрагментами доступ к ним (после того, как пользователь подпишется на веб-фрагмент) осуществляется через панель браузера "Избранное". С помощью таких фрагментов можно проверять новую почту, получать новости, прогноз погоды и другую оперативную информацию без необходимости открывать лишние окна.
  • При передаче информации в виде RSS имеется возможность создания ленты публикаций, когда пользователь может увидеть и просмотреть не только самую последнюю информацию, но и то, что было опубликовано ранее. На веб-фрагменте страницы сайта всегда в наличии только самая последняя информация. Поэтому в любой момент времени для просмотра доступны только последние данные. История публикаций не поддерживается.

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

Веб-синдикация на основе RSS

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

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

Агрегатор потоков (feed aggregator) - клиентское веб-приложение, собирающее синдицированный веб-контент такой как новостные заголовки, блоги, подкасты и другие в одном месте для более удобного просмотра.

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

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

Взаимодействие веб-потоков и агрегаторов происходит в следующем порядке:

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

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

Некоторые из веб-браузеров содержат встроенные возможности для аггрегирования потоков. Это делается путем простого ввода URL веб-потока или кликом на гиперссылке в браузере. Формат веб-потоков не предназначен для непосредственного чтения пользователем, поскольку позволяет автоматически переносить контент с сайт на сайт. Для представления информации из веб-потока обычно используются 2 формата: RSS и Atom.

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

  • Поскольку при подписке пользователь не указывает свой адрес электронной почты, эта технология лишена таких потенциальных угроз как спам, вирусы, фишинг и кража личной информации.
  • При отказе от использования веб-потока нет необходимости отправлять запрос на отказ от подписки; пользователь просто исключает данный поток из своего агрегатора.
  • Имеются широкие возможности для автоматической сортировки сообщений от веб-потоков вплоть до использования сложных правил и регулярных выражений.
  • Браузеры Internet Explorer 7+, Opera, Safari, Firefox и другие могут работать с веб-потоками через инструменты панели Закладок, Избранного и других. Имеются также специализированные программы для чтения веб-потоков, например FeedDemon, Thunderbird, Outlook 2007 и другие.

Агрегатор позволяет объединить информацию из разных потоков в одном окне веб-браузера или веб-приложения. Такое приложение называется RSS-каналом, новостной лентой, агрегатором потоков или поисковым агрегатором. Подкастинг-агрегаторы могут автоматически загружать медиа-файлы. Объединенный контент агрегатор получает и интерпретирует обычно в формате RSS или других форматах, основанных на XML, например RDF/XML или Atom. Наиболее развитые методы аггрегирования веб-потоков реализуются на основе технологий AJAX и XML компонентов - веб-виджетов (web widgets).

Многие языки программирования имеют библиотеки функций, позволяющие загружать, обрабатывать, генерировать и выполнять удаленную загрузку каналов. Например в Perl имеется поддержка нескольких библиотек в пространстве имен XML::RSS

RSS

RSS - семейство XML-форматов, предназначенных для описания лент новостей, анонсов статей, изменений в блогах и т. п.

В разных версиях аббревиатура RSS имела разные расшифровки:

  • Rich Site Summary (RSS 0.9x);
  • RDF Site Summary (RSS 0.9 и 1.0);
  • Really Simple Syndication (RSS 2.x).

Из истории формата.

Первой открытой официальной версией RSS стала версия 0.90. Формат был основан на RDF (Resource Description Framework - стандарт схемы описания потоков) и многим показался слишком сложным, после чего появилась упрощённая версия - 0.91.

В 2000 году произошло разделение формата:

  • Группа разработчиков из списка рассылки "RSS-DEV" предложила формат RSS 1.0, который был основан на стандартах XML и RDF организации W3C. Расширения формата предлагалось делать через модули расширений, описываемые в своих пространствах имён. Так как проект использует уже существующие стандарты, рассматривается его использование в рамках технологии Semantic Web.
  • Спецификация RSS 0.92 является развитием версии 0.91 и ориентируется на тех пользователей, которым RDF-описание показалось излишне сложным. Дальнейшим развитием этой ветки стал формат RSS 2.0, который тоже поддерживает расширения с помощью модулей, лежащих в своих пространствах имён.
  • В июне 2006 года появился конкурент RSS - формат Atom.

Из-за существования нескольких различных версий формата RSS-каналов программы-агрегаторы должны уметь работать со всеми вариантами, что создаёт определенные трудности их разработчикам. Проблемы совместимости возникают также при вставке в RSS-описания небольших HTML-фрагментов, которые в одних случаях оформляются как CDATA узлы, а в других - как HTML-кодированные PCDATA узлы. Существуют проблемы с различными форматами представления дат и метаданных.

Микроформаты

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

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

Поскольку микроформаты основаны на уже существующих стандартах (таких, как HTML и XHTML), их легко добавлять на существующие страницы в WWW.

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

Для разметки микроформатами подходят любые элементы HTML, но особое значение придаётся элементам, которые не имеют собственного, стандартного семантического значения - div и span. Из атрибутов в настоящее время используются в основном следующие:

  • class
  • rel
  • rev
  • title

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

  • hCard - организации и люди;
  • hCalendar - события;
  • hAtom - ленты новостей (как аналог RSS и Atom) в обычном HTML или XHTML;
  • XFN - социальные взаимоотношения;
  • rel-tag - метки (теги) и образование фолксономии;
  • xFolk - помеченные ссылки;
  • adr - почтовые адреса;
  • geo - географические координаты (широта и долгота);
  • hReview - отзывы (о товарах, услугах, событиях и тому подобном);
  • nofollow - для предотвращения индексации поисковыми системами определённых документов.

Веб-фрагменты (web-slices)

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

Веб-фрагменты выполняют четыре основные функции:

  • Обнаружение.
  • Обновление.
  • Предварительный просмотр.
  • Навигация.

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

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

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

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

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

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

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

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

Онтология

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

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

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

< Лекция 13 || Лекция 14: 123 || Лекция 15 >
Алексей Масютин
Алексей Масютин
Россия, Дзержинск
Павел Макагонов
Павел Макагонов
Россия