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 :

<table> </table> éparpillé


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre averti
    Avatar de exe2bin
    Profil pro
    Passionné de programmation
    Inscrit en
    Mars 2009
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Passionné de programmation

    Informations forums :
    Inscription : Mars 2009
    Messages : 537
    Points : 387
    Points
    387
    Billets dans le blog
    3
    Par défaut <table> </table> éparpillé
    Bonjour à tous ,
    quelqu'un peut-il m'expliquer pour quoi la transformation suivante ne marche pas :
    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
     
    ......
    <xsl:template match="/">
    	<html><head></head>
    		<body>
    		<xsl:call-template name="ouvre_table"/>
    		......
    		<xsl:call-template name="ferme_table"/>
    		</body>
    	</html>
    </xsl:template>
    <xsl:template name="ouvre_table">
    	<table>
    </xsl:template>
    <xsl:template name="ferme_table">
    	</table>
    </xsl:template>

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Parce que XSLT est du XML et que le fichier XML que tu nous montres là, ouvre une balise <table>, et cette balise n'est pas fermée avant que son parent ne soit fermé. Ce qui est invalide en XML.

    Bien que XML s'écrive avec une syntaxe en balise, XML ne "pense" pas en balises, mais en éléments. La syntaxe d'un élément est une balise ouvrante, d'une balise fermante, et le contenu de l'élément est tout ce qu'il y a entre les deux.
    Comme on pense en éléments et pas en balise, il n'est pas possible de faire des trucs comme "insérer balise ouvrante ici et insérer balise fermante là" mais seulement "insérer élément ici, et mettre ça comme contenu."

    Il faudrait plutôt faire :
    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
     
    <xsl:template match="/">
    	<html><head></head>
    		<body>
    		  <xsl:call-template name="insere_table">
                        <xsl:with-param name="interieur">
                          ...
                        </xsl:with-param>
                      </xsl:call-template>
    		</body>
    	</html>
    </xsl:template>
    <xsl:template name="insere_table">
      <xsl:param name="interieur"/>
    	<table>
              <xsl:copy-of select="$interieur"/>
            </table>
    </xsl:template>
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Réponses: 11
    Dernier message: 20/11/2008, 18h08
  2. LOCK TABLES et TRUNCATE TABLE
    Par killy-kun dans le forum Requêtes
    Réponses: 2
    Dernier message: 29/08/2005, 15h52
  3. Réponses: 8
    Dernier message: 05/04/2005, 22h17
  4. Obtenir la liste des tables d'une table
    Par Pigoulou dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 09/02/2005, 14h12
  5. Une seule table VS plusieurs tables
    Par LostControl dans le forum Requêtes
    Réponses: 1
    Dernier message: 11/08/2003, 10h56

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