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 :

[XSL] savoir si le noeud courant est root


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre éclairé Avatar de luta
    Inscrit en
    Novembre 2003
    Messages
    1 038
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 038
    Points : 786
    Points
    786
    Par défaut [XSL] savoir si le noeud courant est root
    Bonjour, je n arrive pas à faire un test valable pour savoir si le noeud courant est le noeud root.
    Je ne connais pas trop les axes nodaux j ai essayé un truc de ce style

    <xsl:if test="ancestor::*"/>

    je ne sais pas si
    1/ c est écrit correctement
    2/ faire la version "not" de cette expression

    merci pour votre aide

  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,

    de tous les noeuds qu'on puisse trouver dans un flux XML, le seul à ne pas avoir de parent est le noeud root (à ne pas confondre avec l'élément racine du document qui englobe tous les autres). Cela donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:if test="not(..)">
    .. est la notation abrégée pour parent::node()

  3. #3
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    edit: edition de ce message

    Je crains que tu ne confondes la premiere balise avec le ROOT du document qui est une balise invisible selectionné par /

    Attention a ce type de test.
    not(parent::*) (qui est different de not(..)) ne selectionnera pas le le root du document mais tout les premier fils du root.
    Parce que le(s) processing-instruction(s) sont aussi dans ce cas ainsi que des comment() peuvent l'être comme la premiere balise.

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/03/2011, 09h58
  2. [XSL]Obtenir le noeud précédent le noeud courant
    Par ethan_decoster dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 19/10/2007, 09h30
  3. comment connaitre si le noeud courant est le root?
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 19/09/2005, 14h45
  4. [VB6] comment savoir si la commande shell est terminée ?
    Par ghyscharlotte dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 30/07/2003, 19h12
  5. Réponses: 4
    Dernier message: 10/09/2002, 17h09

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