TUTORIELS 
XSLT : modifier la structure d'un document XML

Page 1 | 2

XSL permet de répondre rapidement aux problèmes d'évolution des formats XML... Démonstration par l'exemple.
 (15 janvier 2004)
 
Forums
* Discutez en sur les forums
Les besoins d'une entreprise, et des logiciels qu'elle utilise, sont fortement susceptibles de changer avec l'évolution de celle-ci. Parmi les victimes de ces évolutions se trouvent les formats d'échange de données : organisation, syntaxe, priorités... Nous allons voir ici comment réussir la transition d'un document XML classique d'une structure à l'autre...

Avant / après
Nous avons choisi de faire une transition entre deux structures relativement simples, mais suffisemment différentes pour justifier de l'utilisation d'une feuille XSLT : le flux RSS de JDNetDev (modifié), et un potentiel flux Atom pour le même site.

Avant:
<?xml version="1.0" encoding="iso-8859-1" ?>
  <rss version="2.0">
    <channel>

      <title>Journal du Net Développeurs</title>
      <link>http://www.journaldunet.com/developpeur/</link>
      <managingEditor>borderie@NOSPAMbenchmark.fr
</managingEditor>
      <lastBuildDate>Sat, 07 Sep 2002 09:42:31 GMT</lastBuildDate>

      <item>
        <title>[livres] PHP, Flash, UML, SQL/Oracle, Python, apprentissage</title>
        <link>http://www.journaldunet.com/developpeur/
news/040113_livres.shtml</link>
        <description>Les nouvelles sorties</description>
        <pubDate>Sun, 19 May 2002 15:21:36 GMT</pubDate>
      </item>

      <item>
        <title>[annonce] Les nouveaux forums du JDNet Développeurs</title>
        <link>http://forumdeveloppeur.journaldunet.com/</link>
        <description>Participez à ce nouvel espace d'entraide pour tous les développeurs et administrateurs!</description>
        <pubDate>Sun, 19 May 2002 15:21:36 GMT</pubDate>
      </item>

    </channel>
  </rss>

Après :
<?xml version="1.0" encoding="iso-8859-1" ?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#">
  <title>Journal du Net Développeurs</title>
  <link rel="alternate" type="text/html" href="http://www.journaldunet.com/developpeur/"/>
  <modified>
Sat, 07 Sep 2002 09:42:31 GMT</modified>
  <author>
    <name>borderie@NOSPAMbenchmark.fr</name>
  </author>

  <entry>
    <title>
[livres] PHP, Flash, UML, SQL/Oracle, Python, apprentissage</title>
    <link rel="alternate" type="text/html" href="
http://www.journaldunet.com/developpeur/news/
040113_livres.shtml
" />
    <summary>
Les nouvelles sorties</summary>
    <modified>Sun, 19 May 2002 15:21:36 GMT</modified>
  </entry>

  <entry>
    <title>
[annonce] Les nouveaux forums du JDNet Développeurs</title>
    <link rel="alternate" type="text/html" href="
http://forumdeveloppeur.journaldunet.com/" />
    <summary>
Participez à ce nouvel espace d'entraide pour tous les développeurs et administrateurs!</summary>
    <modified>Sun, 19 May 2002 15:21:36 GMT</modified>
  </entry>

</feed>

(notez que, par souci de simplicité et parce que XSLT ne peut pas tout faire, nous avons omis certaines balises Atom, comme vous pourrez facilement le constater. Le flux Atom présenté ici n'est donc pas forcément valide...).

Page 1 | 2

 
[ Xavier BorderieJDNet
 
Accueil | Haut de page