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 :

[XPath] Récupérer un élément parent


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
    Inscrit en
    Novembre 2005
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 12
    Par défaut [XPath] Récupérer un élément parent
    Bonjour,

    J'ai un fichier Xml que je transforme en tableau HTML avec une transformation XSL.
    Quand on est descendu dans l'arborescence du fichier avec l'instruction for-each, comment fait on pour récupérer un élément parent.

    Voici mon fichier xsl & une partie du fichier xml.
    J'ai plusieurs critères pour un numéro d'échantillon et j'aimerais donc récupérer ce n° d'échantillon (Sample/Id) et l'afficher dans la première colonne de mon tableau.

    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
    <?xml version="1.0" encoding="ISO-8859-1"?>
     
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/">
      <table border="1">
        <tr>
          <th>ID_ECHANTILLON</th>
          <th>JCRITERE</th>
          <th>VALEUR</th>
        </tr>
        <xsl:for-each select="SampleDocument/Samples/Sample/Results/Result">
        <tr>
          <td><xsl:value-of select="parent::node(Sample/Id)"/></td>
          <td><xsl:value-of select="Criterion/@Id"/></td>
          <td><xsl:value-of select="NumericalValue"/></td>
        </tr>
        </xsl:for-each>
      </table>
    </xsl:template>
    </xsl:stylesheet>
    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
    29
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="toto.xsl"?>
    <SampleDocument>
    	<Samples>
    		<Sample>
    			<ExternalComment>V 53 - FORMULE 25405531 - INDICE 84 - CHARGEMENT VRAC - PC GPF8 2006 - POIDS ECHANTILLON : 158 G</ExternalComment>
    			<Id>250605428</Id>
    			<IntakeCode>2997</IntakeCode>
    			<MowDate>2006-07-05 00:00:00.000</MowDate>
    			<SamplingDate>2006-06-15 00:00:00.000</SamplingDate>
    			<Results>
    				<Result>
    					<NumericalValue>6.2</NumericalValue>
    					<ReceiverAlphanumericalValue>6.2</ReceiverAlphanumericalValue>
    					<Unit Id="%" ReceiverId="%"></Unit>
    					<Criterion Id="MG" ReceiverId="MG">
    						<Method Id="1" ReceiverId="1"></Method>
    					</Criterion>
    					<Lab Id="2" ReceiverId="2"></Lab>
    				</Result>
    				<Result>
    					<NumericalValue>18.9</NumericalValue>
    					<ReceiverAlphanumericalValue>18.9</ReceiverAlphanumericalValue>
    					<Unit Id="%" ReceiverId="%"></Unit>
    					<Criterion Id="MPB" ReceiverId="MPB">
    						<Method Id="1" ReceiverId="1"></Method>
    					</Criterion>
    					<Lab Id="2" ReceiverId="2"></Lab>
    				</Result>

    Merci d'avance

    Simon

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 194
    Par défaut
    salut,
    xpath marche comme une arborescence de fichier, pour avoir le sample/id alors que tu es sous sample/results/result, il suffit de:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <xsl:value-of select="../../id"/>

Discussions similaires

  1. Une erreur 233 de ms sql server
    Par Hokage dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 05/10/2009, 17h40
  2. Erreur 233 sous sql server
    Par brajae85 dans le forum Oracle
    Réponses: 3
    Dernier message: 18/05/2009, 16h12
  3. Réponses: 2
    Dernier message: 05/10/2004, 22h43

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