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 :

Requete XPath: neoud XML et string


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2003
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 21
    Points : 15
    Points
    15
    Par défaut Requete XPath: neoud XML et string
    Salut,

    j'ai une variable qui contient un noeud XML:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <xsl:variable name="$arbre" select="document(arbre.xml')" />
    Elle contient:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <collection>
    <objet>
    <domaine>blabla</domaine>
    </objet>
    </collection>
    Et je voudrais récupérer le contenu de la balise 'domaine'
    par un Xpath du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <xsl:value-of select="$arbre/collection/objet/domaine"/>
    Jusque là, pas de problème.

    Mon problème est de pouvoir mettre la fin de la requete dans une variable:
    -> $requete est une variable contenant: collection/objet/domaine.

    Et je veux donc faire un truc du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <xsl:value-of select="$arbre/$requete"/>
    car ma variable $requete, à l'avenir sera différente à chaque fois!!

    Comment faire pour réaliser cet XPath sans qu'il y ait de problème pour la concordance entre Node ($arbre) et String ($requete)


    Merci...
    Alex.

  2. #2
    Membre à l'essai
    Inscrit en
    Mars 2003
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 21
    Points : 15
    Points
    15
    Par défaut
    up.

    merci

  3. #3
    Membre confirmé
    Avatar de grishka
    Inscrit en
    Janvier 2003
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 285
    Points : 499
    Points
    499
    Par défaut
    tu as entièrement raison : on ne peut pas mélanger fragment d'arbre et chaine de caractère. Donc j'essayerais bien un petit coup de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select="$arbre/*[$requete]"
    "Les gens normaux croient que si ca marche, c'est qu'il n'y a rien à reparer. Les ingénieurs croient que si ca marche, c'est que ca ne fait pas encore assez de choses."
    --Scott Adams

  4. #4
    Membre confirmé
    Avatar de grishka
    Inscrit en
    Janvier 2003
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 285
    Points : 499
    Points
    499
    Par défaut
    la requête précédente est fausse à mon avis. La possibilité de traiter des requêtes XPath de manière dynamique n'est pas spécifiée dans la recommandation du W3C. D'après ce que j'ai lu, le résultat d'une requête est un fragment d'arbre résultat qui se comporte comme un noeud du document initial sauf que l'ensemble des opérations disponibles est plus restreint. Cette possibilité est dépendante de l'implémentation : elle est peut être offerte par Xalan ou Saxon et pas par MSXML. A vérifier.

    Peut-être que la version 2 de Xpath apporte une solution. En attendant il faudra ruser, par exemple en définissant un template analyseur de requete XPath!!! c'est faisable si tu te limite à une requete a/b/c

    tu découpes en a, b et c et tu appliques récursivement

    $arbre := $arbre / *[name() = node]
    $node := nom du prochain noeud

    sinon là je vois pas!
    "Les gens normaux croient que si ca marche, c'est qu'il n'y a rien à reparer. Les ingénieurs croient que si ca marche, c'est que ca ne fait pas encore assez de choses."
    --Scott Adams

Discussions similaires

  1. [SimpleXML] Combox en php (5.2) depuis requete xpath sur xml
    Par christophetriboulet dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 24/03/2015, 16h28
  2. [c#][xml] requete xpath sur document xml avec espace de noms
    Par fab56 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 19/02/2009, 11h56
  3. [Requete XPath XML]
    Par tatemilio2 dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 14/09/2006, 08h36
  4. [XML/XSL/XPATH]Requete XPATH pour transformation
    Par Le-Cortex dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 04/01/2006, 17h32
  5. probleme avec requete sql aime pas les strings
    Par lil_jam63 dans le forum Bases de données
    Réponses: 3
    Dernier message: 24/02/2004, 14h45

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