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 :

[XSL]Soucis de lecture de balise svg


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2003
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 91
    Points : 47
    Points
    47
    Par défaut [XSL]Soucis de lecture de balise svg
    Bonjour a tous.
    J'essaye d'inserer ungraphique Svg dans ma page Xml. Ceci se passe bien tant qu'il n'y a pas de feuille de style.
    Si j'adjoint mon XSL à mon document xml, alors la il ne voit plus mon SVG. J'ai essayer de decaler mes balise de template XSL mais rien n'y fait.

    Je pense que cela viens de mon faible niveau en XSL... pourriez vous m'aider ?

    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
    <?xml version="1.0" standalone="yes"?>
    <?xml-stylesheet type="text/xsl" href="MontignyRungisCR.xsl"?>
     
    <MtpReport>  
        <parent xmlns="http://example.org"
           xmlns:svg="http://www.w3.org/2000/svg">
               <!-- le contenu du parent ici -->
            <svg:svg viewBox="0 0 2000 1300" width="20cm" height="20cm" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
     
                <svg:title>Les jours de la semaine</svg:title>
                <svg:defs>
                    <svg:path id="trait" d="M0,0 l800,0 z" />
                    <svg:rect id="pastille" x="0" y="0" width="60" height="60" stroke="black" stroke-width="4" />
                </svg:defs>
                <svg:g transform="translate(50,50)">
                <!-- Mis en place des axes-->
                <svg:g stroke-width="2" stroke="black"  id="part">
                    <svg:line x1="0" y1="0" x2="0" y2="800" />
                    <svg:line x1="0" y1="800" x2="1000" y2="800" />
                </svg:g>
     
                <!-- Ajout de la courbes -->
                <svg:g stroke-width="2" stroke="red"  id="part_Sunday">
                    <line x1="50" y1="100" x2="80" y2="150" />
                    <line x1="80" y1="150" x2="110" y2="160" />
                    <line x1="110" y1="160" x2="140" y2="195" />
                </svg:g>
                </svg:g>
     
            </svg:svg>
        </parent>
      <Gare>
        <Label>MONTIGNY BEAUCHAMP</Label>
          <arrivee>00:00</arrivee>
          <depart>00:00</depart>
       </Gare>
       <Gare>
        <Label>FRANCONVILLE </Label>
         <arrivee>00:00</arrivee>
          <depart>00:00</depart>
       </Gare>
       <Gare>
        <Label>CERNAY</Label>
         <arrivee>00:00</arrivee>
          <depart>00:00</depart>
       </Gare>
     
    </MtpReport>
    XSL(sans la feuille de style) :
    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
     
    <?xml version="1.0"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="html" encoding="Windows-1252" />
     
    <xsl:template match="/">
      <html>
        <head>
          <style type="text/css">
    		  </style>
        </head>
        <title>
          Scoring Report
        </title>
        <body>
          <H1 align="center">MISSION</H1>
     
          <H3 align="left"> Test SVG dans un fichier XSL</H3>
    			<P/>
      		    	<TABLE class="parameters">
      		    	   <COL class="ParametersCol1"/><COL class="ParametersCol2"/><COL class="ParametersCol2"/>
        				<TR><TH>Gare</TH><TH>heure depart</TH><TH>heure d'arrivee</TH></TR>
      			    	<xsl:for-each select="MtpReport/Gare">
        					 <TR><TD><xsl:value-of select="Label" /></TD>
        					  <TD><xsl:value-of select="arrivee" /></TD>
        					  <TD><xsl:value-of select="depart" /></TD></TR>
        			     </xsl:for-each>
      				 </TABLE>
        </body>
      </html>
    </xsl:template>
     
    </xsl:stylesheet>

  2. #2
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    ca me paraît normal : dans ta feuille de style XSL, tu parcours les éléments Gare, Label, arrivee et depart, mais il n'est nul part fait mention de l'élément svg:svg. Pour qu'il soit recopié dans le HTML de sortie, il faut ajouter (au bon endroit) cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:copy-of select="svg:svg" />
    Il ne faut pas non plus oublier de déclarer l'espace de noms SVG dans la balise <xsl:stylesheet>.

    P.S. : tous les trains arrivent et partent à minuit, dans le Val d'Oise ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2003
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 91
    Points : 47
    Points
    47
    Par défaut
    Merci pour ta reponse, je recherchait cette commande en effet.

    pour ce qui est des trains, c'est la rapidité extreme a la sncf

    Je viens d'essayer comme ca (en ajoutant la declaration ) et il m'affiche toujours rien le vilain Xsl...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
               <xsl:for-each select="MtpReport/Parent">
    			     <xsl:copy-of select="svg:svg" />
    			</xsl:for-each>
      		    	<TABLE class="parameters">
      		    	   <COL class="ParametersCol1"/><COL class="ParametersCol2"/><COL class="ParametersCol2"/>
        				<TR><TH>Gare</TH><TH>heure depart</TH><TH>heure d'arrivee</TH></TR>
      			    	<xsl:for-each select="MtpReport/Gare">
        					 <TR><TD><xsl:value-of select="Label" /></TD>
        					  <TD><xsl:value-of select="arrivee" /></TD>
        					  <TD><xsl:value-of select="depart" /></TD></TR>
        			     </xsl:for-each>
      				 </TABLE>

  4. #4
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Attention, XML (et donc XSLT) est sensible à la casse : parent <> Parent

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Août 2003
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 91
    Points : 47
    Points
    47
    Par défaut
    Oui oui j'ai corriger mais ca change rien... Tu n'aurai pas une astuce pour voir le code HTML qui sort? Car pour l'instant je ne peu pas voir le rendu alors je peut pas expliquer plus pourquoi ca marche pas

Discussions similaires

  1. Souci de lecture
    Par Eclipse39 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 23/09/2008, 19h11
  2. Réponses: 8
    Dernier message: 01/05/2007, 17h13
  3. [XSL][FOP] un FO plusieurs fichiers SVG
    Par Sornix dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 24/11/2006, 12h01
  4. Réponses: 1
    Dernier message: 17/08/2006, 08h16
  5. XSL - choose et test pour balise vide
    Par enigma dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 19/07/2005, 08h02

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