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] Traitement incohérent...


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2007
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 40
    Points : 25
    Points
    25
    Par défaut [XSLT] Traitement incohérent...
    Bonjour je voudrai afficher un fichier en XML à l'aide de XSL voila le code:

    code 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
    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="../styles/named.xsl"?>
     
    <named>
     
    <commentaire1>//named.conf for Red Hat caching-nameserver</commentaire1>
     
    <zone1>
    	<zone>zone</zone>
    	<serveur>"gallimedia.org."</serveur>
    	<dom>IN</dom>
    	<ouv_parent>{</ouv_parent>
    	<type>type</type>
    	<type_serveur>master;</type_serveur>
    	<file>file</file>
    	<nom_fichier>"gallimedia.org.db";</nom_fichier>
    	<ferm_parent>}</ferm_parent>
    	<fin_zone>;</fin_zone>
    </zone1>
     
    <zone1>
    	<zone>zone</zone>
    	<serveur>"2.168.192.IN-ADDR.ARPA."</serveur>
    	<dom>IN</dom>
    	<ouv_parent>{</ouv_parent>
    	<type>type</type>
    	<type_serveur>master;</type_serveur>
    	<file>file</file>
    	<nom_fichier>"gallimedia.org.ptr";</nom_fichier>
    	<ferm_parent>}</ferm_parent>
    	<fin_zone>;</fin_zone>
    </zone1>
     
    <zone1>
    	<zone>zone</zone>
    	<serveur>"."</serveur>
    	<dom>IN</dom>
    	<ouv_parent>{</ouv_parent>
    	<type>type</type>
    	<type_serveur>hint;</type_serveur>
    	<file>file</file>
    	<nom_fichier>"named.ca";</nom_fichier>
    	<ferm_parent>}</ferm_parent>
    	<fin_zone>;</fin_zone>
    </zone1>
     
    <include>include "/etc/rndc.key";</include>
     
    </named>
    et voici le code XSL:

    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
    <xsl:transform
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
     version="2.0"
    >
     
    <xsl:template match="/">
     
    <xsl:text>
    </xsl:text>
    <xsl:value-of select="named/commentaire1"/><xsl:text>
     
    </xsl:text>
     
    <!-- zone1 -->
    <xsl:value-of select="named/zone1/zone"/><xsl:text>&#x20;</xsl:text> 		
    <xsl:value-of select="named/zone1/serveur"/><xsl:text>&#x20;</xsl:text> 	
    <xsl:value-of select="named/zone1/dom"/><xsl:text>&#x20;</xsl:text> 		
    <xsl:value-of select="named/zone1/ouv_parent"/><xsl:text>
    	</xsl:text> 		
    <xsl:value-of select="named/zone1/type"/><xsl:text>&#x20;</xsl:text> 
    <xsl:value-of select="named/zone1/type_serveur"/><xsl:text>
    	</xsl:text> 
    <xsl:value-of select="named/zone1/file"/><xsl:text>&#x20;</xsl:text> 
    <xsl:value-of select="named/zone1/nom_fichier"/><xsl:text>
    </xsl:text> 
    <xsl:value-of select="named/zone1/ferm_parent"/> 
    <xsl:value-of select="named/zone1/fin_zone"/><xsl:text>
     
    </xsl:text> 
     
    <xsl:value-of select="named/include"/> 	
     
     
     
    </xsl:template>
    </xsl:transform>
    Lorsque je fusionne les 2 fichiers à l'aide de SAXON :

    les elements sont imbriqués!!

    au lieu d'afficher ceci :

    zone "gallimedia.org." IN {
    type master;
    file "gallimedia.org.db";
    };

    zone "2.168.192.IN-ADDR.ARPA." IN {
    type master;
    file "gallimedia.org.ptr";
    };

    zone "." IN {
    type hint;
    file "named.ca";
    };
    Il m'affiche ceci:

    zone zone zone "gallimedia.org." "2.168.192.IN-ADDR.ARPA." "." IN IN IN { { {
    type type type master; master; hint;
    file file file "gallimedia.org.db"; "gallimedia.org.ptr"; "named.ca";
    } } }; ; ;
    voila mon problème merci !!!

  2. #2
    Membre du Club
    Inscrit en
    Janvier 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 50
    Points : 56
    Points
    56
    Par défaut
    il te faut un template zone1
    avec ton traitement dedans

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:template match="zone1">
    et dans ton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:template match="/">
    mets un


Discussions similaires

  1. [XSLT] traitement de chaine via Variable et apply-templates
    Par jdriele dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 15/11/2010, 10h08
  2. [XSLT] Traitement d'un fichier XML
    Par saidgrd dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 04/01/2010, 21h27
  3. [XSLT] Traitement sequentiel des balises differentes
    Par SkyBack dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 03/11/2009, 13h54
  4. [word] [XSLT] Traitement de document
    Par civodultrebor37 dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 28/09/2006, 12h34
  5. optimisation de temps de traitement xml/xslt
    Par Erwy dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 06/05/2004, 16h08

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