Для пользователей, которые регистрируются. Если Вам не приходит письмо с подтверждением email, пишите на admin[at]quizful[dot]net - будем подтверждать вручную. Просим прощения за доставленные неудобства.

С уважением,
команда Quizful
Знаете ли Вы, что

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

Топ контрибуторов
loading
loading
Лента обновлений
ссылка Feb 10 23:41
Комментарий от sick_puppie:
здесь речь идет о top-level классах
ссылка Feb 10 19:16
Добавлен вопрос в тест C++ - Основы
ссылка Feb 10 17:54
Комментарий от a_w:
Прочитав всё это я вернулся и удостоверился, что всё ещё нах...
ссылка Feb 10 15:59
Добавлен вопрос в тест C++ - Средний уровень
ссылка Feb 10 15:35
Комментарий от hazartilirot:
Повторюсь, на решение таких вопросов одной минуты м...
Статистика

Тестов: 130, вопросов: 5785. Пройдено: 113023 / 461405.

Анатомия RSS-лент

head tail Информация о статье
категория
Веб технологии
дата16.07.2009
авторshultais
голосов11

[Disclaimer: Данная статья была переведена в рамках "Конкурса на лучший перевод статьи" на сервисе Quizful. Ссылка на оригинал находится внизу страницы.]

RSS — это стандартный формат данных для передачи новостей, объявлений о последних публикациях или другой информации, которую компания или отдельные личности хотят сообщить большой аудитории. RSS (Really Simple Syndication) можно перевести как «действительно простой способ получить информацию». RSS-лента состоит из расположенных в заданной последовательности элементов, соответствующих спецификации XML 1.0. Каждый из этих элементов отвечает за определенную область подачи материала. В этой статье мы рассмотрим эти элементы.

Структура RSS ленты

RSS-лента всегда начинается с элемента с атрибутом version, отвечающим за версию RSS. Здесь мы используем наиболее распространенную на сегодня версию - RSS 2.0.

<rss version="2.0"> 
</rss>

Внутри <rss> располагается элемент-потомок <сhannel>, содержащий элементы важных данных или содержимое ленты.

<rss version="2.0"> 
<channel>
</channel>
</rss>

Для описания RSS-канала есть несколько тегов, которые могут быть добавлены в начало ленты. Обязательными элементами являются <title>, <link> и <description>. Дополнительными: <language>, <copyright>, <managingEditor>, <webmaster>, <pubDate>, <lastBuildDate>, <category>, <generator>, <docs>, <cloud>, <ttl>, <image>, <rating>, <textInput>, <skipHours> и <skipDays>.

Подробнее об элементах:

  • language – Язык канала.
  • copyright – Авторские права на канал.
  • managingEditor – Адрес электронной почты редактора данного канала.
  • webMaster – Адрес электронной почты администратора сайта, на котором расположен канал.
  • pubDate – Дата публикации содержания в канале.
  • lastBuildDate – Дата последнего изменения содержания в канале.
  • category – Позволяет добавлять одну или несколько категорий, к которым принадлежит канал.
  • generator – Программа-генератор, которая создала канал.
  • docs – Ссылки на документацию в формате RSS ленты.
  • cloud – Обеспечивает процесс регистрации в «облако», которое будет использоваться для уведомления об обновлениях.
  • ttl – Время жизни канала в кэше в минутах.
  • image – Файл изображения, которое будет отображаться в канале.
  • rating – PICS рейтинга канала.
  • textInput – Текстовое поле ввода, которое позволяет пользователям реагировать на канал.
  • skipHours – Сообщает агрегаторам (программам читающим RSS-ленты), в какое время мы их не хотим видеть.
  • skipDays – Сообщает агрегаторам, в какие дни они не должны нас беспокоить.

RSS-каналы состоят из элементов <item>, которые могут содержать новости с новостного ресурса, записи из интернет-дневника или еще что-то. Следующий канал состоит из единственного элемента, который содержит запись блога. Обычно канал для блога содержит много элементов, которые передают все записи интернет-дневника. Вот пример из RSS-канала, который можно встретить в блоге:

1	<rss version="2.0"> 
2 <channel>
3 <item>
4 <guid isPermaLink="false">
5 http://www.blogger.com/feeds/12931054/posts/full/115714541264251287
6 </guid>
7 <pubDate>Fri, 01 Sep 2006 21:08:00 +0000</pubDate>
8 <title>Secure Ajax Requests</title>
9 <description>
10 <div xmlns="http://www.w3.org/1999/xhtml">My latest article for
InformIT, titled <a href="http://www.informit.com">How to Secure
Ajax Requests</a> is on the homepage this week. This article
focuses on ensuring that your database-enabled Ajax requests
are secure and not leaving your database open for an attack.
Enjoy...
</div>
11 </description>
12 <link>
13 http://www.krishadlock.com/blog/2006/09/secure-ajax-requests.html
14 </link>
15 <author>Kris Hadlock</author>
16 </item>
17 </channel>
18 </rss>

Эта структура канала стандартная для интернет-дневника, так как она состоит из наиболее часто используемых элементов. При внимательном рассмотрении заметна абстрактность этой структуры, а значит она может содержать не только записи блога, но и информацию любого другого вида. Даже несмотря на абстрактность структуры её элементы являются простыми. Каждый элемент <item> может содержать следующие подэлменты:

  • guid – Уникальный идентификатор элемента item.
  • pubDate – Дата публикации элемента.
  • title – Заголовок элемента. В нашем случае он совпадает с заголовком публикуемой записи в интернет-дневнике.
  • description – содержит основные данные элемента. В нашем случае это тело записи в блоге.
  • link – Содержит полный URL адрес до страницы, на которой данный элемент представлен максимально подробно.
  • author – Автор этой записи.
  • category – Позволяет поместить элемент в одну или более категорий.
  • comments — Ссылка на страницу, где можно оставлять комментарии к этой записи.
  • enclosure – Может быть использован для описания медиа объекта, прикрепленного к элементу.
  • source – Ссылка на RSS-канал, откуда был взят этот элемент.

Заключение

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

Об авторе

Крис Хэдлок вместе с Робертом Хокманом является соучредителем 33Inc. Он также является автором "Ajax для разработчиков веб-приложений" и был обозревателем многочисленных веб-сайтов и журналов о дизайне.

О переводчике

Никита Шультайс, web-разработчик, автор серии статей о веб-фреймворке Django и о построении графиков в JPGraph. Домашняя страница

----------
Оригинальный текст статьи: The Anatomy of an RSS Feed

Если Вам понравилась статья, проголосуйте за нее

Голосов: 11  loading...
shultais   TestSystem   googperson   googman   googler   rubynovich   bioflash   abbey_nightrock   bav   asdfghjkl   serj