bonjour tout le monde, je commence avec xslt, j'ai voulu transformer un fichier xml en fonction du contenu d'un autre fichier. j'ai utilisé ce morceau de code,mais ça ne marche pas svp voudriez vous m'aider. merci beaucoup

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
   <xsl:template name="ProcessPointDeVariation">
      <xs:complexType dm:displayType="node">
      <xsl:for-each select="fm:Goal">
      <xsl:variable name="G" select="@value"/>
        <xsl:for-each select="fm:FacetteVariantName">
            <xsl:variable name="FV" select="@value"/>
            <xsl:template match="../Facette_Variant/Facette_Variant_Model.xfm" >
               <xsl:for-each select="fm:Variant">
               <xsl:for-each select="fm:FacetteVariantName">
               <xsl:variable name="FVN" select="current()/@value"/>
               <xsl:if test="$FVN==$FV">
                  <xsl:element name="concat($G,Variant/@value)"/>
               </xsl:if>
               </xsl:for-each>
               </xsl:for-each>
            </xsl:template>
          </xsl:for-each>
      </xsl:for-each>
      </xs:complexType>
  </xsl:template>
voilà le morceau xslt a transformer:

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
<fm:Goal fm:value="Localization_Data_Observed">
 
      <fm:PointDeVariation fm:value="{&lt;F1:V1> ; &lt;F1:V2> ; &lt;F1:V3>}">
 
        <fm:FeatVar fm:cardMax="1" fm:cardMin="VP"/>
 
        <fm:Requirement fm:value="Localization_Data_Captured">
 
 
 
          <fm:PointDeVariation fm:value="{&lt;F1:V1> ; &lt;F1:V2> ; &lt;F1:V3>}">
 
            <fm:FeatVar fm:cardMax="1" fm:cardMin="VP"/>
 
 
 
            <fm:Agent fm:value="Sensor"/>
          <fm:FacetteVariantName fm:value="FacetteVariantName">
              <fm:Name fm:value="F1V1"/>
            </fm:FacetteVariantName>
 
            <fm:FacetteVariantName fm:value="FacetteVariantName">
              <fm:Name fm:value="F1V2"/>
            </fm:FacetteVariantName>
 
            <fm:FacetteVariantName fm:value="FacetteVariantName">
              <fm:Name fm:value="F1V3"/>
            </fm:FacetteVariantName>
          </fm:PointDeVariation>
        <fm:FacetteVariantName fm:value="FacetteVariantName"/>
        </fm:Requirement>
      <fm:FacetteVariantName fm:value="FacetteVariantName">
          <fm:Name fm:value="F1V1"/>
        </fm:FacetteVariantName>
 
        <fm:FacetteVariantName fm:value="FacetteVariantName">
          <fm:Name fm:value="F1V2"/>
        </fm:FacetteVariantName>
 
        <fm:FacetteVariantName fm:value="FacetteVariantName">
          <fm:Name fm:value="F1V3"/>
        </fm:FacetteVariantName>
      </fm:PointDeVariation>
 
      <fm:Requirement fm:value="Localization_Data_Checked">
 
        <fm:Agent fm:value="Software_Agent"/>
      <fm:FacetteVariantName fm:value="FacetteVariantName"/>
      </fm:Requirement>
    <fm:FacetteVariantName fm:value="FacetteVariantName"/>
    </fm:Goal>