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] Resultat fichier XSL > XHTML


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2005
    Messages : 212
    Par défaut [XSLT] Resultat fichier XSL > XHTML
    Bonjour,

    J'ai un souci lors de la création d'un fichier XSL.
    Le code ci-dessous devrait me donner tous les NOM compte-tenu sous le noeud EMPLOYE.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="EMPLOYE">
    <xsl:value-of select="NOM"/>
    </xsl:template>
    </xsl:stylesheet>
    Or dans mes réponses j'obtiens 2 parties d'abord les nom (A) + les autres noeud compris sous la racine de EMPLOYE (il me remet le nom prenom,... avec les autres détails) (B)

    La partie A me suffit. Je ne parviens pas à comprendre pourquoi j'obtiens tous ces résultats. Je croyais au début que la raison provenait de la recherche dite "en profondeur" des noeuds mais selon moi ma dtd met sur un même rang les differents noeuds (NOM, PRENOM,..)

    Voici ma dtd
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    <?xml version="1.0" encoding="UTF-8"?>
    <!ELEMENT RESSOURCEPROJECT (EMPLOYES, ENFANTS, CONJOINTS, AFFECTERS, PROJETS)>
    <!ELEMENT EMPLOYES (EMPLOYE*)>
    <!ELEMENT EMPLOYE (INSEE, NOM, PRENOM, DATENAISSANCE, SALAIRE)>
    <!ATTLIST EMPLOYE
    	IDEMPLOYE ID #REQUIRED
    >
    <!ELEMENT INSEE (#PCDATA)>
    <!ELEMENT NOM (#PCDATA)>
    <!ELEMENT PRENOM (#PCDATA)>
    <!ELEMENT DATENAISSANCE (#PCDATA)>
    <!ELEMENT SALAIRE (#PCDATA)>
     
    <!ELEMENT ENFANTS (ENFANT*)>
    <!ELEMENT ENFANT (NOMENFANT, PRENOMENFANT, DATENAISSANCEENFANT, REFEMPLOYEENFANT)>
    <!ELEMENT NOMENFANT (#PCDATA)>
    <!ELEMENT PRENOMENFANT (#PCDATA)>
    <!ELEMENT DATENAISSANCEENFANT (#PCDATA)>
    <!ELEMENT REFEMPLOYEENFANT (#PCDATA)>
     
    <!ELEMENT CONJOINTS (CONJOINT*)>
    <!ELEMENT CONJOINT (NOMCONJOINT, PRENOMCONJOINT, REFEMPLOYECONJOINT)>
    <!ELEMENT NOMCONJOINT (#PCDATA)>
    <!ELEMENT PRENOMCONJOINT (#PCDATA)>
    <!ELEMENT REFEMPLOYECONJOINT (#PCDATA)>
     
    <!ELEMENT PROJETS (PROJET*)>
    <!ELEMENT PROJET (NOMPROJET, BUDGET)>
    <!ATTLIST PROJET
    	IDPROJET ID #REQUIRED
    >
    <!ELEMENT NOMPROJET (#PCDATA)>
    <!ELEMENT BUDGET (#PCDATA)>
     
    <!ELEMENT AFFECTERS (AFFECTER*)>
    <!ELEMENT AFFECTER (TEMPSPOURCENTAGE, REFEMPLOYE, REFPROJET)>
    <!ELEMENT TEMPSPOURCENTAGE (#PCDATA)>
    <!ELEMENT REFEMPLOYE (#PCDATA)>
    <!ELEMENT REFPROJET (#PCDATA)>
    Voici mon fichier XML

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
     
    <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE RESSOURCEPROJECT SYSTEM "D:\M2_IAE_SIO_ALTER\IAE M2\XML\TP\DTD.dtd">
     
     
    <RESSOURCEPROJECT>
    	<EMPLOYES>
    		<EMPLOYE IDEMPLOYE="A1">
    			<INSEE>1610146765321</INSEE>
    			<NOM>Duval</NOM>
    			<PRENOM>Jean</PRENOM>
    			<DATENAISSANCE>1961-01-01</DATENAISSANCE>
    			<SALAIRE>14000</SALAIRE>
    		</EMPLOYE>
    		<EMPLOYE IDEMPLOYE="A2">
    			<INSEE>1670478956756</INSEE>
    			<NOM>Durand</NOM>
    			<PRENOM>Jacques</PRENOM>
    			<DATENAISSANCE>1967-04-01</DATENAISSANCE>
    			<SALAIRE>7000</SALAIRE>
    		</EMPLOYE>
    		<EMPLOYE IDEMPLOYE="A3">
    			<INSEE>2721065756378</INSEE>
    			<NOM>Dupond</NOM>
    			<PRENOM>Sophie</PRENOM>
    			<DATENAISSANCE>1972-10-03</DATENAISSANCE>
    			<SALAIRE>11000</SALAIRE>
    		</EMPLOYE>
    		<EMPLOYE IDEMPLOYE="A4">
    			<INSEE>2680208978690</INSEE>
    			<NOM>Dutroux</NOM>
    			<PRENOM>Louise</PRENOM>
    			<DATENAISSANCE>1968-02-07</DATENAISSANCE>
    			<SALAIRE>15000</SALAIRE>
    		</EMPLOYE>
    	</EMPLOYES>
    	<ENFANTS>
    		<ENFANT>
    			<NOMENFANT>Duval</NOMENFANT>
    			<PRENOMENFANT>Pierre</PRENOMENFANT>
    			<DATENAISSANCEENFANT>1981-08-07</DATENAISSANCEENFANT>
    			<REFEMPLOYEENFANT>A1</REFEMPLOYEENFANT>
    		</ENFANT>
    		<ENFANT>
    			<NOMENFANT>Duval</NOMENFANT>
    			<PRENOMENFANT>Patrice</PRENOMENFANT>
    			<DATENAISSANCEENFANT>1984-03-17</DATENAISSANCEENFANT>
    			<REFEMPLOYEENFANT>A1</REFEMPLOYEENFANT>
    		</ENFANT>
    		<ENFANT>
    			<NOMENFANT>Durand</NOMENFANT>
    			<PRENOMENFANT>Pierre</PRENOMENFANT>
    			<DATENAISSANCEENFANT>1983-11-27</DATENAISSANCEENFANT>
    			<REFEMPLOYEENFANT>A2</REFEMPLOYEENFANT>
    		</ENFANT>
    		<ENFANT>
    			<NOMENFANT>Berlier</NOMENFANT>
    			<PRENOMENFANT>Louis</PRENOMENFANT>
    			<DATENAISSANCEENFANT>1983-11-12</DATENAISSANCEENFANT>
    			<REFEMPLOYEENFANT>A4</REFEMPLOYEENFANT>
    		</ENFANT>
    		<ENFANT>
    			<NOMENFANT>Berlier</NOMENFANT>
    			<PRENOMENFANT>Anne</PRENOMENFANT>
    			<DATENAISSANCEENFANT>1997-05-13</DATENAISSANCEENFANT>
    			<REFEMPLOYEENFANT>A4</REFEMPLOYEENFANT>
    		</ENFANT>
    	</ENFANTS>
    	<CONJOINTS>
    		<CONJOINT>
    			<NOMCONJOINT>Duval</NOMCONJOINT>
    			<PRENOMCONJOINT>Sylvie</PRENOMCONJOINT>
    			<REFEMPLOYECONJOINT>A1</REFEMPLOYECONJOINT>
    		</CONJOINT>
    	</CONJOINTS>
    	<AFFECTERS>
    		<AFFECTER>
    			<TEMPSPOURCENTAGE>100</TEMPSPOURCENTAGE>
    			<REFEMPLOYE>A1</REFEMPLOYE>
    			<REFPROJET>A4</REFPROJET>
    		</AFFECTER>
    		<AFFECTER>
    			<TEMPSPOURCENTAGE>40</TEMPSPOURCENTAGE>
    			<REFEMPLOYE>A2</REFEMPLOYE>
    			<REFPROJET>P1</REFPROJET>
    		</AFFECTER>
    		<AFFECTER>
    			<TEMPSPOURCENTAGE>40</TEMPSPOURCENTAGE>
    			<REFEMPLOYE>A2</REFEMPLOYE>
    			<REFPROJET>P4</REFPROJET>
    		</AFFECTER>
    		<AFFECTER>
    			<TEMPSPOURCENTAGE>20</TEMPSPOURCENTAGE>
    			<REFEMPLOYE>A3</REFEMPLOYE>
    			<REFPROJET>P2</REFPROJET>
    		</AFFECTER>
    		<AFFECTER>
    			<TEMPSPOURCENTAGE>80</TEMPSPOURCENTAGE>
    			<REFEMPLOYE>A3</REFEMPLOYE>
    			<REFPROJET>P3</REFPROJET>
    		</AFFECTER>
    		<AFFECTER>
    			<TEMPSPOURCENTAGE>100</TEMPSPOURCENTAGE>
    			<REFEMPLOYE>A4</REFEMPLOYE>
    			<REFPROJET>A2</REFPROJET>
    		</AFFECTER>
    	</AFFECTERS>
    	<PROJETS>
    		<PROJET IDPROJET="P1">
    			<NOMPROJET>SAP</NOMPROJET>
    			<BUDGET>40000</BUDGET>
    		</PROJET>
    		<PROJET IDPROJET="P2">
    			<NOMPROJET>ASP</NOMPROJET>
    			<BUDGET>60000</BUDGET>
    		</PROJET>
    		<PROJET IDPROJET="P3">
    			<NOMPROJET>.NET</NOMPROJET>
    			<BUDGET>20000</BUDGET>
    		</PROJET>
    		<PROJET IDPROJET="P4">
    			<NOMPROJET>On demand</NOMPROJET>
    			<BUDGET>30000</BUDGET>
    		</PROJET>
    	</PROJETS>
    </RESSOURCEPROJECT>
    MErci pour votre aide.

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Par défaut
    Je comprends pas trop nom plus on dirait qu'il prend tous les noeud de même profondeur contenant NOM.
    Sinon ceci devrait mieux marcher
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
     
    <xsl:template match="/">
          <xsl:apply-templates select = "//EMPLOYE" />
    </xsl:template>
     
    <xsl:template match="EMPLOYE">
         <xsl:value-of select="NOM"/>
    </xsl:template>
     
    </xsl:stylesheet>

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2005
    Messages : 212
    Par défaut
    Ca marche nickel.
    Super sympa d'avoir pris du temps.

    MErci

    Bonne continuation.

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

Discussions similaires

  1. [XSLT] Optimisation fichiers XSL
    Par tahatriki dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 06/01/2011, 17h08
  2. [XSLT]un fichier xsl et plusieurs fichiers xml
    Par akhtira dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 04/02/2008, 11h03
  3. [XSLT] Importer un fichier xml (i18n) dans un fichier xsl
    Par cassy dans le forum XSL/XSLT/XPATH
    Réponses: 10
    Dernier message: 11/04/2007, 11h38
  4. Réponses: 1
    Dernier message: 03/11/2006, 11h15
  5. [XSLT] Probleme de structure de fichier xsl
    Par ben23 dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 17/07/2006, 10h46

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