[XSL/XPATH] Problème avec preceding-sibling...

Problème avec preceding-sibling... [XSL/XPATH] - XML/XSL - Programmation

Marsh Posté le 06-06-2006 à 10:32:46    

Bonjour,

 

Alors voilà, j'ai un problème : j'utilise un fichier XML contenant une structure de ce type (et je n'y ai pas accès en écriture) :
 

 
Code :
  1. <Echange>
  2.     <CrpCen>
  3.         <Clef>
  4.             <prix>100000</prix>
  5.             <Annonce>NOMDELAVILLE1, Suite de l'annonce 1</Annonce>
  6.         </Clef>
  7.         <Clef>
  8.             <prix>100000</prix>
  9.             <Annonce>NOMDELAVILLE3, Suite de l'annonce 2</Annonce>
  10.         </Clef>
  11.         <Clef>
  12.             <prix>100000</prix>
  13.             <Annonce>NOMDELAVILLE1, Suite de l'annonce 3</Annonce>
  14.         </Clef>
  15.         <Clef>
  16.             <prix>100000</prix>
  17.             <Annonce>NOMDELAVILLE2, Suite de l'annonce 4</Annonce>
  18.         </Clef>
  19.     </CrpCen>
  20. </Echange>


 

 


J'aimerais pouvoir récupérer la liste des villes, sans doublons,
sachant qu'elle se situe toujours au début de l'annonce, en majuscule,
suivie d'une virgule.
 

 


Pour celà j'ai essayé mais sans succès d'utiliser de plusieurs manières "preceding_sibling", mais apparement j'arrive pas bien à en saisir le fonctionnement..
 

 


Exemple:

Code :
  1. <xsl:template match="/">
  2.     <xsl:for-each select="//Clef">
  3.         <xsl:sort select="Annonce" data-type="text" order="ascending"/>
  4.         <xsl:value-of select="Annonce[not(substring-before(.,',')=substring-before(preceding::Annonce),',')]"/>
  5.     </xsl:for-each>
  6. </xsl:template>
 

 


Jusqu'à maintenant je n'ai réussi à récupérer soit l'intégralité des annonces (avec tous les doublons de villes donc..), soit une jolie erreur 500... :'(

Reply

Marsh Posté le 06-06-2006 à 10:32:46   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed