Benvenuto! Se sei un nuovo visitatore ti consiglio di iscriverti al mio Feed RSS in modo da essere sempre aggiornato riguardo l'uscita di nuovi articoli oppure sbirciare tra i tutorials ed i progetti.
Per avere un'idea del best-content presente in questo blog puoi leggere il post intitolato "Ed ora è il momento di rilanciare alcune iniziative! (1a parte e 2a parte)".
Buona navigazione e grazie per la visita!
Requisiti
- Conoscenza base dell'xml;
- Conoscenza base del DTD dello standard RSS 0.91 (vedi tutorial precedente);
- Saper leggere :P
Introduzione
Ora passiamo a spiegare per bene che cosa serve un file xml nello standars RSS 0.91. Prima di tutto diciamo che i vari standard esistenti sono molto utili per la condivisione di qualsiasi documento, perchè chiunque leggendosi i DTD oppure le specifiche dello standard utilizzato riesce ad accedere facilmente all'informazione condivisa. In questo caso l'RSS viene utilizzato per la condivisione delle news (vedi FlashGuru, Ericd, ecc...).
Panoramica generale
Prima di tutto bisogna dire che tutti i file RSS devono essere conformi alle specifiche dell'XML 1.0 e devono seguire il DTD corrispondente alla versione dell' RSS utilizzata (vedi tutorial precedente). Se aprite un file RSS noterete subito che al suo interno c'è un nodo di root (nodo principale) di nome "rss" che contiene l'attributo "version" che specifica la versione di RSS utilizzato. Le versione più recente è la RSS 2.0 che è retrocompatibile ossia tutte le versione precedenti (inclusa la 0.91) sono conforme a questo recente versione (ovviamente non tutti i tag vengono utilizzati).
Possiamo notare che come elemento figlio del nodo <rss> c'è l'elemento <channel> che contiene informazione a riguardo del canale e del suo contenuto.
Il tag <channel>
Un esempio di tag channel può essere il seguente (l'esempio non contiene tutti i tag, ma solo quelli più importanti):
-
<title>Tutto flash</title>
-
<link>http://mio.sito.it</link>
-
<description>News sul mondo flash</description>
-
<language>it-it</language>
-
<copyright>Copyright 2003, mio.sito.it</copyright>
-
<managingEditor>editor@mio.sito.it</managingEditor>
-
<webMaster>webmaster@mio.sito.it</webMaster>
Al suo interno ci sono 4 tag obbligatori e 12 tag opzionali. Nei tag obbligatori troviamo:
- <title> Contiene principalmente il titolo del canale, ossia di cosa tratta (La massima lunghezza è di 100 caratteri);
- <link> Contiene l'indirizzo che punta al sito in questione (La massima lunghezza è di 500 caratteri). Esso deve iniziare con "http://" oppure con "ftp://";
- <description> Ossia una frase che descrive il contenuto del canale, esso non deve superare la lunghezza di 500 caratteri;
- <language> Indica la lingua utilizzata nel canale. Ad esempio se la lingua è quella italiana, questo tag deve contenere "it-it";
Ci sono pure dei tag opzionali, essi sono:
- <copyright> Ossia deve contenere la stringa di copyright. (es: Copyright 1997-1999 UserLand Software, Inc.);
- <managingEditor> Contiene l'email di chi cura la scrittura degli articoli, quindi per qualsiasi problema riguardante un articolo dovete spedire un email a questo indirizzo;
- <webMaster> Contiene l'email del webmaster del sito che ospita il "canale", per ogni problema tecnico riguardante il sito dovete contattare questo indirizzo email;
- <rating> Questo serve per gestire un sistema di rating (vedere http://www.safesurf.com )
- <pubDate> La data della pubblicazione del contenuto del canale (es: Thu, 05 Feb 2003 16:20:26 GMT);
- <lastBuildDate> Contiene l'ultima data di modifica del canale (Molto utile per sistemi di caching, infatti se non ci sono state modifiche è inutile ricaricare di nuovo tutto l'XML);
- <docs> Ossia un URL che contiene la descrizione del formato RSS utilizzato;
- <textInput> Questo tag non è molto utilizzato, esso da la possibilita ad un utente di pubblicare le proprie news o di fare un "cerca" (se ha il permesso). Ovviamente il processo si appoggia su uno script lato server (PHP/ASP/CGI o altro). Questo nodo richiede la presenza di 4 nodi figli (vedi sotto);
- <skipDays> Esso contiene più nodi figli <day> che indicano il giorno della settimana dove il canale non è stato aggiornato (molti ignorano questo tag);
- <skipHours> Esso contiene più nodi figli <hour> che indicano le ore GMT dove l'aggiornamento è improbabile. Se il tag è omesso si sottointende che le news vengono aggiornate ogni ora (anche questo tag viene ignorato da molti);
- <image> Contiene un immagine associata al canale. Questo tag ha 3 tag figli obbligatori (vedi sotto);
- <item> E' praticamente il tag più importante dell'xml perchè contiene titolo, data e il testo della news (vedi sotto);
Il tag <textInput>
Un esempio di tag textInput può essere il seguente:
-
<textinput>
-
<title>Cerca!</title>
-
<description>Indica il termine da ricercare</description>
-
<name>cerca</name>
-
<link>http://mio.sito.it/search.cgi</link>
-
</textinput>
Come potete vedere contiene 4 tag figli che sono obbligatori una volta che avete optato per il tag <textInput>. Ecco una breve descrizione dei tag:
- <title> Indica la label del bottone di Submit (la massima lunghezzza è di 100 caratteri);
- <description> Contiene una breve descrizione dell'input field (campo di input). La sua lunghezza massima è di 500 caratteri;
- <name> E' il nome dell'oggetto a cui bisogna poi far riferimento all'attributo dell' HTML <INPUT>. La sua lunghezza massima è di 20 caratteri;
- <link> Indica l'URL dello script che deve elaborare i dati ricevuti. Esso deve iniziare con "http://" o "ftp://";
Il tag <image>
Un esempio di tag image può essere il seguente:
-
<image>
-
<link>http://www.mio.sito.it/</link>
-
<title>RSS News</title>
-
<url>http://www.mio.sito.it/img.gif</url>
-
<height>40</height>
-
<width>78</width>
-
<description>Mio logo</description>
-
</image>
Al suo interno ci sono 3 tag obbligatori e 3 tag opzionali. Nei tag obbligatori troviamo:
- <url> Corrisponde all'URL dell'immagine GIF, JPEG o PNG (lunghezza massima di 500 caratteri);
- <link> Indica l'URL a cui deve far riferimento l'immagine. In poche parole cliccando sull'immagine mi deve rimandare all'indirizzo indicato qui;
- <title> Descrive l'immagine, essa è utilizzata in concomitanza con l'attributo ALT dell'elemento <img> (lunghezza massima di 100 caratteri);
Ci sono pure dei tag opzionali, essi sono:
- <description> Ossia la descrizione dell'immagine;
- <width> Indica la larghezza in pixel dell'immagine (deve essere un numero intero da 1 a 144, il valore di default è 88);
- <height> Indica l'altezza in pixel dell'immagine (deve essere un numero intero da 1 a 400, il valore di default è 31);
Il tag <item>
Un esempio di tag item può essere il seguente:
-
<item>
-
<title>Titolo news</title>
-
<link>http://www.mio.sito.it/news/news_n1.html</link>
-
<description>Descrizione della news</description>
-
</item>
Al suo interno ci sono 2 tag obbligatori e 1 tag opzionale. Nei tag obbligatori troviamo:
- <title> Ossia il titolo della news (la sua lunghezza massima è di 100 caratteri);
- <link> Indica il link della news (deve iniziare con "http://" o "ftp://" e non avere una lunghezza superiore ai 500 caratteri);
L'unico tag opzionale è:
- <description> Contiene la descrizione della news a cui si fa riferimento (la lunghezza massima è di 500 caratteri);
Bene, ora con questa serie di tutorial siamo in grado di capire la sintassi e la semantica di ogni tag. Di conseguenza siamo capaci di mettere le nostre news in formato RSS così tutti possano visualizzarle nel proprio sito. Questa è la versione più utilizzata, mentre quella che si stà espandendo di più è la RSS 2.0, comunque le differenze riguardano soprattutto l'aggiunta di alcuni tag (ad esempio per indicare la data di una news o la categoria di appartenenza), di conseguenza se avete capito lo standard RSS 0.91 capirete pure il 2.00 e versioni successive.
Alla fine i file RSS che trovate in giro non utilizzano tutti questi tag ma solo quelli obbligatori e pochissimi di quelli opzionali (un esempio è il <description> del tag <item>).
Spero di essere stato chiaro nella spiegazione :) Il vostro amicone vi saluta...bye bye
Scrivi un commento
Tags di formattazione: