Je pense que le code xml serait le bienvenu pour voir ce qui ne va pas...
Ca sera plus facile pour débugger ta feuille de style... ;)
Version imprimable
Je pense que le code xml serait le bienvenu pour voir ce qui ne va pas...
Ca sera plus facile pour débugger ta feuille de style... ;)
Ok :P
Bon en fait là je suis passée par autre chose et j'ai réussi à entrer dans mon template start-state mais maintenant je galère pour en récupérer la valeur... (y a toujours un truc qui va pas rlalala !)
Mon XML :
Mon xsl de test :Code:
1
2
3
4
5
6
7
8
9
10 <process-definition xmlns="urn:jbpm.org:jpdl-3.1" name="process1"> <start-state name="start"> <transition name="to_state" to="end"/> </start-state> <end-state name="end"/> </process-definition>
C'est le truc en rouge qui me pose problème maintenant... En vert ce que j'ai changé pour que mon template start-state soit visible ;)Code:
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" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:svg="http://www.w3.org/2000/svg"> <xsl:output method="xml" indent="yes" standalone="no" doctype-public="-//W3C//DTD SVG 1.0//EN" doctype-system="http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd" media-type="image/svg" /> <xsl:variable name="case-width">100</xsl:variable> <xsl:variable name="case-height">30</xsl:variable> <xsl:variable name="font-size">20</xsl:variable> <xsl:template match="/"> <svg width="800px" height="600px"> <rect x="1" y="1" width="798" height="598" fill="#F0F0FF" stroke="blue" stroke-width="2" /> <xsl:call-template name="start" /> </svg> </xsl:template> <xsl:template match="start-state" name="start"> <xsl:variable name="start-posx">400</xsl:variable> <xsl:variable name="start-posy">100</xsl:variable> <rect x="{$start-posx+-0.5*$case-width}" y="{$start-posy+-0.5*$case-height}" width="{$case-width}" height="{$case-height}" rx="5" fill="blue" /> <text x="{$start-posx}" y="{$start-posy+0.25*$font-size}" font-family="Verdana" font-size="{$font-size}" fill="white" text-anchor="middle"> <xsl:value-of select="@name" /> </text> </xsl:template> </xsl:stylesheet>
;)Code:<xsl:value-of select="transition/@name" />
Ben non en fait je veux récupérer le name de start-select ;)
Et puis pareil, j'ai tout essayé "start-state/@name", "./@name", "process-definition/start-state/@name"... :?
C'est la misère ce truc ! 8O
Merci beaucoup pour ton aide en tout cas, je vais peut-être arrêter d'abuser de ton temps là quand même ! Je vais chercher s'il n'y a pas moyen de procéder autrement pour récupérer cette variable.
Merci :)
Arf c'est bon je suis passée par un autre moyen (dis donc c'est bizarre quand même, j'aurai pas un problème de version ou je ne sais quoi d'autre ??? J'ai plusieurs syntaxes qui plantent...)
Bref j'ai remplacé ça :
Par ça :Code:
1
2<xsl:value-of select="@name" />
Voilà si jamais quelqu'un a le même problème que moi ;)Code:
1
2
3 <xsl:variable name="start-name" select="./@name"/> <text ..> ${start-name} </text>
Merci pour ton aide sozie ! :D
Heu j'ai fait le boulet, ça ne marchera pas la derniere solution que j'ai proposé, ça n'affichera pas le contenu mais la variable elle-même... Desolé ! :?
Je viens de regarder, j'ai un truc qui marche (super moche) :?
C'est ton call-template qui me chagrine en fait... C'est pour ca que les solutions que je te proposais ne fonctionnait pas :aie:Code:
1
2
3
4
5
6
7
8
9 <xsl:template match="start-state" name="start"> <xsl:variable name="start-posx">400</xsl:variable> <xsl:variable name="start-posy">100</xsl:variable> <rect x="{$start-posx+-0.5*$case-width}" y="{$start-posy+-0.5*$case-height}" width="{$case-width}" height="{$case-height}" rx="5" fill="blue" /> <text x="{$start-posx}" y="{$start-posy+0.25*$font-size}" font-family="Verdana" font-size="{$font-size}" fill="white" text-anchor="middle"> <xsl:value-of select="node()/child::node()/@name" /> </text> </xsl:template>
yeah ça marche super cool !!! 8-)
(moche ou pas je prends ce qu'il y a :mouarf: )
Et oui je suis obligé d'utiliser call-template sinon ça marche po...
C'est quoi ces styles de ptite fonctions que t'utilises ? (genre node()...)
Ca fait partie de la programmation xslt ?
Merci infiniment !!! :D
Ouais c'est du XSLT...
Si tu veux, pour apprendre, tu peux utiliser Oxygen, il est un peu dur à prendre en main, mais il facilite pas mal de choses... Il est dispo en version d'évaluation 30 jours que tu peux renouveler si tu veux ;)