к библиотеке   к оглавлению   Банки данных Интернет   визуальные среды - 4GL   технологии программирования

Язык XML

Сравнение RSS и Atom

Разработчики каналов новостей имеют определенную возможность выбора среди форматов синдикации, однако с середины 2005 г актуальными остались два из них: RSS 2.0 и Atom 1.0. Сравним, насколько это возможно, функциональность этих форматов по следующим критериям:

Основные возможности

Распространенность

В середине 2005 года, когда стандарт Atom был только принят, он использовался лишь на нескольких десятках сайтов. В то же время RSS 2.0 был широко распространен на различных социальных сервисах.

К началу 2006 года Atom 1.0 стал получать распространение и стал проблемой для программ-агрегаторов, которые не могли разобрать формат, не похожий на RSS. Разработчики агрегаторов принялись патчить свои программы на основе баг-репортов.

К середине 2006 года, благодаря активному продвижению W3C и поддержке со стороны Google, IBM и еще ряда корпораций, Atom стал основным форматом для многих крупных онлайн-сервисов. При этом популярность RSS 2.0 не снизилась, так как контент-провайдеры зачастую стали представлять новости в обоих форматах, на выбор.

Стандартизация

Авторские права на спецификацию RSS 2.0 принадлежат Гарвардскому Университету и проект заморожен. Хотя спецификация находится под лицензией Creative Commons никаких существенных изменений в ней не может быть сделано. Дэйв Уинер (Dave Winer), один из главных разработчиков RSS, призвал разработчиков объединить свои усилия и разработать единый формат, совместимый как с RSS, так и с Atom, чтобы слить конкурентные стандарты в единое целое.

Atom — открытый стандарт IETF, который продолжает развиваться и совершенствоваться.

Публикация информации

RSS 2.0 представляет скудные встроенные возможности публикации, но на основе спецификации были разработаны проприетарные протоколы, наиболее популярные из них — MetaWeblog и Blogger. Оба протокола не лишены недостатков и слабо совместимы между собой.

Спецификация Atom имеет собственный стандартный протокол публикации Atom Publishing Protocol (Atompub), тесно интегрированный с Atom Syndication Format.

Обязательное содержание

RSS 2.0 требует наличия названия, ссылки и описания на уровне канала (метаинформации) и не требует, чтобы любое из этих полей отдельных элементов канала было представлено.

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

Типы содержания

Канал RSS 2.0 может содержать только текстовую, или только гипертекстовую (HTML-escaped, теги экранируются в CDATA) информацию, без возможности указания, какое предоставление используется. Экранированные HTML (например, строка AT&T будет представлена как AT&amp;T) привносят дополнительные сложности разработчикам. Модель содержания заголовков (<title>) не определена. Заголовки с угловыми скобками или амперсандами будут интерпретированы значительной частью программ чтения независимо от представления.

Модель содержания RSS 2.0 не допускает использования XML, что уменьшает возможности повторного использования содержимого.

В свою очередь, Atom имеет тщательно проработанный контейнер содержания, которое может быть следующих типов:

Atom не дает гарантии, что получатель будет иметь возможность сделать что-нибудь полезное с внешними данными или бинарным содержанием. Тем не менее, это ограждает получателей от неправильного определения типа содержимого на основе предположений.

Полное или частичное содержание

RSS 2.0 имеет элемент <description> (описание) который содержит или полный текст сообщения, или краткую сводку (иногда о всем канале), и который порой вообще отсутствует. Нет никакой возможности явно сообщить читателю, что текст является полным или частичным.

Atom представляет отдельные элементы <summary> (резюме) и <content> (содержимое). Элемент <summary> позволяет описывать нетекстовое (например, audio-поток) или внешнее (идентифицируемое указателем) содержание.

Сбор информации и агрегация

RSS 2.0 представляет доступ только к документу целиком (элемент <rss>).

Atom 1.0 разрешает доступ к автономным Atom Entry документам элемент <entry>; которые могут передаваться по любым сетевым протоколам, например XMPP. Atom также имеет поддержку агрегированных каналов с обратной связью на исходный канал.

Дополнительные возможности

Расширяемость

RSS 2.0 не является пространством имен XML, но может сам содержать элементы других пространств имен XML. Не существует единого центра, где можно было бы уточнить информацию о заимствованных элементах, таких как <dc:creator> или <content:encoded>.

Формат Atom 1.0 сам определен как пространство имен XML, и документ Atom может содержать элементы и атрибуты из других пространств имен. Для него определены рекомендации по интерпретации заимствованных элементов. В сетевом каталоге, управляемом IANA, имеются все описания и рекомендации по использованию расширений.

Адресация

RSS 2.0 не описывает порядок обработки относительых ссылок (например, вида "img/fig1.gif"). Это ограничивает интероперабельность протокола и разработчикам приходится использовать абсолютные ссылки ("http://example.com/img/fig1.gif").

Atom 1.0 имеет поддерживает XML-атрибут <xml:base> для указания базового адреса всех относительных ссылок в канале.

Теги интернационализации

Для указания языка канала RSS 2.0 имеет собственный элемент <language>, в то время как Atom использует XML-атрибут <xml:lang>.

Цифровая подпись и шифрование

Каналы RSS 2.0 и Atom 1.0 могут быть подписаны или зашифрованы подобно любому другому веб-контенту, если представлены как битовая последовательность. В дополнение, Atom поддерживает стандарты XML Encryption и XML Digital Signature

Информация об авторах

RSS 2.0 позволяет указать раздельно электронные адреса менеджера канала (<managingEditor>), разработчика (<webMaster>) и автора каждого сообщения (<author>). Не многие указывают свой е-мейл, предпочитая использовать вместо этих тегов элемент <dc:creator> из пространства имен Dublin Core.

Atom 1.0 представляет элементы <author> (автор) и <contributor> (соавтор) как на уровне канала, так и на уровне отдельных сообщений. Эти элементы должны содержать имя автора и, опционально, могут содержать его е-мейл и веб-адрес

Категории

Категории в RSS 2.0 определяются двумя частями: меткой категории и доменом (адресом сервера), где эти категории описаны.

В стандарте Atom 1.0 категории представлены иерархически и каждая имеет опциональный человеко-читаемый заголовок.

Схема

Спецификация RSS 2.0 не использует схем.

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

Примеры каналов RSS 2.0 и Atom 1.0

  1. Пример канала RSS
  2. Пример канала Atom

Таблица сравнения элементов

Стандарт Atom 1.0 определяет 21 элемент канала новостей, RSS 2.0 — 30 элементов. Большинство элементов RSS 2.0 и Atom 1.0 не пересекаются и не соответствуют аналогам. Часть элементов редко используется на практике или их функциональность достигается другими путями.

RSS 2.0 Atom 1.0 Comments
rss - Рудимент из прежних версий RSS
channel feed  
title title  
link link Atom представляет гибкие возможности для описания ссылок
description subtitle  
language - Atom использует стандартный атрибут <xml:lang>
copyright rights  
webMaster -  
managingEditor author, contributor  
pubDate published (в элементе entry) Atom не имеет эквивалента на уровне канала
lastBuildDate (in channel) updated RSS не имеет эквивалента на уровне сообщения
category category  
generator generator  
docs -  
cloud - RSS поддерживает спецификацию Cloud
ttl - Использование ttl проблематично, связано с управлением кэшированием в протоколе HTTP 1.1
image logo В качестве логотипа Atom рекомендует изображения с отношением сторон 2:1
- icon По сути то же самое, что и favicon.ico
rating - Популярность
textInput -  
skipHours -  
skipDays -  
item entry  
author author  
- contributor  
description summary и/или content В зависимости от полноты содержание
comments -  
enclosure - rel="enclosure" в элементе <link> стандарта Atom
guid id  
source - rel="via" в элементе <link> стандарта Atom
- source Контейнер метаданных уровня канала для поддержки агрегации

Резюме

По результатам анализа и сравнения можно сделать следующие выводы:

Ссылки

  1. http://relaxng.org/ - RelaxNG schema
  2. http://www.w3.org/standards/ — W3C standards page
  3. http://tools.ietf.org/html/rfc3339 — IETF Date and Time representation
  4. http://tools.ietf.org/html/rfc4287 — IETF Atom format
  5. http://tools.ietf.org/html/rfc5023 — IETF AtomPub
  6. http://web.resource.org/rss/ — RSS 1.0 home page
  7. http://www.rssboard.org/ — RSS 0.9x & 2.0 home page
к библиотеке   к оглавлению   Банки данных Интернет   визуальные среды - 4GL   технологии программирования

Знаете ли Вы, как разрешается парадокс Ольберса?
(Фотометрический парадокс, парадокс Ольберса - это один из парадоксов космологии, заключающийся в том, что во Вселенной, равномерно заполненной звёздами, яркость неба (в том числе ночного) должна быть примерно равна яркости солнечного диска. Это должно иметь место потому, что по любому направлению неба луч зрения рано или поздно упрется в поверхность звезды.
Иными словами парадос Ольберса заключается в том, что если Вселенная бесконечна, то черного неба мы не увидим, так как излучение дальних звезд будет суммироваться с излучением ближних, и небо должно иметь среднюю температуру фотосфер звезд. При поглощении света межзвездным веществом, оно будет разогреваться до температуры звездных фотосфер и излучать также ярко, как звезды. Однако в дело вступает явление "усталости света", открытое Эдвином Хабблом, который показал, что чем дальше от нас расположена галактика, тем больше становится красным свет ее излучения, то есть фотоны как бы "устают", отдают свою энергию межзвездной среде. На очень больших расстояниях галактики видны только в радиодиапазоне, так как их свет вовсе потерял энергию идя через бескрайние просторы Вселенной. Подробнее читайте в FAQ по эфирной физике.

НОВОСТИ ФОРУМАФорум Рыцари теории эфира
Рыцари теории эфира
 17.08.2019 - 18:50: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Андрея Тиртхи - Карим_Хайдаров.
15.08.2019 - 23:53: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> РАСЧЕЛОВЕЧИВАНИЕ ЧЕЛОВЕКА. КОМУ ЭТО НАДО? - Карим_Хайдаров.
15.08.2019 - 23:52: ТЕОРЕТИЗИРОВАНИЕ И МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ - Theorizing and Mathematical Design -> ФУТУРОЛОГИЯ - прогнозы на будущее - Карим_Хайдаров.
15.08.2019 - 23:50: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> ПРОБЛЕМА ИСКУССТВЕННОГО ИНТЕЛЛЕКТА - Карим_Хайдаров.
15.08.2019 - 17:13: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> ПРОБЛЕМЫ ВНЕДРЕНИЯ НОВЫХ ТЕХНОЛОГИЙ - Карим_Хайдаров.
15.08.2019 - 16:22: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ЗА НАМИ БЛЮДЯТ - Карим_Хайдаров.
15.08.2019 - 14:50: ЭКСПЕРИМЕНТАЛЬНАЯ ФИЗИКА - Experimental Physics -> Вихревые эффекты и вихревые теплогенераторы - Карим_Хайдаров.
13.08.2019 - 05:27: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Ю.Ю. Болдырева - Карим_Хайдаров.
12.08.2019 - 06:16: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вячеслава Осиевского - Карим_Хайдаров.
09.08.2019 - 13:03: АСТРОФИЗИКА - Astrophysics -> Исследования комет - Карим_Хайдаров.
08.08.2019 - 04:32: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
29.07.2019 - 04:33: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> "Зенит"ы с "Протон"ами будут падать - Карим_Хайдаров.
Bourabai Research Institution home page

Bourabai Research - Технологии XXI века Bourabai Research Institution