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

XSL/XSLT/XPATH XML Discussion :

[XSLT] Probleme de selection avec namespaces


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 19
    Points : 12
    Points
    12
    Par défaut [XSLT] Probleme de selection avec namespaces
    Bonjour,

    En faisant mon fichier XSL, j'ai un probleme de selection de noeuds.
    Voici le fichier XML que je dois analyser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?xml version="1.0" encoding="UTF-8" ?> 
    <result-table xmlns="http://internal.entreprise.com/dump" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="domain-info">
    <record data-source-service="postgres-ds-0">
      <string name="iso_country">FR</string> 
      <number name="customerid">1</number> 
      <string name="name">Customer</string> 
      ... 
      <boolean name="f_billing_required">false</boolean>
      </record>
      </result-table>
    Le probleme c'est que j'ai l'impression que ce xmlns est responsable des problemes que je rencontre.
    Quand je fais un :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <xsl:template match="/">
    <xsl:variable name="selection" select="result-table"/>
    <xsl:text> Selected : <xsl:value-of select="count($selection)"/> </xsl:text>
    </xsl:template>
    Il me retourne selected : 0, alors que normalement il devrait me retourner selected : 1.
    Quelqu'un pourrait-il m'aider a resoudre ce probleme svp ?

  2. #2
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    il faut effectivement tenir compte du namespace par défaut déclaré dans le XML.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <xsl:stylesheet xmlns:toto="http://internal.entreprise.com/dump"...>
    ...
    <xsl:variable name="selection" select="toto:result-table"/>
    Attention, les namespaces par défaut ne s'appliquent pas aux attributs (il ne faut donc pas utiliser le préfixe 'toto' quand tu écriras un attribut dans une expression XPath).

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    merci beaucoup pour ton aide Grandfather, ca marche nickel !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSLT] probleme de selection
    Par alex.nd dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 11/09/2006, 18h30
  2. [XSLT] Problème d'indentaion avec XSL
    Par Najdar dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 18/08/2006, 08h38
  3. Réponses: 4
    Dernier message: 02/08/2006, 08h42
  4. probleme de selection avec access
    Par mike600river dans le forum C++Builder
    Réponses: 13
    Dernier message: 24/05/2006, 10h17
  5. probleme requete select avec 2 colonnes
    Par cricri45000 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 21/04/2005, 10h39

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