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 :

Récupérer l'attribut d'une balise.


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2009
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2009
    Messages : 59
    Par défaut Récupérer l'attribut d'une balise.
    Bonjour à tous, j'ai un fichier XML se présentant comme le suivant:

    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
    <filmographie>
       <resumes>
          <resume filmref="f1" realisateur="Vassili Silovic">[Documentaire]</resume>
     
          <resume filmref="f2" realisateur="Chuck Workman">[Documentaire</resume>
       <resumes>
     
       [...]
     
       <roles>
          <role filmref="f1" personnage="Herself" date="1996">Orson Welles: The One-Man Band</role>
     
          <role filmref="f2" personnage="Herself" date="1995">First 100 Years: A Celebration of American Movies, The</role>
       <roles>
    </filmographie>
    Je dois récupérer la référence du film dont la date de sortie est 1995 par exemple (jusque là ça va), mais je dois retenir cette référence (la stocker?) afin de m'en reservir et de pouvoir trouver le nom du réalisateur de ce film. Si quelqu'un pouvait me donner la démarche à suivre, je lui en serais reconnaissant. Merci !

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:variable name="ref" select="/filmographie/roles/role[@date = '1995']/@filmref"/>
    Pour t'en servir plus tard dans un XPath : $ref .

    Lire les tutoriaux à propos de variables.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2009
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2009
    Messages : 59
    Par défaut
    Merci, j'aimerais également savoir comment distinguer une balise inline (<balise/>) d'une balise block (<balise> </balise> ).

  4. #4
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    - Cela ne s'appelle pas inline ou block. Inline et block sont des concepts HTML et CSS, qui ne se généralisent pas à tout XML. Plus important, ces concepts n'ont rien à voir avec <balise/> et <balise> </balise>.
    <balise/> est auto-fermante et <balise> ... </balise> ne l'est pas, c'est tout.

    - Il n'y a pas de différence entre <balise/> et <balise></balise>. Dans les deux cas, il n'y a pas de contenu. Pas de différence => pas de distinction.

    - Pour faire la différence entre une balise vide et une balise qui contient quelque chose, quoi que ce soit, même un espace, tu peux faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <!-- vérifier si la balise contient quelque chose -->
    <xsl:if test="balise/node()"/>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <!-- vérifier si la balise est vide -->
    <xsl:if test="not(balise/node())"/>
    balise/node() sélectionne tous les enfants de <balise>, que ce soit élément, texte ou autre chose. Pris comme un booléen, il est true si la sélection contient quelque chose, et false si c'est vide.

    Donc en l'entourant de not(), on vérifie si c'est vide.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Récupérer la valeur d'un attribut d'une balise séléctionnée par Spinner
    Par kamclasse dans le forum Composants graphiques
    Réponses: 5
    Dernier message: 16/12/2014, 13h14
  2. Réponses: 6
    Dernier message: 06/08/2014, 10h12
  3. [DOM] récupérer le code dans une balise
    Par mavvv dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/03/2006, 08h27
  4. Accès aux attributs d'une balise HTML
    Par tatou42 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 09/02/2006, 14h01
  5. Modif des attributs d'une balise <param> en javascript
    Par Henri dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/08/2005, 22h20

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