Переводчик: Денис Суро
Оригинал документа Дэйва Винера в Гарварде.
Определение формата RSS 2.01 Гарвардом. Она совместима с версиями .91 и .92. Она не имеет ничего общего с версией 1.0, которая является форматом RDF синдикации или с форматом Atom IETF. Этот документ предназначен для авторов программного обеспечения, которые хотят создавать RSS-файлы или просматривать каналы, а также для всех, кто хочет получить информацию о формате.
Этот документ не является спецификацией W3C. В W3C нет спецификации синдикации. В W3C был указан формат XML в основе настоящего формата, а также формат RDF в основе версии 1.0.
Настоящий документ имеет лицензию Creative Common. Разрешение на его печать и распространение предоставляется при условии, что имя автора и переводчика, а также URL-адреса не будут удалены или изменены.
Перевод начинается ниже
RSS - формат синдикации веб-контента.
Его имя - аббревиатура Really Simple Syndication.
RSS - диалект XML. Все RSS-файлы должны соответствовать спецификации XML 1.0, которая опубликована на сайте Всемирного веб-консорциума (W3C).
Сводка истории версий RSS.
На первом уровне RSS-документ является элементом <rss>, с обязательным атрибутом версии, который указывает, какой версии RSS соответствует этот документ. Если он соответствует этой спецификации, то атрибут версии должен быть 2.0.
Подчиненный элементу <rss>, есть единственный элемент канала, который содержит информацию о канале (метаданные) и его содержимое.
Вот примеры для: RSS 0.91, 0.92 и 2.0.
Обратите внимание, что файлы примеров могут указывать на документы или службы, которые больше не существуют. Пример .91 был создан при написании документов .91. Было бы неплохо сохранить список примеров.
Этот документ представляет состояние RSS на конец 2002 года в версии 2.0.1.
Он включает все изменения и дополнения, начиная с базовой спецификации для RSS 0.91 (июнь 2000) и включает новые функции, введенные в RSS 0.92 (декабрь 2000) и RSS 0.94 (август 2002).
Примечания об изменении можно найти здесь.
Сначала мы задокументируем необходимые и необязательные подэлементы «канала»; затем подэлементы <item>. Заключительные разделы отвечают на часто задаваемые вопросы и содержат дорожную карту для будущих событий, а также инструкции по расширению RSS.
Ниже представлен список необходимых элементов канала, каждый из которых имеет краткое описание, пример, а при наличии указателя на более полное описание.
Элемент | Описание | Пример |
титл | Название канала. Так говорится о вашем служении. Если у тебя есть HTML-сайт, содержащий ту же информацию, что и твой RSS-файл, название твоего канала должно быть таким же, как и название сайта. | GoUpstate.com News Headlines |
ссылка | URL-адрес веб-сайта HTML, соответствующий каналу. | http://www.goupstate.com/ |
описание | Фраза или приговор, описывающий канал. | Последние новости GoUpstate.com, сайт Спартанбургского геральд-журнала. |
Это список дополнительных элементов канала.
Элемент | Описание | Пример |
язык | Язык, на котором написан канал. Это позволяет агрегаторам группировать все сайты итальянского языка, например, на одной странице. Список возможных значений для этого элемента, предоставленный Netscape, представлен здесь. Также можно использовать значения, определенные W3C. | en-US, fr-FR |
авторское право | Уведомление об авторском праве на содержимое канала. | Авторское право 2002, Spartanburg Herald-Journal |
managingEditor | Адрес электронной почты лица, ответственного за редакционное содержание. | geo@herald.com (Георгий Матески) |
веб-мастер | Адрес электронной почты лица, ответственного за технические проблемы канала. | betty@herald.com (Бетти Гернси) |
РекламаДата | Дата публикации содержания канала. Например, ежедневно публикуя The New York Times, дата публикации меняется каждые 24 часа. Именно тогда меняется реклама канала. Все даты и время RSS соответствуют Спецификации даты и времени RFC 822, за исключением того, что год может быть представлен двумя или четырьмя символами (желательно четырьмя). | Сат, 07 сен. 2002 г. 00:00:01 GMT |
lastBuildDate | Последняя дата изменения содержания канала. | Сат, 07 сен. 2002 г. 09:42:31 GMT |
категория | Указывает категорию или несколько категорий, которым соответствует канал. Следует тем же правилам, что и элемент категории уровня <item>. Подробнее. | <category> Газеты </category> |
генератор | Строка, указывающая программу, используемую для создания канала. | MightyInHouse Content System v2.3 |
доки | URL-адрес, указывающий на документацию формата, используемого для RSS-файла. Вероятно, это указатель на этой странице. Это для людей, которые через 25 лет отсюда запинают на RSS-файл на сервере и задаются вопросом, что это такое. | http://cyber.law.harvard.edu/tech/rss |
облако | Позволяет процессам сохранять в облаке уведомления об обновлениях канала, реализуя легкий протокол RSS-канала публикации-подписки. Подробнее здесь. | <cloud domain =» rpc.sys.com» port =» 80» path = «/RPC2 »registerProcedure =» pingMe» protocol =» soap »/> |
ttl | ttl - это срок службы. Это число минут, показывающее, как долго канал может храниться в кэше перед обновлением в источнике. Больше информации здесь. | <ttl> 60 </ttl> |
изображение | Указывает изображение GIF, JPEG или PNG, которое не может отображаться вместе с каналом. Больше информации здесь. | |
рейтинг | Ребро ПИКС для канала. | |
textInput | Указывает поле ввода текста, которое не может отображаться с каналом. Больше информации здесь. | |
skipHors | Подсказка для агрегаторов, указывающая, сколько часов можно пропустить. Больше информации здесь. | |
skipDays | Подсказка для агрегаторов о том, сколько дней можно пропустить. Больше информации здесь. |
<cloud domain =» rpc.sys.com» port =» 80» path = «/RPC2 »registerProcedure =« myCloud.rssPleaseNotify »protocol =» xml-rpc »/>
Канал может содержать любое число <item> s. Элемент может представлять «историю» - скорее, как газетный или журнальный рассказ; чтобы его описание было синопсисом истории, а связь указывала на всю историю. Элемент также может быть полным, поэтому его описание содержит текст (HTML-кодированный объект разрешен, см. примеры), а ссылка и название могут быть опущены. Все элементы элемента являются необязательными, однако должно присутствовать по крайней мере название или описание.
Элемент | Описание | Пример |
титл | Название элемента. | Венецианский кинофестиваль Сортирует в Quit Sinking |
ссылка | URL-адрес объекта. | http://nytimes.com/2004/12/07FEST.html |
описание | Синопсис элемента. | |
автор | Адрес электронной почты автора пункта. Больше. | |
категория | Помещает элемент в одну или несколько категорий. Больше. | |
комментарии | URL-адрес страницы комментариев к элементу. Больше. | |
загон | Описывает медиаобъект, присоединенный к элементу. Больше. | |
guid | Строка, которая уникально идентифицирует элемент. Больше. | |
РекламаДата | Указывает, когда был опубликован элемент. Больше. | |
источник | Канал RSS, откуда взялся элемент. Больше. |
<source url = «http://www.tomalak.org/links2.xml «> Tomalak's Realm </source>
http://www.scripting.com/mp3s/weatherReportSuite.mp3» length = «12216320» type = «audio/mpeg »/>
<category> Grateful Dead </category>
<category domain = «http://www.fool.com/cusips «> MSFT </category>
<pabDate> Sun, 19 мая 2012 15:21:36 GMT </pabDate>
<guid> http ://some.server.com/weblogItem3207 </guid>
<guid isPermaLink = «true «> http ://inessential.com/2002/09/01.php # a2 </guid>
<comments> http ://ekzemplo.com/entry/4403/comments </comments>
<author> lawyer @ boyer.net (Адвокат Бойер) </author>
RSS помещает ограничения на первый символ, не являющийся пробелом, в данные элементов <link> и <url>. Данные в этих элементах должны начинаться с зарегистрированной URI-схемы IANA, например http ://, https ://, news ://, mailto: и ftp ://. До RSS 2.0 спецификация позволяла использовать только http ://и ftp ://, однако на практике остальные схемы URI использовались разработчиками контента и признавались агрегаторами. У агрегаторов могут быть ограничения, когда они узнают схемы URI. Разработчики контента не должны предполагать, что все агрегаторы узнают все схемы.
В RSS 0.91 разные элементы ограничивались 500 или 100 символами. В «канале» 0.91 могло быть не более 15 <объектов>. В RSS 0.92 и выше отсутствует длина строки или ограничение уровня XML. Агенты обработки могут устанавливать собственные ограничения, а генераторы могут иметь опции, указывающие, что в канале может появиться не более определенного числа <item> s или что строки имеют ограниченную длину.
В RSS 2.0 предусмотрена компоновка канала между каналом и идентифицируется в системе каталога, используя функциональность категории на канальном уровне, описанная выше. Например, связывая канал со своим Syndic8 идентификатором, мы включаем элемент категории в качестве элемента <channel>, с доменом «Syndic8», а в качестве значения - идентификатор канала в базе данных Syndic8. Подходящим элементом категории для Script News может быть <category domain = «Syndic8 «> 1765 </category>.
Часто задаваемый вопрос о <guid> s - как они сравниваются с <link> s. Это одно и то же? Да, для одних контентных систем, а не для других. Для некоторых систем <link> является пермяком в пункте блога. Однако в других системах каждый <item> является синопсисом более длинной статьи, <link> указывает на статью, а <guid> - пермяком на запись в веблоге. В любом случае рекомендуется предоставить гид, а по возможности сделать его пермяком. Это позволяет агрегаторам не повторять пункты, даже если были изменения правки.
Если у тебя есть вопросы о формате RSS 2.0, пожалуйста, размести их на форуме RSS2-Support, размещенном Sjoerd Visscher. Это не дискуссионный форум, а ресурс поддержки пользователей, авторов и разработчиков, которые создают и используют контент в формате RSS 2.0.
RSS был создан в 1999 году, с стремлением быть простым и понятным форматом, с относительно скромными целями. После того, как он стал популярным форматом, разработчики захотели расширить его с помощью модулей, определенных в пространствах имен, как указано W3C.
RSS 2.0 добавляет эту возможность, следуя простому правилу. RSS-канал может содержать элементы, не описанные на этой странице, только если эти элементы определены в пространстве имен.
Элементы, определенные в этом документе, сами по себе не являются членами пространства имен, поэтому RSS 2.0 может оставаться совместимым с предыдущими версиями без следующего смысла - файл версии 0.91 или 0.92 - это также действительный файл 2.0. Если бы элементы RSS 2.0 находились в пространстве имен, это ограничение было бы нарушено, поскольку файл версии 0 .9x не мог быть допустимым 2.0.
RSS никак не может быть идеальным форматом, но он очень популярен и широко известен. Иметь установленную спецификацию - это то, что давно было нужно RSS. Цель этой работы - помочь ему стать чем-то стандартным, стимулировать рост рынка, который вокруг него развивается, и расчистить путь для инноваций в новых форматах синдикации. Таким образом, спецификации RSS для всех практических заданий заморожены до версии 2.0.1. Мы планируем возможные версии 2.0.2 или 2.0.3 и т.д. только для необходимости уточнения спецификации, а не добавления новых возможностей в формат. Дополнительная работа может быть сделана на модулях, с использованием пространств имен, и в совершенно новых форматах синдикации, с новыми именами.
RSS 2.0 предлагается компанией Berkman Center for Internet & Society в Гарвардской юридической школе на условиях лицензии Attribute/Share Alike Creative Commons. Автором оригинального документа является Дейв Винер, основатель программного обеспечения UserLand и партнер Центра Беркмана.
Конец перевода
Содержание этого перевода предлагается на условиях лицензии Attribute/Share Alike Creative Commons.