IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XML/XSL et SOAP Discussion :

XML/XSLT : Transformer balises et attributs


Sujet :

XML/XSL et SOAP

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut XML/XSLT : Transformer balises et attributs
    Salut à tous,

    Je suis débutante en XML/XSLT, j'ai lu les cours en ligne que j'ai pu trouver mais je galère à transformer mes balises et attributs. Rien n'est jamais parfait. Concrètement, j'aimerais faire un XSLT qui transformerait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <Titre Attribut="aaaa">
    <Balise1 Att1="xxx" Att2="yyy">
    <Balise2>
    <Balise3>Machin</Balise3>
    <Balise4>Bidule</Balise4>
    </Balise2>
    </Balise1>
    </Titre>
    en

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <MonTitre MonAttribut="aaaa">
    <MaBalise1 MonAtt1="xxx" MonAtt2="yyy">
    <MaBalise2>
    <MaBalise3>Machin</MaBalise3>
    <MaBalise4>Bidule</MaBalise4>
    </MaBalise2>
    </MaBalise1>
    </MonTitre>
    Merci d'avance et désolée de mes questions qui sont sûrement idiotes à votre niveau !

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 567
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 567
    Points : 21 633
    Points
    21 633
    Par défaut
    Hum. En principe je te demanderais de nous montrer un de tes codes pour qu'on t'aide à le corriger.
    Mais on va dire que pour ce cas d'utilisation, il n'y a pas de bonne ressource sur Internet expliquant comment le faire. Alors en voici une :

    Pour transformer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <A d="hello" e="guten tag">
      <B f="ohayo">
        <C>Bonjour</C>
      </B>
    </A>
    En ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <Z w="hello" v="guten tag">
      <Y u="ohayo">
        <X>Bonjour</X>
      </Y>
    </Z>
    Faire comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <!-- éléments -->
    <xsl:template match="*">
      <xsl:variable name="elementName">
        <xsl:choose>
          <xsl:when test="self::A">Z</xsl:when>
          <xsl:when test="self::B">Y</xsl:when>
          <xsl:when test="self::C">X</xsl:when>
        </xsl:choose>
      </xsl:variable>
      <xsl:element name="{$elementName}">
        <xsl:apply-templates select="@*|node()"/>
      </xsl:element>
    </xsl:template>
     
     
    <!-- attributs -->
    <xsl:template match="@*">
      <xsl:variable name="attributeName">
        <xsl:choose>
          <xsl:when test="parent::A and name() = 'd'">w</xsl:when>
          <xsl:when test="parent::A and name() = 'e'">v</xsl:when>
          <xsl:when test="parent::B and name() = 'f'">u</xsl:when>
        </xsl:choose>
      </xsl:variable>
      <xsl:attribute name="{$attributeName}">
        <xsl:value-of select="."/>
      </xsl:attribute>
    </xsl:template>

Discussions similaires

  1. [XSLT] Détection balise et attribution d'un style
    Par diden138 dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 28/12/2006, 10h55
  2. [XSLT] Transformer & Balises Vides
    Par BaBeuH dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 29/09/2006, 16h15
  3. [XML][XSLT] transformer le xml en binaire via une xslt
    Par chama dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 25/07/2005, 12h42
  4. [XSLT] transformation XML->XML en php
    Par amellouki dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 03/03/2005, 13h32
  5. [XSLT] [XML->HTML] transformation XML -> HTML via XSL
    Par Great Sayaman dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 11/12/2004, 23h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo