Wszytko o RSS i ATOM



Projekt z Systemy WWW

Co to są RSS/XML/Atom/Syndication?

RSS i Atom są to standardy kanałów informacyjnych, stanowią mniej więcej tą samą rzecz: „dokarmianie” (z ang. feed) pliku RSS aktualnymi danymi.

XML jest główną technologią, na której oba powyższe są zbudowane. Jest to format zapisu RSS/Atom (zgodny ze specyfikacją XML 1.0).

Syndication jest to proces użytkowania RSS/Atom dla automatycznego uaktualniania. Inny sposób na uzyskanie informacji, których potrzebujemy.

Syndication

Jest to sposób na dogrzebanie się do konkretnych informacji. Bez wątpienia każdy ma listę stron WWW przeglądanych przez siebie codziennie w poszukiwaniu uaktualnionych wiadomości, gdziekolwiek by ta lista nie była zapisana, w notatniku czy też w głowie. Jeśli ładując 20 lub 30 stron na dzień, znajduje się tylko parę uaktualnień, automatycznie zaprzestaje się sprawdzania ich kolejny raz.

Gdyby można było uzyskać informację za każdym razem, że dana strona została zaktualizowana, nie traciłoby się wtedy czasu na sprawdzanie tych, które pozostały niezmienione. Zamiast ładowania 30 stron na dzień, wystarczyłoby na przykład tylko 13. Oszczędzając połowę swojego czasu zostałby nam czas na sprawdzanie większej ilości stron. W ten sposób ich ilości podwoiłaby się dwukrotnie.

Rozwinięcie akronimu RSS

Spotyka się kilka rozwinięć akronimu RSS. Najczęściej spotykane to:

  1. Really Simple Syndication (Bardzo Prosta Syndykacja – w tym wypadku dosłowne tłumaczenie jest niezbyt trafne).
  2. RDF Site Sumary (streszczenie strony w formacje RDF).
  3. Rich Site Summary
  4. Rich Site Syndication
  5. Rich Syndication Standard

O RSS można śmiało mówić jako o łatwej dystrybucji treści. Umożliwia on łatwą prezentację nagłówków informacji przedstawianych na stronie WWW oraz zapewnia łatwą i tanią reklamę twórcom stron WWW, a ich odbiorcom dużą wygodę korzystania z Internetu.

Na czym polega RSS i z niego korzystanie?

Do korzystania z dokumentów RSS nie jest konieczne używanie wyspecjalizowanych aplikacji, wystarczy zwykła przeglądarka WWW. Z punktu widzenia użytkownika sieć ta oferuje wygodną formę przeglądania wiadomości pojawiających się codziennie na dziesiątkach interesujących nas serwisów internetowych, stron WWW. Wystarczy otworzyć w przeglądarce jeden dokument lub uruchomić jedną aplikację, aby przejrzeć zawsze aktualne nagłówki wiadomości. Jeżeli interesuje nas coś bardziej, wystarczy kliknąć dany odsyłacz i pobrać pełną informację. Oszczędza nam to wiele czasu przy otwieraniu dziesiątek stron i zaśmiecania skrzynki pocztowej.

Dokumenty RSS są przystosowane głównie do przechowywania dwóch skorelowanych ze sobą informacji: krótkiego nagłówka z opisem, charakteryzującego treść wiadomości, oraz odsyłacza do jej oryginalnego źródła. Serwisy internetowe nie tracą odwiedzających, wręcz zyskują nowych. Dzieje się tak, ponieważ plik RSS nie zawiera całych wiadomości/artykułów, lecz tylko nagłówki z krótkimi opisami. W celu uzyskania dalszych informacji koniecznie jest przejście do strony źródłowej z danymi, poprzez odnośniki. Użytkownicy w jednym miejscu znajdują wszystkie interesujące ich informacje na zasubskrybowany przez siebie temat. Bardzo ułatwia to korzystanie z Internetu w celu poszukiwania konkretnych danych, czy też śledzenie konkretnego tematu. Inną opcją jest możliwość znalezienia w jednym miejscu nagłówków wszystkich informacji publikowanych na swoich ulubionych serwisach internetowych.

Tworzenie pliku RSS

Stworzenie dokumentu RSS, także automatycznie, może być stosunkowo proste. Istnieje możliwość tworzenia ręcznie pliku i tak się robi, jeżeli witryny WWW są małe i rzadko się zmieniają (jeżeli strony nie zmieniają się w ogóle lub prawie wcale praktycznie wcale nie korzystają na technologii RSS).

Jeżeli natomiast zawartość stron WWW zmienia się dosyć często, można wspomóc się np. sieciowymi generatorami i walidatorami plików RSS. Jednym z darmowych programów do tworzenia kanałów RSS jest RSS Builder dostępny w wersji 1.5x (opis:
http://webmaster.helion.pl/kurshtml/rss/rssbuilder.htm).

W przypadku, gdy informacje zmieniają się na witrynach np. codziennie, konieczne jest zaprojektowanie pewnego mechanizmu, który zmiany plików RSS zautomatyzuje (do tego celu nadają się m.in. technologie takie jak: PHP, ASP, CGI). Należy wtedy jednak w drobny sposób zmienić kod źródłowy danej witryny i dodać znaczniki, które wskażą generatorowi RSS miejsca, z których ma czerpać nowe nagłówki i opisy wiadomości.

Zanim ogłosi się istnienie komukolwiek swojego pliku RSS warto sprawdzić poprawność kodu, który umieszczony jest w pliku. Dostępne są odpowiednie validatory, np. na stronie Userland.com (http://aggregator.userland.com/validator) czy Feeds Archive (http://feeds.archive.org/validator).

Generowanie i parsowanie plików RSS

Chociaż RSS jest prostym formatem XML, parsowanie i wydobywanie danych z dokumentu XML ukrytego gdzieś na sieci może być skomplikowane lub przynajmniej nużące –jeśli trzeba wykonywać to wiele razy. RSS Utilities Package wpływa na Custom Tag i technologię parsowania, by uczynić „Real Simple Syndication” adekwatnie prostym do jego nazwy.

Wygląd pliku RSS

Aby zrozumieć co zawiera w sobie plik RSS powinno znać się chociaż podstawy XML-a. Jednak struktura takiego pliku jest stosunkowo prosta i można go stworzyć zazwyczaj poprawnie, wzorując się na działającym już (stworzonym przez kogoś innego) dokumencie RSS, nie koniecznie znając XML.

RSS jak każdy inny plik XML zbudowany jest hierarchicznie z wykorzystaniem kilku standardowych znaczników.

Oto przykład pliku RSS:

<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>EiT News</title>
    <link>http://eit.agh.edu.pl/akt/wszystkie</link>
    <description>Aktualnosci ze strony kierunku 
    Elektronika i Telekomunikacja EAIiE AGH</description>
    <language>pl-PL</language>
    <copyright>Wszystkie prawa zastrzezone (c) 2005 KT AGH</copyright>
    <managingEditor>eiteam@eit.agh.edu.pl</managingEditor>
    <webMaster>tompaw@irc.pl</webMaster>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <ttl>15</ttl>
    <item>
       <title>Odwołany wykład z JOS</title>
       <link>http://eit.agh.edu.pl/akt/904</link>
       <guid>http://eit.agh.edu.pl/akt/904</guid>
       <description>W najbliższy poniedziałek (23 maja), 
       z powodu wyjazdu na szkolenie, wykład z Języków Opisu Sprzętu
       nie odbędzie się.</description>
       <pubDate>Tue, 17 May 2005 21:24:06 +0200</pubDate>
    </item>
    <item>
       <title>Wyniki testu na praktyki w ALDEC/ALATEK</title>
       <link>http://eit.agh.edu.pl/akt/903</link>
       <guid>http://eit.agh.edu.pl/akt/903</guid>
       <description>http://www.fccm.agh.edu.pl/dydaktyka/
       Praktyki_2005.htm#Harmonogram</description>
       <pubDate>Tue, 17 May 2005 21:21:00 +0200</pubDate>
    </item>
        ...
        ...
        ...
    <item>
       <title>Next Generation IP Networks</title>
       <link>http://eit.agh.edu.pl/akt/902</link>
       <guid>http://eit.agh.edu.pl/akt/902</guid>
       <description>Przypominam, ze w przyszlym tygodniu 
       (wtorek 24.05 o godzinie 8:00) odbedzie sie kolokwium 
       zaliczeniowe z NGIPN, na ktore wszystkich serdecznie 
       zapraszam ;-)</description>
    </item>
  </channel>
</rss>


Struktura pliku RSS

Zgodnie z początkową deklaracją <?xml version="1.0"? encoding="ISO_8859-2"> jest to dokument sformatowany zgodnie z regułami XML.

Podstawową zasadą jest, że każdy otwarty znacznik musi zostać również zamknięty. W drugiej linijce określamy wersję RSS, np. <rss version="0.91"> z której korzystamy. Jest to jednocześnie znacznik otwierający dla całej listy RSS, która zakończona jest przez </rss>

Znacznik <channel>...</chanel> zawiera w sobie 'kanał' informacji (właściwe dane dotyczące naszego kanału), czyli po prostu całą listę. W pliku RSS może być tylko jeden taki 'kanał'. Poniżej przedstawione zostaną elementy kanału. Elementy obowiązkowe to:
<title>...</title> - tytuł kanału, serwisu;
<link>...</link> - link do serwisu;
<description>...</description> - charakterystyka serwisu.


Elementy opcjonalne to np.:
<language>...</language> - określenie wersji językowej;
<copyright>...</copyright> - prawa autorskie;
<managingEditor>...</managingEditor> - kontakt z redaktorem;
<pubDate>...</pubDate> - data wygenerowania pliku RSS, tzn data publikacji;
<image>…</image> - zazwyczaj zawiera logo strony.


Specyfikacja RSS przewiduje również użycie znacznika textinput, który pozwala umieścić w kanale formularz umożliwiający przesyłanie zapytań do strony wystawiającej RSS oraz znacznik image zawierający informację o logo witryny.

Wreszcie, najważniejsza rzecz, czyli treść. Każda wystawiana informacja zawiera się między znacznikami <item>...</item>. W pliku kanału może znajdować się maksymalnie 15 pozycji, każda składająca się obowiązkowo z:
<title>...</title> - tytuł artykułu;
<link>...</link> - bezpośredni link do artykułu na stronie domowej kanału.

Znaczniki opcjonalne to m.in.:
<description>...</description> - krótkie wprowadzenie do artykułu;
<autor>...</autor> - adres E-mail autora konkretnego <item>.



Standardy RSS

Standardy RSS podzielić można na 2 grupy: 0.91/0.92 i 2.x. W przypadku prostych nagłówków artykułów różnice między funkcjami oferowanymi przez poszczególne edycje RSS są raczej symboliczne. RSS 0.91/0.92/2.x jest często mylony z RSS 1.0 (RDF Site Sumary).


Poniżej przedstawiamy niektóre ze standardów:

RSS 0.91 - Jest najbardziej rozpowszechnioną wersją RSS i najszerzej obsługiwanym formatem RSS w Internecie. Przykład pliku RSS w tej wersji można znaleźć na stronie
http://cyber.law.harvard.edu/blogs/gems/tech/sampleRss091.xml.Takie znaczki RSS 0.91 możemy spotkać umieszczone na stronach WWW. Oznaczają one, że po kiknięciu na nie otwiera się dokument w standardzie RSS 0.91.(czerwiec 2000)

RSS 2.0 - Jest następcą standardu 0.91. Każdy plik formatu 0.91 jest również poprawnym plikiem wersji 2.0 - wystarczy zmienić numer wersji w nagłówku (czyli wersja 2.0 jest kompatybilna w tył). Przykład pliku RSS w tej wersji można znaleźć na stronie http://cyber.law.harvard.edu/blogs/gems/tech/rss2sample.xml. Zaletą wersji 2.0 jest usunięcie ograniczeń w długości pól, przede wszystkim Description. Tu dostępna jest specyfikacja tego standardu: http://blogs.law.harvard.edu/tech/rss. Takie znaczki RSS 2.0 możemy spotkać umieszczone na stronach WWW. Oznaczają one, że po kiknięciu na nie otwiera się dokument w standardzie RSS 2.0.

RSS 1.0 - Powstał na specyfikacji RDF (Rich Data Format) stworzonej przez Word Wide Web Consortium (W3C). W przypadku tej wersji skrót RSS rozwija się jako RDF Site Summary. Praktyczne różnice w porównaniu do wersji 0.91 czy 2.0 są raczej semantyczne, a dodatkowo oparcie o RDF wymaga dłuższego kodu, czego rezultatem będą większe pliki. Takie znaczki RSS 1.0 możemy spotkać umieszczone na stronach WWW. Oznaczają one, że po kiknięciu na nie otwiera się dokument w standardzie RSS 1.0.

Zalety RSS

- Korzystając z plików RSS można zebrać w jednym miejscu informacje z wielu źródeł na konkretne, interesujące nas tematy.
- Nie trzeba oglądać wielu reklam (pliki RSS rzadko zawierają reklamy) i ładować ciężkich stron ze zbędnymi informacjami przed dotarciem do tego, co nas interesuje. Dzięki plikom RSS omijamy spam!
- Korzystając z plików RSS nie trzeba ściągać na własny komputer nic więcej, niż "spis treści" wybranych serwisów internetowych - dlatego akronim RSS rozwija się również na Rich Site Summary (Rozszerzony Spis Treści Serwisu).
- Czytniki są niezastąpione, jeśli korzystamy z Internetu poprzez urządzenia bezprzewodowe, jak telefony komórkowe czy palmtopy, gdzie liczy się mały rozmiar ściąganych plików.

Czytniki RSS

1. Informacje ogólne
Tak zwane czytniki (z ang. news readers lub aggregators) są to programy lub strony internetowe, które automatycznie sprawdzają listę ulubionych stron użytkownika (którą użytkownik musi ustawić samemu wcześniej, tylko raz) i powiadamiają go o nowościach pojawiających się na tych stronach. Czyli czytnik działa jak przerobiona gazeta. Użytkownik może ściągnąć różnorodnej treści wiadomości z rosnącej liczby źródeł w jedno miejsce, by później przeczytać je w wybrany przez siebie sposób. Jedynym warunkiem jest to, by źródło zapewniało „feed”, a wiele z nich zapewnia.

Czytnik RSS pozwala wczytywać nagłówki wiadomości publikowanych w kanałach informacyjnych dostępnych w Internecie. Nagłówek zawiera skrót informacji i odsyłacz do pełnej informacji znajdującej się w serwisie prowadzonym przez wydawcę kanału (może być nim każda osoba prowadząca serwis WWW). Czytnik RSS pozwala śledzić wiele kanałów jednocześnie. Zazwyczaj program jest dostarczany z predefiniowaną listą kanałów, ale użytkownik może dołączać do nich nowe kanały, organizując je w grupy tematyczne.

Zaletą czytnika RSS jest możność śledzenia w jednym interfejsie bieżących informacji pochodzących z wielu źródeł jednocześnie i wczytywania tych, które są dla czytelnika interesujące. Wszystkie czytniki potrafią wyświetlać strony WWW z pełnymi wiadomościami w swoim interfejsie i nie wymagają uruchamiania przeglądarki internetowej.

Ze względu na to, że na rynku konkurują ze sobą dwa formaty kanałów - RSS i Atom - niektóre czytniki RSS wprowadzają także obsługę formatu Atom.

Wyróżnia się samodzielne czytniki RSS oraz wtyczki (plugin) do innych programów, przede wszystkim przeglądarek internetowych i programów pocztowych.


2. Wtyczki
Przykładami wtyczek są:
- rozszerzenia do przeglądarki Firefox (Sage);
- czytnik wbudowany w przeglądarkę Opera;
- czytniki wbudowane w programy pocztowe Thunderbird, Evolution;
- rozszerzenie zawarte w programie narzędziowym Desktop Sidebar;


3. Zakładki
Firefox od wersji 1.0 posiada obsługę RSS/Atom w formie zakładek. Jeżeli na danej witrynie pojawi się nowa wiadomość, Firefox natychmiast automatycznie umieszcza ją wewnątrz foldera Zakładek. Nie trzeba więc odwiedzać danej strony, by sprawdzić czy na stronie jest coś nowego, wystarczy zaglądnąć tylko do swoich zakładek. Niestety niektóre programy niepoprawnie wyświetlają polskie litery w nagłówkach.


4. Przykładowe czytniki
- CLIPER (część pakietu narzędzi, program bezpłatny) -
www.cliper.pl;
- RSS Bandit (wymagany MS.NET) - www.rssbandit.org;
- Desktop Sidebar (część pakietu narzędzi) - www.desktopsidebar.com;
- FeedExpress (wymagany MS.NET Framewotrk) - www.cramon.dk/feedexpress.asp;
- FeedReader - www.feedreader.com;
- Headline Viewer - www.headlineviewer.com;
- RssReader (wymagany MS.NET Framewotrk) - www.rssreader.com;
- SharpReader (wymagany MS.NET Framewotrk) - www.sharpreader.net;
- Opera 8 (przeglądarka internetowa z wbudowanym czytnikiem RSS) - www.opera.com;
- FeedDemon - www.bradsoft.com;
- Bloglines - www.bloglines.com;


5. Problemy
- Obsługa polskich liter
- Formaty kanałów (Atom, RSS 0.90/1.0 i RSS 0.91/0.92/2.0)
- Sposoby abonowania kanałów
- Rozpoznawanie kanałów na stronie internetowej
- Import i eksport danych o kanałach (OPML)
- Wyszukiwarka kanałów w Internecie
- Kategoryzacja kanałów w czytniku
- Wbudowany podgląd wiadomości
- Wyszukiwanie wiadomości według słów kluczowych
- Aktualizacja kanałów
- Predefiniowane kanały
- Usuwanie starych wiadomości


Listy RSS

W poszukiwaniu list RSS pomagają nam przede wszystkim ich katalogi, jak np.:
-
Syndic8.com
- NewsIsFree.com

Niektóre przydatne strony WWW:
- katalog polskich kanałów RSS
- katalog stron RSS z czytnikiem OnLine
- Polskie Centrum RSS

Pomocne są także znaczki: XML lub RSS umieszczone na stronach WWW, po kliknięciu na nie otwiera się dokument XML (RSS) o prostej i czytelnej nawet dla człowieka strukturze.

Żródła

http://www.nethut.pl/artykul/122
http://blogs.law.harvard.edu/tech/rss#whatIsRss
http://rss.mrok.org/
http://pl.wikipedia.org/wiki/Czytnik_RSS
http://www.mezzoblue.com/subscribe/
http://www.mezzoblue.com/archives/2004/05/19/what_is_rssx/
http://www.mezzoblue.com/archives/2003/11/05/plugging_the/

© Łukasz Jezierski 2005 · Ostatnia aktualizacja: 08.05.2005r