Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
5582 connectés 

  FORUM HardWare.fr
  Programmation
  XML/XSL

  transformation xml avec xslt

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

transformation xml avec xslt

n°1076177
ronnie7770​0
Posté le 09-05-2005 à 12:37:53  profilanswer
 

bonjour a tous j'ai quelques problemes au niveau de la transformation....
 
voila mon xml du départ :

Code :
  1. <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
  2. <?iview mediapro exportversion="1.0.0.a1" appversion="2.6" ?>
  3. <CatalogType>
  4. <Catalog>exemple</Catalog>
  5. <MediaItemList>
  6. <MediaItem>
  7. <AnnotationFields>
  8. <Filename>05035_002</Filename>
  9. <EventDate>2005:03:17</EventDate>
  10. <City>Noirmoutier en l&apos;Île 85330</City>
  11. <Copyright>©Pascal Xicluna/Min.Agri.Fr.</Copyright>
  12. <Caption>Proue de la maquette d&apos;un fileyeur de 12 mètres. CNB, groupe Bénéteau.</Caption>
  13. </AnnotationFields>
  14. </MediaItem>
  15. <MediaItem>
  16. <AnnotationFields>
  17. <Filename>05035_005</Filename>
  18. <EventDate>2005:03:17</EventDate>
  19. <City>Noirmoutier en l&apos;Île 85330</City>
  20. <Copyright>©Pascal Xicluna/Min.Agri.Fr.</Copyright>
  21. <Caption>Pose de membrures dans une coque en composite verre et résine polyester d&apos;un chalutier de 12 mètres.
  22. Atelier de moulage de Bénéteau Pêche, CNB.
  23. Chantier de construction de bateaux de pêche.</Caption>
  24. </AnnotationFields>
  25. </MediaItem>
  26. </MediaItemList>
  27. </CatalogType>


 
 
 
ainsi que mon xslt :
 

Code :
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  3. <xsl:output method='html' version='1.0' encoding='utf-8' indent='no'/>
  4. <xsl:template match="//AnnotationFields" >
  5. <structure>
  6. <image image="{./Filename}_img.png" thumb="{./Filename}_tmb.png" print="false" info1="{./Filename}" info2="{./City}" info3="{./EventDate}" info4="{./Copyright}" info5="{./Caption}" /></structure>
  7. </xsl:template >
  8. </xsl:stylesheet>


 
 
 
et le résultat est :
 
 
 

Code :
  1. exemple
  2. <structure><image image="05035_002_img.png" thumb="05035_002_tmb.png" print="false" info1="05035_002" info2="Noirmoutier en l'IÌ?le 85330" info3="2005:03:17" info4="©Pascal Xicluna/Min.Agri.Fr." info5="Proue de la maquette d'un fileyeur de 12 meÌ?tres. CNB, groupe BeÌ?neÌ?teau."></image></structure>
  3. <structure><image image="05035_005_img.png" thumb="05035_005_tmb.png" print="false" info1="05035_005" info2="Noirmoutier en l'IÌ?le 85330" info3="2005:03:17" info4="©Pascal Xicluna/Min.Agri.Fr." info5="Pose de membrures dans une coque en composite verre et reÌ?sine polyester d'un chalutier de 12 meÌ?tres.&#10;Atelier de moulage de BeÌ?neÌ?teau PeÌ?che, CNB.&#10;Chantier de construction de bateaux de peÌ?che."></image></structure>


 
 
 
 
 
 
mais j'ai quelques soucis
 
 
1) je souhaiterais que la balise <structure>ne se repete pas avant chaque image mais juste en début et fin de toutes les images, je n'ai sait pas ainsi où placer cette balise...
 
2)je desirerais enlever le mot "exemple" situé au départ
 
3)est ce que qq1 saurait d'ou viennent ces caractères invalides du type : CNB.&#10  
 
 
merci d'avance pour vos réponses

mood
Publicité
Posté le 09-05-2005 à 12:37:53  profilanswer
 

n°1076470
FlorentG
Posté le 09-05-2005 à 15:37:53  profilanswer
 

1) Pour l'élément <structure>, sort-le de <xsl:template
2) Marrant qu'il aparaisse celui-là :heink:
3) pour les & machin et les caractère bizarres, c'est un problème utf-8 et iso-8859-1 : regarde dans la PI <?xml des deux fichiers ;) Il faut que tout le monde ait le même encoding, ce sera plus simple. Donc met tout en utf-8

n°1076584
ronnie7770​0
Posté le 09-05-2005 à 16:26:10  profilanswer
 

merci ça fonctionne bien !!!  
mon xslt es donc le suivant :  
 
 
 

Code :
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  3. <xsl:output method='xml' encoding='ISO-8859-1' />
  4. <xsl:template match="/">
  5. <xsl:apply-templates select="CatalogType/MediaItemList"/>
  6. </xsl:template>
  7. <xsl:template match="CatalogType/MediaItemList">
  8. <structure>
  9. <xsl:for-each select="MediaItem/AnnotationFields">
  10. <image image="{./Filename}_img.png" thumb="{./Filename}_tmb.png" print="false" info1="{./Filename}" info2="{./City}" info3="{./EventDate}" info4="{./Copyright}" info5="{./Caption}" />
  11. </xsl:for-each>
  12. </structure>
  13. </xsl:template >
  14. </xsl:stylesheet>


 
 
et au final j'obtiens :  
 
 
 

Code :
  1. <?xml version="1.0" encoding="ISO-8859-1"?><structure><image image="05035_002_img.png" thumb="05035_002_tmb.png" print="false" info1="05035_002" info2="Noirmoutier en l'Île  85330" info3="2005:03:17" info4="©Pascal Xicluna/Min.Agri.Fr." info5="Proue de la maquette d'un fileyeur de 12 mètres. CNB, groupe Bénéteau."/><image image="05035_005_img.png" thumb="05035_005_tmb.png" print="false" info1="05035_005" info2="Noirmoutier en l'Île  85330" info3="2005:03:17" info4="©Pascal Xicluna/Min.Agri.Fr." info5="Pose de membrures dans une coque en composite verre et résine polyester d'un chalutier de 12 mètres. Atelier de moulage de Bénéteau Pêche, CNB. Chantier de construction de bateaux de pêche."/></structure>


 
 
les seuls défauts que je n'arrive pas à modifier sont la ligne de la version du xml qui apparait...est elle genante ou necessaire ?  
et surtout je n'arrive pas à effectuer un retour à la ligne ç chaque fin de balise <image>
si qq1 pourrait m'aider

n°1077218
FlorentG
Posté le 10-05-2005 à 08:59:27  profilanswer
 

Pour la ligne de version, c'est obligatoire : c'est pour renseigner le parser de la version utilisée, et surtout de l'encodage. Sinon il va passer tout seul en utf-8, et tes caractères accentués vont tirer la tronche :)

n°1079530
ronnie7770​0
Posté le 11-05-2005 à 14:58:05  profilanswer
 

oui merci pour ta réponse mais j'ai toujours des problemes de polices ! comme je l'explique sur l'autre sujet !
merci pour vos reponses


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  XML/XSL

  transformation xml avec xslt

 

Sujets relatifs
Transformation fichier Excel en PDFComment gérer des champs photos exportés de BDD avec XSLT ?
XSLT avec PHP5 et Apache2transformation appel de fonction asm -> C
Transformation XSLOpenGL avec C++ stack pour transformation
[XSLT] cas concretinserer une transformation xslt dans un bloc <div></div>
[XML-Cocoon] redirection apres transformation XSLT ?[XSLT] aide transformation par le brouter
Plus de sujets relatifs à : transformation xml avec xslt


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)