XML, RSS et syndication de contenu

Preview:

DESCRIPTION

XML, RSS et syndication de contenu. Quelques notions et historique. Un document se définit par le FOND et la FORME Forme = structure + présentation Fond = structure + sémantique SGML SGML : Standard Generalized Markup Language Métalangage de balisage de document Norme Internationale - PowerPoint PPT Presentation

Citation preview

XML, RSS et syndication de contenu

Quelques notions et historique

• Un document se définit par le FOND et la FORME – Forme = structure + présentation – Fond = structure + sémantique

• SGML– SGML : Standard Generalized Markup Language – Métalangage de balisage de document– Norme Internationale– Séparation du fond et de la forme– Très complexe à mettre en œuvre– Langage utilisé pour la GED notamment

Quelques notions et historique

• HTML – Hyper Texte Markup Language – Langage simple avec des balises standardisées– Reconnu par tous les navigateurs– Fond et forme mêlés (cf. métalangage)– Un seul terminal : l’ordinateur (PC ou MAC)– Inadapté à l’échange de données entre programmes ou

applications

Définition du XML

• eXtensible Markup Language• Méta langage universel• Langage informatique qui permet de décrire des

données de manières structurées• Langage conçu pour les échanges de données

(interopérabilité)• Historique du XML

– 1994 : fondation du W3C - World Wide Web Consortium– 1996 : Début du développement du XML– 1998 : XML 1.0 (recommandation officielle du W3C)

Objectifs et forces du XML

• Un nouveau langage d’échange basé sur le balisage

• Séparation de fond et de forme• Une simplification du SGML • Moins « confus » que le HTML• Idéal pour l’échange de données semi-structurées• Utilisable entre les programmes et les applications

pour échanger des flux de données non propriétaire

Contre quelques idées reçues

• XML n’est pas un langage de programmation• XML ne va pas remplacer le HTML (Cf. XHTML)• XML est un simple ficher texte qui ne nécessite pas

de programme particulier pour être lisible• XML est un standard libre et gratuit

Exemples concrets

• Cf. le code source de la page suivante : http://www.xmlguru.de/xml/neu.xml– Transformation nécessaire via XLS

• OpenOffice et Star Office utilise le standard XML pour structurer les documents– Extension .SXW n’est qu’une compression de .XML

• (X)HTML version plus exigente du html– <br> devient <br /> ainsi que toutes les balises sans fermeture– Plus de balise de mise en forme CSS uniquement– Respect strict de l’ordre ouverture/fermeture des balises– Balises en minuscule– …

• http://livedocs.macromedia.com/dreamweaver/8_fr/using/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=22_codi6.htm

En savoir plus sur le XML

• http://www.educnet.education.fr/dossier/xml/pourquoi.htm

• http://xmlfr.org/

• http://developpeur.journaldunet.com/fil/new/rubrique_xml.shtml

• Google...

Une application concrète du XML :

la syndication de contenu et flux RSS

Des exemples de fichiers RSS

• Des millions d’exemples sur le WEB• cf. votre blogue…

• http://www.presence-pc.com/feeds/composants/rss.xml• http://www.01net.com/rss/• Etc.

Définition RSS

• Format de syndication de contenu

• Really Simple Syndication (syndication vraiment simple).

• ou Rich Site Summary

• ou RDF Site Summary

• ou Ressource Description Framework Site Summary

• Fil d’information mise à jour de manière chronologique que l ’on peut capter (événements, articles, news,…)

• Manière de décrire un contenu d’un site...

• Format basé sur le XML (description formalisée d’un contenu ou d’un site dans une structure balisée)

Bénéfices et principe de la syndication

• Syndication = proposer du contenu, mettre à disposition

• Agrégation = récupérer un ou plusieurs flux de syndication

• Pour le site émetteur : démultiplication de la visibilité du contenu pour un site qui propose un contenu « syndiqué »

• Pour le site récepteur : ajouter de la plus-value au site qui utilise un contenu syndiqué

• Exemple concret : – http://www.phoenixjp.net/news/fr/

– Pour voir comment ça marche : cliquez sur Partenariat

• Tout le monde est gagnant !

• Une nouvelle forme d’échange de liens et de contenu

Consulter des flux RSS

• Logiciels ou clients à télécharger– RSS Reader– http://www.headlineviewer.com/– http://www.proggle.com– Aggreg8 : http://www.aggreg8.net/– Thunderbird, Mozilla,… (navigateur, client messagerie)

• Des sites spécialisés (plates-formes d’agrégation) ou son – AMPHETADESK : http://disobey.com/amphetadesk/– http://newsisfree.com/– Netvibes (http://www.netvibes.com/),

– Google (accueil personnalisée), Yahoo,…

Créer son flux RSS

• A la « mano » avec un éditeur de texte

• Fonctions intégrées dans les « bons » CMS  ou Blogs

• Des scripts PHP, Perl ou ASP qui récupèrent le contenu d’une BD et génèrent automatiquement un fichier .rss

– http://phortail.org/syndication-0032.html

– http://www.asp-php.net/scripts/asp.net/generationrss.php

– …

• Une suite Office (Word aussi !)– http://www.formedia.ca/office_utilities_fr/rss_editor.html

• Des outils en ligne qui scannent votre site (ex : RSSify)

Et ensuite...

• Le mettre à disposition http://www.monsite.com/rss/fichier.rss

• Et surtout mettre à jour son site !!!

Trouver le « bon » flux RSS

• Recherche un FEED : http://www.syndic8.com/

• Feedster : le google du RSS (www.feedster.com)

• http://www.1001rss.com/

• http://www.lamoooche.com/

• http://www.retronimo.com/

• …

Récupérer un flux RSS externe pour son site (Agrégation)

• Scripts PHP, Perl, ASP, JSP,…) pour transformer le flux en balises HTML intégrable à votre site (Programmation !)– http://zvonnews.sourceforge.net/

http://chxo.com/software/feedsplitter/– Newspépère…– http://www.mmt-fr.org/article114.html– http://phortail.org/syndication-0033.html (!)

• Fonctions intégrés dans certains portails/intranet ou CMS

• Exemple à suivre en PHP

Autre avec javascript

• Possibilité d’intégrer sur son site quelques lignes de codes javascript pour obtenir un partie du service du site en question

• Exemples :– http://www.kompass.com/kinl/static/index_kise.php?

_Lang=fr&action=searchbox

– http://scaschera.free.fr/master_2005/rss/ (cours 2004)

Sources pour en savoir plus sur RSS

• http://stervinou.com/projets/rss/• http://xmlfr.org/documentations/tutoriels/041022-

0001• Dossier « RSS : la syndication de contenu à la portée

de tous » (developpeur.journaldunet.com)• Dossier ZDNET « Sites web : agréger du contenu

avec RSS »• http://www.geste.fr/alertinfo/home.html• 01NET : http://www.01net.com/article/267734.html• http://www.retronimo.com/rss.php• http://fr.wikipedia.org/wiki/Really_Simple_Syndication

Récupérer des flux RSS…des millions d’exemples

• http://www.touslesdrivers.com/index.php?v_page=22

• http://www.informanews.net/scripts/rss.php?id=0• http://www.presence-pc.com/partenariats.php• http://www.01net.com/article/267734.html• http://www.clubic.com/divers/partner.php• …• A vous d’en trouver…

TP en PHP (Master 2007)

• Exemple – http://scaschera.free.fr/master_2007/Edition_Web/rss/

• Récupérer les fichiers suivants dans un NOUVEAU répertoire de easyphp (/www/new_rep/) : – index.php– rss091.php

• On modifier les fichiers…

TP N°1 : utiliser NEWSPEPERE

• Copier-coller le répertoire http://scaschera.free.fr/master_2006/actu_perspectives/rss/newspepere dans /www d’easysphp

• Visualiser le résultat• N’installez pas la base de données dans MYSQL • Visualiser les fichiers :

– index.php– admin.php– config.php

• Possibilité de choisir son thème graphique et de modifier les fichiers CSS– Cf. le fichier config.php et de voir le thème graphique associé

• Intégration très facile dans un site existant…• L’application complète est dans /rss/newspepere/newspepere.zip

TP N°2 : utiliser MAGPIERSS

• Choisir l’URL d’un flux RSS de votre choix• Installer le contenu du fichier ZIP du répertoire

http://scaschera.free.fr/master_2006/actu_perspectives/rss/magpierss dans un nouveau répertoire dans /www d’easyphp

• Modifier le fichier index.php pour faire apparaître le flux RSS que vous avez trouvé en remplaçant le contenu de :$url = 'http://www.informanews.net/scripts/rss.php?id=0';

• Modifier les balises HTML pour faire apparaître le flux dans un tableau (une ligne par titre)

• Pour aller plus loin avec MAGPIERSS : – http://phortail.org/syndication-0033.html

TP N°3 : utiliser Easy RSS (…ceux qui ont du temps)

• Débrouillez vous avec (même principe que le précédent) :– http://scaschera.free.fr/master_2006/actu_perspectives/

rss/easyrss/easyrss.zip

• Cf. les tutoriaux :– http://www.mmt-fr.org/article176.html– http://www.mmt-fr.org/article114.html

Recommended