RSS: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m Riportata alla revisione precedente di .mau.
 
(361 versioni intermedie di oltre 100 utenti non mostrate)
Riga 1:
{{nota disambigua}}
'''RSS''' ([[acronimo]] di ''RDF Site Summary'') è uno dei più popolari formati per la distribuzione di contenuti [[World Wide Web|Web]]; è basato su [[XML]], da cui ha ereditato la semplicità, l'estensibilità, la flessibilità.
{{Formato file
| nome = RSS
| logo = Feed-icon.svg
| immagine =
| didascalia =
| estensione = .rss, .xml
| mime = application/rss+xml
| typecode =
| sviluppatore = [[Netscape]]
| proprietario =
| licenza =
| data_pubblicazione =
| ultima_versione =
| data_ultima_versione =
| genere = [[Feed]]
| estensione_di = [[XML]]
| esteso_a =
| standard =
| aperto =
| sito =
}}
'''RSS''' (sigla di ''[[Resource Description Framework|RDF]] Site Summary''<ref>{{en}} [http://web.resource.org/rss/1.0/ RDF Site Summary (RSS) 1.0] {{Webarchive|url=https://web.archive.org/web/20081022105748/http://web.resource.org/rss/1.0/ |data=22 ottobre 2008 }}</ref>, spesso riportato come ''Really Simple Syndication''<ref>{{en}} [http://feed2.w3.org/docs/rss2.html RSS 2.0 specification] {{Webarchive|url=https://web.archive.org/web/20120807072852/http://feed2.w3.org/docs/rss2.html |data=7 agosto 2012 }}</ref> o ''Rich Site Summary'') è uno dei più popolari formati per la distribuzione di contenuti [[World Wide Web|Web]]; è basato su [[XML]], da cui ha ereditato la semplicità, l'estensibilità e la flessibilità. L'applicazione principale per cui è noto sono i [[feed|flussi]] che permettono di essere aggiornati su nuovi articoli o commenti pubblicati nei siti di interesse senza doverli visitare manualmente a uno a uno.
 
RSS definisce una struttura adatta a contenere un insieme di notizie, ciascuna delle quali sarà composta da vari campi (nome autore, titolo, testo, riassunto, ...). Quando si pubblicano delle notizie in formato RSS, la struttura viene aggiornata con i nuovi dati; visto che il formato è predefinito, un qualunque lettore RSS potrà presentare in una maniera omogenea notizie provenienti dalle fonti più diverse.
== Un po' di storia ==
RSS fu lanciato per la prima volta da [http://www.netscape.com/ Netscape]. Si trattava di un formato derivato da [[RDF]] (un linguaggio generico per rappresentare informazioni su Web) per la gestione dei contenuti del [[portale]] [http://my.netscape.com/ My Netscape Network]: il formato permetteva la visualizzazione sul portale di ''headline'' e link relativi a notizie pubblicate su altri siti e rese disponibili attenendosi a specifiche ben precise.
Fu subito un grande successo: in breve, centinaia di fornitori di contenuti aderirono all'iniziativa e il portale My Netscape poté beneficiare di una vasta raccolta di notizie a disposizione dei propri utenti registrati.
 
== Sviluppo ==
Nel frattempo, lo stesso formato (e le sue variazioni successive) fu adottato progressivamente dalla comunità dei [[Blog|blogger]]: i ''[[post]]'' di un [[blog]] potevano essere facilmente esportati in RSS, in modo da essere resi disponibili a servizi di raccolta di contenuti. La popolarità dei blog è forse una delle ragioni principali del successo di RSS: migliaia di ''weblog'' iniziarono a produrre contenuti in RSS e iniziarono a proliferare siti che raccoglievano una selezione di post dai blog più seguiti (i cosiddetti ''blog aggregator'') e programmi per fruire i contenuti di un blog direttamente sul proprio desktop o su altri dispositivi (RSS reader).
Fu lanciato per la prima volta da [[Netscape Communications]]. Si trattava di un formato derivato da [[Resource Description Framework|RDF]] (un linguaggio generico per rappresentare informazioni su Web) per la gestione dei contenuti del [[portale web]] [http://my.netscape.com/ My Netscape Network] {{Webarchive|url=https://web.archive.org/web/20190828132932/http://my.netscape.com/ |date=28 agosto 2019 }}: il formato permetteva la visualizzazione sul portale di ''headline'' e link relativi a notizie pubblicate su altri siti e rese disponibili attenendosi a specifiche ben precise. Fu subito un grande successo: in breve, centinaia di fornitori di contenuti aderirono all'iniziativa e il portale My Netscape poté beneficiare di una vasta raccolta di notizie a disposizione dei propri utenti registrati.
 
Nel frattempo, lo stesso formato (e le sue variazioni successive) fu adottato progressivamente dalla comunità dei [[blog]]ger: i ''[[post]]'' di un [[blog]] potevano essere facilmente esportati in RSS, in modo da essere resi disponibili a servizi di raccolta di contenuti. La popolarità dei blog è forse una delle ragioni principali del successo di RSS: migliaia di ''[[weblog]]'' iniziarono a produrre contenuti in RSS e iniziarono a proliferare siti che raccoglievano una selezione di post dai blog più seguiti (i cosiddetti ''blog aggregator'') e programmi per fruire i contenuti di un blog direttamente sul proprio desktop o su altri dispositivi (lettori RSS).
Oggi RSS è lo [[Standard_%28informatica%29|standard]] ''[[de facto]]'' per l'esportazione di contenuti Web. I principali siti di informazione, i quotidiani online, i fornitori di contenuti, i blog più popolari: tutti sembrano aver adottato il formato RSS. Gli utenti possono oggi accedere a migliaia di feed RSS: alcuni siti (directory) raccolgono i riferimenti agli innumerevoli feed RSS disponibili sul Web..
 
Attualmente RSS è lo [[Standard (informatica)|standard]] ''[[de facto]]'' per l'esportazione di contenuti Web. I principali siti di informazione, i quotidiani online, i fornitori di contenuti, i blog più popolari: tutti sembrano aver adottato il formato RSS. Gli utenti possono oggi accedere a migliaia di flussi RSS: alcuni siti (directory) raccolgono i riferimenti agli innumerevoli flussi RSS disponibili sul Web.
== Un formato, tanti “dialetti” ==
Il formato inizialmente adottato da Netscape era una semplificazione del primo ''draft'' proposto dal [[W3C]]. Netscape denominò la versione 0.9: mentre la proposta del W3C era del tutto conforme a RDF, la versione di Netscape ne eliminava gli aspetti più complessi, ed era totalmente slegato da esso.
 
L'utente finale infatti ''sfrutta'' la tecnologia RSS attraverso due macro-tipologie di software. L'una, quella dei lettori di Feed RSS, l'altra quella degli aggregatori, che - appunto - aggregano attraverso algoritmi specifici le notizie provenienti dalle più disparate fonti RSS.
Nel [[2000]] il W3C ha pubblicato la prima versione ufficiale di RSS (versione 1.0): la versione era conforme a [[RDF]], integrava la possibilità di estendere il formato con nuovi moduli e il supporto ai namespace [[XML]].
Quasi contemporaneamente, Dave Winer ([[CEO]] di Userland Software, società produttrice del popolare ''blog publisher'' [http://radio.userland.com/ Radio Userland]), ha rilasciato una versione di RSS, figlia del formato utilizzato da Netscape, denominata 0.92.
A causa della popolarità del formato adottato da Netscape prima, e da Userland poi, il formato 0.92 ha iniziato a convivere accanto a quello proposto dal W3C. I due formati sono incompatibili (sebbene i principali feed reader siano in grado di interpretarli entrambi correttamente).
 
== Un formato, tanti "dialetti" ==
Il formato 0.92 è stato ulteriormente perfezionato nella versione 2.0 (rilasciato da Userland nel [[2002]]).
Il formato inizialmente adottato da Netscape era una semplificazione del primo ''draft'' proposto dal [[W3C]]. Netscape denominò la versione 0.9: mentre la proposta del W3C era del tutto conforme a [[Resource Description Framework|RDF]], la versione di Netscape ne eliminava gli aspetti più complessi, ed era totalmente slegato da esso.
Di fatto, oggi abbiamo a che fare con almeno tre differenti “dialetti”, tutti ugualmente diffusi:
 
* '''RSS 0.92''': il più vecchio tra gli standard oggi in uso, evoluzione del formato usato originariamente da Netscape;
Nel [[2000]] il W3C ha pubblicato la prima versione ufficiale di RSS (versione 1.0): la versione era conforme a RDF, integrava la possibilità di estendere il formato con nuovi moduli e il supporto ai namespace [[XML]]. Quasi contemporaneamente, Dave Winer ([[Amministratore delegato|CEO]] di Userland Software, società produttrice del popolare ''blog publisher''Radio Userland), ha distribuito una versione di RSS, figlia del formato utilizzato da Netscape, denominata 0.91. A causa della popolarità del formato adottato da Netscape prima, e da Userland poi, il formato 0.91 ha iniziato a convivere accanto a quello proposto dal [[W3C]]. I due formati sono incompatibili (sebbene i principali ''feed reader'' siano in grado di interpretarli entrambi correttamente).
* '''RSS 2.0''': rilasciato da Userland nel 2002, è l'evoluzione del formato 0.92, di cui eredita la semplicità, ma a cui aggiunge il supporto per moduli aggiuntivi;
 
* '''RSS 1.0''': è il formato ufficiale del W3C, conforme ad RDF, estensibile e modulare.
Il formato 0.91 si è evoluto perdendo alcune limitazioni nella versione 0.92 ed è stato ulteriormente perfezionato nella versione 2.0 (distribuito da Userland nel [[2002]]).
Di fatto, abbiamo a che fare con almeno tre differenti "dialetti":
* '''RSS 0.91''': il più vecchio tra gli standard oggi in uso, diretta evoluzione del formato usato originariamente da Netscape. In alcuni casi si è preferito usare il successivo RSS 0.92;
* '''RSS 2.0''': distribuito da Userland nel 2002, è l'evoluzione del formato 0.92, di cui eredita la semplicità, ma a cui aggiunge il supporto per moduli aggiuntivi;
* '''RSS 1.0''': è il formato ufficiale del [[W3C]], conforme ad RDF, estensibile e modulare.
 
Chi produce contenuti da distribuire in formato RSS è così costretto a scegliere quale versione utilizzare o, come avviene nella maggior parte dei casi, a esportare i propri contenuti in tutti i formati disponibili.
 
Nonostante le differenti implementazioni delle diverse versioni, i documenti RSS condividono tutti la stessa struttura di base, che prevede:
* un elemento <ttkbd><channel></ttkbd>, che contiene le informazioni sulla fonte dei contenuti (nel caso di un [[quotidiano]] online potrebbe contenere il nome della testata, la data di pubblicazione, informazioni sul [[copyright]], ecc.)
* una serie di elementi <ttkbd><item></ttkbd>, ognuno dei quali corrisponde ad un singolo elemento di contenuto (ad es. l'articolo di un giornale) e ne presenta tutte le informazioni (titolo, testo completo, nome dell'autore, ecc.)
 
=== RSS 0.92 ===
RSS 0.92 è stato stato sviluppato da Dave Winer (di Userland Software) nel 2000. Si tratta di un'espansione del formato originale (RSS 0.91, il più usato) che aggiunge alcuni elementi addizionali e specificarimuove alcuni limiti per gli elementi imposti nella versione precedente.
 
Gli elementi addizionali permettono l'implementazione di funzionalità che consentono l'iscrizione al ''feed'' (per ricevere notifiche automatiche quando il ''feed'' viene aggiornato).
 
=== RSS 2.0 ===
RSS 2.0 è un'evoluzione del formato 0.92 (e, a detta dell'autore Dave Winer, non subirà ulteriori variazioni future). In particolare sono presenti alcuni utili elementi aggiuntivi (<ttkbd><comments></ttkbd>, <ttkbd><author></ttkbd>, <ttkbd><ttl></ttkbd>, <ttkbd><guid></ttkbd>) ed è pienamente supportata la modularizzazione (e la conseguente espandibilità) attraverso [[namespace]] [[XML]].
 
Ogni documento RSS 0.92 è anche un documento RSS 2.0 valido.
Line 44 ⟶ 67:
 
=== Storia di RSS e della sua compatibilità ===
Nel maggio del 1999 la Netscape rilasciòcommercializzò RSS 0.90. RSS 0.90 appare così:
 
Esempio 1. RSS 0.90
<syntaxhighlight lang="xml">
 
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://my.netscape.com/rdf/simple/0.9/">
<channel>
<title>Mozilla Dot Org</title>
<link>http://www.mozilla.org</link>
<description>the Mozilla Organization web site</description>
</channel>
<image>
<title>Mozilla</title>
<url>http://www.mozilla.org/images/logo.gif</url>
<link>http://www.mozilla.org</link>
</image>
<item>
<title>New Status Updates</title>
<link>http://www.mozilla.org/status/</link>
</item>
</rdf:RDF>
</syntaxhighlight>
 
Nel Giugno delgiugno 1999, Netscape rilasciòcommercializzò RSS 0.91. RSS 0.91 fu intenzionalmente incompatibile con RSS 0.90. Netscape eliminò la sintassi RDF compatibile èe riprogettò RSS per essere puro XML. Aggiunsero anche un [[Document Type Definition|DTD]] che definiva diverse entità permesse.
 
RSS 0.91 di Netscape appare così:
Esempio 2. Netscape RSS 0.91
<syntaxhighlight lang="xml">
 
<!DOCTYPE rss SYSTEM "http://my.netscape.com/publish/formats/rss-0.91.dtd">
<rss version="0.91">
<channel>
<title>Example Channel</title>
<link>http://example.com/</link>
<description>an example feed</description>
<language>en</language>
<rating>(PICS-1.1 "http://www.classify.org/safesurf/" l r (SS~~000 1))</rating>
<textinput>
<title>Search this site:</title>
<description>Find:</description>
<name>q</name>
<link>http://example.com/search</link>
</textinput>
<skipHours>
<hour>0</hour>
</skipHours>
<item>
<title>1 &lt;< 2</title>
<link>http://example.com/1_less_than_2.html</link>
<description>1 &lt;< 2, 3 &lt;< 4.
In HTML, &lt;b&gt; starts a bold phrase
and you start a link with &lt;<a href=
</description>
</item>
</channel>
</rss>
</syntaxhighlight>
 
Nel giugno del 2000, Userland prese la specifica RSS di Netscape, rimosse le dichiarazioni di copyright della Netscape inserendone di proprie, fece dei cambiamenti incompatibili, chiamò questa RSS 0.91, sostenendo che fosse compatibile con l'RSS 0.9190 di Netscape.
 
l'RSS 0.91 di Userland appare così:
Esempio 3. RSS 0.91 di Userland
<syntaxhighlight lang="xml">
 
<rss version="0.91">
<channel>
<title>Example Channel</title>
<link>http://example.com/</link>
<description>an example feed</description>
<language>en</language>
<rating>(PICS-1.1 "http://www.classify.org/safesurf/" l r (SS~~000 1))</rating>
<textInput>
<title>Search this site:</title>
<description>Find:</description>
<name>q</name>
<link>http://example.com/search</link>
</textInput>
<skipHours>
<hour>24</hour>
</skipHours>
<item>
<title>1 &lt;< 2</title>
<link>http://example.com/1_less_than_2.html</link>
<description>1 &lt;< 2, 3 &lt;< 4.
In HTML, &lt;b&gt; starts a bold phrase
and you start a link with &lt;<a href=
</description>
</item>
</channel>
</rss>
</syntaxhighlight>
 
RSS 0.91 di Userland è incompatibile con quello di Netscape per diverse cose (in questo elenco sarà sottointesosottinteso "RSS 0.91", indicando le 2 diverse specifiche con l'azienda che le ha prodotte):
 
1.# Netscape dice che <hour>, dentro <skipHours> va da 0 a 23. Userland invece va da 1 a 24.
2.# Netscape contiene l'elemento "textinput". Userland contiene invece l'elemento "textInput". Essendo XML case-sensitive, questi sono elementi nettamente diversi.
3.# Netscape usa un [[Document Type Definition|DTD]] che permette di usare 96 entità: [[Spazio unificatore|&amp;nbsp;]],<nowiki> &iexcl;¡, &cent;¢, &pound;£, &curren;¤, &yen;¥, &brvbar;¦, &sect;§, &uml;¨, &copy;©, &ordf;ª, &laquo;«, &not;¬, &shy;-, &reg;®, &macr;¯, &deg;°, &plusmn;±, &sup2;², &sup3;³, &acute;´, &micro;µ, &para;, &middot;·, &cedil;¸, &sup1;¹, &ordm;º, &raquo;», &frac14;¼, &frac12;½, &frac34;¾, &iquest;¿, &Agrave;À, &Aacute;Á, &Acirc;Â, &Atilde;Ã, &Auml;Ä, &Aring;Å, &AElig;Æ, &Ccedil;Ç, &Egrave;È, &Eacute;É, &Ecirc;Ê, &Euml;Ë, &Igrave;Ì, &Iacute;Í, &Icirc;Î, &Iuml;Ï, &ETH;Ð, &Ntilde;Ñ, &Ograve;Ò, &Oacute;Ó, &Ocirc;Ô, &Otilde;Õ, &Ouml;Ö, &times;×, &Oslash;Ø, &Ugrave;Ù, &Uacute;Ú, &Ucirc;Û, &Uuml;Ü, &Yacute;Ý, &THORN;Þ, &szlig;ß, &agrave;à, &aacute;á, &acirc;â, &atilde;ã, &auml;ä, &aring;å, &aelig;æ, &ccedil;ç, &egrave;è, &eacute;é, &ecirc;ê, &euml;ë, &igrave;ì, &iacute;í, &icirc;î, &iuml;ï, &eth;ð, &ntilde;ñ, &ograve;ò, &oacute;ó, &ocirc;ô, &otilde;õ, &ouml;ö, &divide;÷, &oslash;ø, &ugrave;ù, &uacute;ú, &ucirc;û, &uuml;ü, &yacute;ý, &thorn;þ, ande &yuml;ÿ</nowiki>. Userland elimina questo [[Document Type Definition|DTD]], così da rendere invalide queste entità e non permettere il loro uso.
Userland elimina questo DTD, così da rendere invalide queste entità e non permettere il loro uso.
 
Nel Dicembre deldicembre 2000, il RSS-DEV Working Group, gruppo del W3C, rilasciòcommercializzò la specifica 1.0, dichiarando la compatibilità con RSS 0.90. Di fatto era completamente incompatibile e non condivideva alcun elemento con RSS 0.90, usando un XML namespace completamente diverso. RSS 1.0 fu intenzionalmente incompatibile con RSS 0.91 (sia quello di Netscape che quello di Userland) per via della sua sintassi RDF, che faceva parte del progetto originale dell'RSS prima delle modifiche di Netscape.
 
RSS 1.0 appare così:
Esempio 4. RSS 1.0
<syntaxhighlight lang="xml">
 
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://purl.org/rss/1.0/">
<channel>
<title>Example Dot Org</title>
<link>http://www.example.org</link>
<description>the Example Organization web site</description>
<items>
<rdf:Seq>
<rdf:li resource="http://www.example.org/status/"/>
</rdf:Seq>
</items>
</channel>
<image rdf:about="http://www.example.org/images/logo.gif"/>
<image rdf:about="http://www.example.org/images/logo.gif”>
<title>Example</title>
<url>http://www.example.org/images/logo.gif</url>
<link>http://www.example.org</link>
</image>
<item rdf:about="http://www.example.org/status/”>
<title>New Status Updates</title>
<link>http://www.example.org/status/</link>
<description>News about the Example project</description>
</item>
</rdf:RDF>
</syntaxhighlight>
 
Più tardi, nello stesso Dicembredicembre del 2000, Userland rilasciòcommercializzò RSS 0.92, dichiarandolo compatibile con la loro versione 0.91.
 
Esempio 5. RSS 0.92
<syntaxhighlight lang="xml">
 
<rss version="0.92">
<channel>
<title>Example Channel</title>
<link>http://example.com/</link>
<description>an example feed</description>
<language>en</language>
<rating>(PICS-1.1 "http://www.classify.org/safesurf/" l r (SS~~000 1))</rating>
<textInput>
<title>Search this site:</title>
<description>Find:</description>
<name>q</name>
<link>http://example.com/search</link>
</textInput>
<skipHours>
<hour>24</hour>
</skipHours>
<item>
<title>1 &lt;< 2</title>
<link>http://example.com/1_less_than_2.html</link>
<description>1 &lt;< 2, 3 &lt;< 4.
In HTML, &lt;b&gt; starts a bold phrase
and you start a link with &lt;<a href=
</description>
</item>
</channel>
</rss>
</syntaxhighlight>
 
RSS 0.92 è incompatibile con RSS 0.91 di Netscape per gli stessi motivi per cui lo era la versione 0.91. Ma questa è anche incompatibile con la stessa 0.91 di Userland per via del formato del contenuto del tag <description> che cambia da plain text a HTML. lL'esempio di RSS 0.92 (esempio 5) sembra uguale all'esempio di RSS 0.91 di Userland (l'esempio 3) tranne la versione, ma il significato della descrizione è diverso, per avere semanticamente lo stesso risultato bisogna convertire il testo così:
 
Esempio 6. RSS 0.92, propriamente convertito
<syntaxhighlight lang="xml">
 
<rss version="0.92">
<channel>
Line 222 ⟶ 249:
</skipHours>
<item>
<title>1 &lt;< 2</title>
<link>http://example.com/1_less_than_2.html</link>
<description>1 &amp;lt; 2, 3 &amp;lt; 4.
Line 231 ⟶ 258:
</channel>
</rss>
</syntaxhighlight>
 
Nell'Aprileaprile del 2001, Userland rilasciòcommercializzò una "bozza" (un draft) di RSS 0.93, in cui era dichiarata la compatibilità sia con la versione 0.92 che con la loro versione 0.91. Nonostante non lasia rilasciòstata mai distribuita per l'uso pubblico, la versione RSS 0.93 è attualmente usata da aziende del calibro di Disney. RSS 0.93 mantiene la stessa struttura di RSS 0.92, e per questo è incompatibile con le versioni precedenti alla 0.92. Aggiunse infine l'elemento opzionale <expirationDate>.
 
RSS 0.93 appare così:
 
Esempio 7. RSS 0.93
<syntaxhighlight lang="xml">
 
<rss version="0.93">
<channel>
Line 255 ⟶ 283:
</skipHours>
<item>
<title>1 &lt;< 2</title>
<link>http://example.com/1_less_than_2.html</link>
<description>1 &amp;lt; 2, 3 &amp;lt; 4.
Line 265 ⟶ 293:
</channel>
</rss>
</syntaxhighlight>
 
InNell'agosto Agostodel 2002, Userland rilasciòcommercializzò una bozza di RSS 0.94 (e la 0.93 che fine fece?), dichiaratamente compatibile RSS 0.93, RSS 0.92, la loro versione 0.91. Anche se non la rilasciaronofu mai distribuita per uso pubblico, la versione RSS 0.94 è attualmente usata da diversi siti e aggregatori.
 
RSS 0.94 è incompatibile con tutte le versioni precedenti RSS per questi motivi:
 
1.# con RSS 0.93 per l'eliminazione dell'elemento <expirationDate>, elemento introdotto proprio nella versione 0.93.
2.# RSS 0.94 introduce un cambiamento significativo al formato: all'elemento <description> è stato aggiunto l'attributo "type", col quale indicare il tipo MIME della descrizione. Il tipo di default è “text/html”, ciò significa che se non specificato, RSS 0.94 si comporta come RSS 0.92, ed è quindi incompatibile con le versioni a questa precedente. Se invece è specificato, i client compatibili 0.93 non riconoscendo il nuovo attributo interpreteranno male il contenuto della descrizione, considerandolo HTML.
 
Per circostanze storiche, non esistono copie ufficiali della specifica RSS 0.94. La specifica sopra citata si riferisce alla versione 2.0, di cui parleremo sotto.
Line 277 ⟶ 306:
RSS 0.94 appare così:
Esempio 8. RSS 0.94
<syntaxhighlight lang="xml">
 
<rss version="0.94">
<channel>
Line 295 ⟶ 324:
</skipHours>
<item>
<title>1 &lt;< 2</title>
<link>http://example.com/1_less_than_2.html</link>
<description type="text/plain">1 &lt; 2, 3 &lt; 4.
Line 304 ⟶ 333:
</channel>
</rss>
</syntaxhighlight>
 
Nel settembre del 2002, Userland rilasciòcommercializzò RSS 2.0 (partendo dalla bozza della 0.94), dichiamarandodichiarando [[retrocompatibilità]] con RSS 0.94, RSS 0.93, RSS 0.92, e la loraloro versione di RSS 0.91. RSS 2.0 è in realtà incompatibile con tutte le versioni precdentiprecedenti per questo:
 
1.# RSS 2.0 elimina l'elemento <rating>, permesso invece in RSS 0.91 di Netscape e di Userland, RSS 0.92, RSS 0.93, and RSS 0.94.
2.# RSS 2.0 elimina l'attributo "type" introdotto RSS 0.94, perché considerato un errore che creava confusione. La specifica RSS 2.0 dice che <description> "può contenere o meno" HTML, ma non c'è modo per l'utente di distinguere con un 'applicazione l'HTML dal [[testo puro]] (specialmente in testi che citano html). Di fatto, l'eliminazione di questo attributo crea infinitamente più confusione per un programma di quanto facesse la versione 0.94.
 
RSS 2.0 appare così:
Esempio 9. RSS 2.0
<syntaxhighlight lang="xml">
 
<rss version="2.0">
<channel>
<title>Example Channel</title>
<link>http://example.com/</link>
<description>an example feed</description>
<language>en</language>
<textInput>
<title>Search this site:</title>
<description>Find:</description>
<name>q</name>
<link>http://example.com/search</link>
</textInput>
<skipHours>
<hour>24</hour>
</skipHours>
<item>
<title>1 &lt;< 2</title>
<link>http://example.com/1_less_than_2.html</link>
<description>1 &amp;lt; 2, 3 &amp;lt; 4.
In HTML, &amp;lt;b&amp;gt; starts a bold phrase
and you start a link with &amp;lt;a href=
</description>
</item>
</channel>
</rss>
</syntaxhighlight>
 
Nel Novembrenovembre 2002, Userland rilasciòcommercializzò RSS 2.01, compatibile, secondo loro, con RSS 2.0, RSS 0.94, RSS 0.93, RSS 0.92, e la loro versione di RSS 0.91. RSS 2.01 cambiò la semantica dell'elemento <skipHours>. In RSS 0.94, RSS 0.93, RSS 0.92, e RSS 0.91 di Userland, le ore andavano da 1 a 24. In RSS 2.01, come nelle versioni di Netscape le ore andavano da 0 a 23. RSS 2.01 condivide il modello interno di RSS 2.0, il che vuol dire che è incompatibile con RSS 0.94e94 e tutte le versioni di RSS prima della 0.92.
 
RSS 2.01 appare così:
Esempio 10. RSS 2.0, post-11/11/2002 (RSS 2.01)
<syntaxhighlight lang="xml">
 
<rss version="2.0">
<channel>
Line 360 ⟶ 391:
</skipHours>
<item>
<title>1 &lt;< 2</title>
<link>http://example.com/1_less_than_2.html</link>
<description>1 &amp;lt; 2, 3 &amp;lt; 4.
In HTML, &amp;lt;b&amp;gt; starts a bold phrase
and you start a link with &amp;lt;a href=
</description>
</item>
</channel>
</rss>
</syntaxhighlight>
 
La specifica RSS 2.01 è stata pubblicata al posto della 2.0; non esistono copie ufficiali della specifica 2.0. Come puoi vedere dall'esempio 10, RSS 2.01 usa lo stesso “2"2.0″0" come numero della versione, come RSS 2.0, rendendo impossibile la distinzione da parte di un programma. Tutti i feedflussi RSS 2.0 sono da considerarsi ''feed'' RSS 2.01, nonostante l'incompatibilità tra RSS 2.01 e RSS 2.0. Questo significa che, pubblicando un ''feed'' RSS 2.0 valido il 10 Novembrenovembre contenente <hour>24</hour>, potresti svegliarti l'11 e scoprire che il tuo feedflusso è diventato invalido mentre dormivi.
 
Nel Gennaiogennaio 2003, Userland cambiò la specifica, già pubblicata, RSS 2.01, per riaggiungere l'elemento <rating>. Il formato restò invariato, il che vuol dire che RSS 2.01 è ancora incompatibile con RSS 0.94 e tutte le versioni RSS prima della 0.92.
 
RSS 2.01 appare così:
Esempio 11. RSS 2.0, post-1/21/2003 (RSS 2.01 rev 2)
<syntaxhighlight lang="xml">
 
<rss version="2.0">
<channel>
Line 394 ⟶ 426:
</skipHours>
<item>
<title>1 &lt;< 2</title>
<link>http://example.com/1_less_than_2.html</link>
<description>1 &amp;lt; 2, 3 &amp;lt; 4.
In HTML, &amp;lt;b&amp;gt; starts a bold phrase
and you start a link with &amp;lt;a href=
</description>
</item>
</channel>
</rss>
</syntaxhighlight>
Ancora una volta, la nuova specifica 2.01 fu pubblicata al posto della vecchia, senza nessuna copia ufficiale della versione precedente. Né la versione di revisione ("2.01″) né la versione del formato ("2.0″) cambiarono, rendendo impossibile ancora una volta distinguere tra i due formati. Questo vuol dire che se un flusso contiene l'elemento <rating> e si dichiara come RSS 2.0, è impossibile sapere se è valido senza sapere quando è stato creato.
 
Ci sono in tutto 9 versioni di RSS, tutte incompatibili per qualche motivo con una parte delle altre. RSS 0.90 è incompatibile con RSS 0.91 di Netscape, RSS 0.91 di Netscape è incompatibile con RSS 0.91 di Userland, RSS 0.91 di Netscape è incompatibile con RSS 1.0, quella del W3C, RSS 0.91 di Userland è incompatibile con la loro stessa 0.92, RSS 0.92 è incompatibile con la 0.93, 0.93 con la 0.94, 0.94 con la 2.0, e la 2.0 è incompatibile con sé stessa.
Ancora una volta, la nuova specifica 2.01 fu pubblicata al posto della vecchia, senza nessuna copia ufficiale della versione precedente. né la versione di revisione ("2.01″) né la versione del formato ("2.0″) cambiarono, rendendo impossibile ancora una volta distiguere tra i due formati. Questo vuol dire che se un feed contiene l'elemento <rating> e si dichiara come RSS 2.0, è impossibile sapere se è valido senza sapere quando è stato creato.
 
== Note ==
<references />
 
== Bibliografia ==
Ci sono in tutto 9 versioni di RSS, tutte incompatibili per qualche motivo con una parte delle altre. RSS 0.90 è incompatibile con RSS 0.91 di Netscape, RSS 0.91 di Netscape è incompatibile con RSS 0.91 di Userland, RSS 0.91 di Netscape è incompatibile con RSS 1.0, quella del W3C, RSS 0.91 di Userland è incompatibile con la loro stessa 0.92, RSS 0.92 è incompatibile con la 0.93, 0.93 con la 0.94, 0.94 con la 2.0, e la 2.0 è incompatibile con se stessa.
* [[Ben Hammersley]], ''Content Syndication with RSS'', Sebastopol, O'Reilly 2003. ISBN 978-0-596-00383-8
* [[Ben Hammersley]], ''Developing Feeds with RSS and Atom'', Sebastopol, O'Reilly 2005. ISBN 978-0-596-00881-9
 
== FruizioneVoci di un feed RSScorrelate ==
* [[Feed]]
La fruizione di un documento RSS è un processo molto semplice. Le modalità più diffuse sono due: attraverso appositi software che interpretano un feed permettendo agli utenti di visualizzarne i contenuti, o integrando i contenuti del feed all'interno di un sito Web.
* [[XML]]
 
== Altri progetti ==
=== Come viene interpretato un documento RSS ===
{{interprogetto}}
Un'applicazione in grado di interpretare un documento RSS ne effettua il ''parsing'', ovvero una scansione del documento che individua i [[tag]] e isola i diversi elementi, per poi convertire i contenuti decodificati nel formato utile all'obiettivo: ad esempio un feed reader può estrarre i titoli di tutti gli elementi <tt>item</tt> per visualizzare la lista degli articoli di un giornale online, mentre un aggregatore Web può estrarre i contenuti del feed per convertirli in linguaggio [[HTML]] e incorporarli all'interno delle proprie pagine.
 
=== FeedCollegamenti readeresterni ===
* {{Collegamenti esterni}}
[[Image:feedreader.gif|thumb|right|Fruizione di un feed RSS su un PC con FeedReader]]
* {{FOLDOC|Rich Site Summary|Rich Site Summary}}
Un feed reader è un programma in grado di effettuare il [[download]] di un feed RSS (è sufficiente che l'utente indichi al programma l'[[Uniform Resource Locator|URL]] del feed), effettuarne il ''parsing'' e visualizzarne i contenuti in base alle preferenze dell'utente.
=== Specifiche ===
* {{en}} [http://www.rssboard.org/rss-0-9-0 RSS 0.90 Specification]: Specifiche di RSS 0.90
* {{en}} [http://www.rssboard.org/rss-0-9-1-netscape RSS 0.91 Specification]: Specifiche di RSS 0.91
* {{en}} [https://web.archive.org/web/20081022105748/http://web.resource.org/rss/1.0/ RSS 1.0 Specifications]: Specifiche di RSS 1.0
* [http://www.specifiche.it/rss/1.0/ Specifiche RDF Site Summary (RSS) 1.0]: traduzione italiana non ufficiale delle specifiche di RSS 1.0
* {{en}} [http://www.rssboard.org/rss-specification RSS 2.0 (2.0.10)]: Specifiche di RSS 2.0
* [http://www.specifiche.it/rss/2.0/ Specifiche RSS 2.0]: traduzione italiana non ufficiale delle specifiche di RSS 2.0
 
=== Articoli ===
Spesso i feed reader sono dotati di funzionalità avanzate; ad esempio sono in grado di rilevare automaticamente se il produttore del feed ha effettuato aggiornamenti al feed stesso, effettuandone il download a intervalli di tempo regolari. In questo modo l'utente può essere informato quasi in tempo reale quando un sito è stato aggiornato, un po' come avviene per le pagine [[web]] del [[browser]] [[Opera (browser)|Opera]], aggiornabili - con un apposito comando - secondo una preordinata scansione temporale. Il [[browser]] [[Opera (browser)|Opera]] integra, dalla versione 8.0, un ottimo feed reader.
* [https://guide.aruba.it/it/feed-rss-cosa-sono-come-utilizzarli.aspx Feed RSS: cosa sono].
 
* [https://www.mysocialweb.it/che-cose-un-feed-rss/ Feed RSS: come utilizzarli].
Ci sono molti feed reader in circolazione: alcuni sono applicazioni ''stand-alone'', altri funzionano come [[Plugin|plug-in]] all'interno di altri programmi (ad esempio plug-in per programmi di [[Posta_elettronica|posta elettronica]] o [[browser]] Web). Altri, addirittura, sono applicazioni in grado di convertire un feed RSS in una serie di ''post'' in formato leggibile dai più popolari newsreader (come, ad esempio, [http://www.mozilla.com/thunderbird/ Mozilla Thunderbird], [http://www.forteinc.com Forté Agent], et cetera): un esempio di questi software è [http://www.methodize.org/nntprss/ nntp//rss], oppure [http://www.fr3ddie.it/ RSS Feed Converter] uno script per il popolare mail-newsserver [http://www.tglsoft.de/ Hamster].
* [https://www.wikihow.it/Creare-un-Feed-RSS/ Feed RSS: crearli in 7 passaggi (con immagini)].
Un esempio di feed reader stand alone è, invece, [http://www.feedreader.com/ FeedReader], [[Software_libero|programma free]] (distributo con licenza [[GNU GPL]]) per piattaforme Microsoft [[Windows]].
Nella parte sinistra dell'[[interfaccia]] è mostrato l'elenco dei feed impostati dall'utente; nella parte in alto a destra l'elenco dei singoli contenuti del feed selezionato; nella parte principale l'intero contenuto testuale di un articolo.
Alcuni feed reader, come ad esempio [http://www.babisoft.com RssFeedEater], un programma [[shareware|shareware]] per Windows, permettono addirittura di inviare via mail o scrivendo su un blog le informazioni ricevute dai feed.
 
==== Feed reader per dispositivi mobili ====
[[Image:nokia.jpg|thumb|right|Fruizione di un feed RSS su un cellulare Nokia 3650 con mReader]]
Un aspetto particolarmente interessante è la disponibilità di applicazioni per la lettura di feed RSS su dispositivi mobili ([[Telefono_cellulare|telefoni cellulari]], [[Palmare|palmari]], ecc.). Ciò consente l'accesso a notizie e informazioni da qualunque luogo.
Ad esempio, [[mReader]] è un'applicazione gratuita compatibile con tutti i dispositivi che supportano [[J2ME]] (Java 2 Micro Edition).
 
Nell'immagine viene mostrata la lettura di un feed RSS tramite un telefono cellulare Nokia 3650 su cui è installato mReader: date le limitate dimensioni dello schermo è necessario il passaggio attraverso tre schermate successive, ma i contenuti sono perfettamente fruibili.
 
=== Aggregatori Web ===
Un feed RSS proveniente da un sito può essere facilmente importato da un altro sito Web, per incorporarne i contenuti all'interno delle proprie pagine.
 
Tecnicamente le strade percorribili sono diverse; generalmente, un apposito [[software]] si occupa di effettuare, automaticamente, il parsing dei feed RSS, ne estrae i contenuti (ad es. titolo degli articoli e descrizione) e li inserisce all'interno del codice HTML delle pagine, applicando le opportune trasformazioni.
Sostanzialmente, si tratta del procedimento opposto a quello utilizzato per la produzione del feed.
 
In seguito all'aumento di popolarità del formato RSS e alla sua standardizzazione, sono nati diversi servizi online che fungono da “collettori” di contenuti: i cosiddetti aggregatori. L'obiettivo è quello di fornire un unico punto d'accesso a notizie provenienti da varie fonti; la standardizzazione del formato e la sua diffusione sono gli ingredienti che hanno reso possibile perseguire tale obiettivo.
 
Il vantaggio per l'utente è notevole, poiché ha la possibilità di accedere a tutte le notizie attraverso un unico sito Web (l'aggregatore), evitando dunque di dover visitare, uno per uno, i siti da cui provengono le notizie stesse (magari solo per scoprire che non ci sono stati aggiornamenti dopo la sua ultima visita).
 
Esempi sono [http://www.rsspress.it RssPress.it] e [http://www.kataweb.it/feedo/ Kataweb Fido] che consentono, a chi si registra, di personalizzare la propria home page selezionando le fonti da visualizzare all'interno di una vasta raccolta suddivisa per categorie.
 
== Bibliografia ==
* BEN HAMMERSLEY, Content Syndication with RSS<br>O'Reilly, Sebastopol, 2003<br>ISBN 0596003838
* BEN HAMMERSLEY, Developing Feeds with RSS and Atom <br>O'Reilly, Sebastopol, 2005<br>ISBN 0596008813
 
== Collegamenti esterni ==
* {{en}} [http://backend.userland.com/rss092 RSS 0.92 Specification]: le specifiche ufficiali di RSS 0.92
* {{en}} [http://blogs.law.harvard.edu/tech/rss RSS 2.0 Specification]: le specifiche ufficiali di RSS 2.0
* {{en}} [http://web.resource.org/rss/1.0/ RDF Site Summary (RSS) 1.0 Specification]: le specifiche ufficiali di RSS 1.0
* [http://pro.html.it/articoli/id_302/idcat_33/pro.html Introduzione a RSS]: un articolo di introduzione al formato RSS.
* [http://www.rss-world.info/ RSS World]: portale dedicato al formato con news, approfondimenti e documentazioni.
* [http://www.pc-facile.com/guida_creare_RSS_t208061/ Conoscere e creare i feed RSS (da pc-facile.com)]
* {{en}} [http://www.xml.com/pub/a/2002/12/18/dive-into-xml.html What is RSS?]: da XML.com, un articolo introduttivo al formato RSS
* {{en}} [http://allrss.com/rssreaders.html Weblogs Compendium - RSS Readers]: un elenco di programmi per la lettura di feed RSS
* [http://www.blauerbote.com/index.php?k=RSS_Verzeichnis&e=en&s=it Blauer Bote]: directory per RSS.
* [http://www.codicesorgente.it/feedsaggregator RSS/ATOM Feeds Aggregator]: Aggregatore online di Feeds RSS.
* [http://www.rsspress.it/ RssPress.it]: Aggregatore online di Feeds RSS personalizzabile
* [http://www.google.com/reader/ Google Reader]: un aggregatore web di Google (versione beta)
* [http://markallanson.net/html/technical/j2me/mReader.htm mReader] (home page)
 
{{Controllo di autorità}}
[[categoria:acronimi|RSS]]
{{Portale|internet}}
[[categoria:Informatica]]
[[Categoria:Internet]]
 
[[Categoria:Tecnologie per il Web]]
[[be:RSS]]
[[Categoria:Standard informatici basati su XML]]
[[ca:RSS]]
[[da:RSS]]
[[de:RSS]]
[[en:RDF Site Summary]]
[[eo:RSS]]
[[es:RSS (formato)]]
[[et:RSS]]
[[gl:RSS]]
[[he:RSS]]
[[hu:RSS (fájlformátum)]]
[[id:RSS]]
[[ja:RSS]]
[[ko:RSS]]
[[lt:RSS]]
[[lv:RSS protokols]]
[[nl:RSS]]
[[no:RSS]]
[[pl:RDF Site Summary]]
[[pt:RSS]]
[[ru:RSS]]
[[sl:RSS]]
[[sv:RSS]]
[[th:RSS]]
[[tr:RSS]]
[[zh:RSS]]
[[zh-min-nan:RSS]]