Aller au contenu

Raccorder/Faire correspondre 2 flux XML


Teteaqueue

Messages recommandés

Bonjour à toutes et à tous,

Ne rigolez pas, j'essaie de m'y mettre mais là je bloque !

Mon problème est le suivant: j'ai un fichier Flash qui appelle un flux XML pour "se remplir" avec une image, du texte... On appellera ce flux XML "Flux 1".

Ce flux 1 a été réalisé d'une certaine manière, avec des tags spécifiques. Or, les informations que je souhaite appeler proviennent d'un fichier XML qui n'a pas les mêmes tags (on l'appellera ici "Flux 2"). Exemple:

Structure "Flux 1"

<qmdXML>

<moduledata>

<title>MONXML</title>

<item id="1">

<title>

<![CDATA[]]>

</title>

<description>

<![CDATA[]]>

</description>

<linkbook>

<![CDATA[]]>

</linkbook>

<linksite>

<![CDATA[]]>

</linksite>

<author>

<![CDATA[]]>

</author>

<category>

<![CDATA[]]>

</category>

<image>

<![CDATA[]]>

</image>

<price>

<![CDATA[]]>

</price>

</item>

</moduledata>

</qmdXML>

Pour la Structure du "Flux 2" (assez longue, il faudrait que je passe un peu plus de temps car tous les tags ne sont pas utiles), on a par exemple pour le lien un tag "<ProductWebsiteLink>" alors qu'ici, dans mon Flux 1, mon Flash appelle le lien du site grâce au tag "<linksite>". Idem, mon tag "<Price>" du Flux 1 est remplacé par un tag "PriceAmount" du Flux 2.

Ma question est donc: comment établir une correspondance de tags entre les 2 afin que les bonnes informations du Flux 2 soient appelés au bon endroit dans le Flux 1, et que du coup le Flash se remplisse correctement. J'insiste à nouveau si je ne l'ai pas déjà fait: je n'ai pas moyen de toucher au Flash (structure commune pour d'autres utilisateurs).

J'espère avoir été assez clair sur ma demande. Merci d'avance de vos réponses et de votre aide, et à votre dispo pour toute question complémentaire.

Lien vers le commentaire
Partager sur d’autres sites

Salut !

Le langage spécialement fait pour transformer un XML est le XSLT.

Mais sinon bah un bon vieux programme qui parse le XML et qui en recrée un autre ne devrait pas poser trop de problème (dans n'importe quel langage)...

La question serait plutôt : comment tu récupères le XML. Et si tu peux mettre une moulinette qui se lance à la volée pendant cet appel.

Lien vers le commentaire
Partager sur d’autres sites

http://fr.wikipedia.org/wiki/Stratégie_(pa..._de_conception)

En gros tu fait deux parser, un pour chaque format, qui partagent la même interface.

Sinon, comme le suggère fabien29200 tu peux passer par une transformation XSLT pour unifier le tout en amont.

IMHO la solution XSLT est plus pérenne car indépendante technologiquement.

Si dans 5 ans tu dois refaire ton programme pour un autre runtime que flash tu sera bien content de ne pas devoir porter 18 parsers différents. 

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...