Bonjour,
Voila j'ai un test à faire mais je ne sais pas si comme je le fais c'est optimale:
mon xml:
dans ce XML j'aimerais que:Code:
1
2
3
4
5
6
7
8
9
10
11
12 <AV type="Verfuegung"> <AVel F8="1" F9="0" F15="0"> <Title>Anmeldung</Title> </AVel> <AVel F8="0" F9="1" F15="0"> <Title>In das Handelsregister wird einget</Title> </AVel> <AVel F8="1" F9="1" F15="0"> <Title>Firma</Title> <Text>TAURUS Equities AG</Text> </AVel> </AV>
si le @type de AV est égal à Verfuegung qu'il ne prenne que les AVel qui ont @F15=1 et @F9=1
si le @type de AV est égal à Anmeldung qu'il ne prenne que les AVel qui ont @F15=1 et @F8=1
J'ai donc pensé dans un premier temps à faire mon xslt comme ceci:
Mais ca ne marche pas?Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:variable name="AouV"> <xsl:choose> <xsl:when test="/AV/@type='Verfuegung'">@F15='0' and @F9='1'</xsl:when> <xsl:otherwise>@F15='0' and @F8='1'</xsl:otherwise> </xsl:choose> </xsl:variable> ... <xsl:template match="AVel"> <xsl:if test="$AouV"> ... </xsl:if> </xsl:template> </xsl:stylesheet>
alors j'ai fait mon teste comme ceci:
Mais es-ce vraiment optimale comme test ou il serait mieux de faire ca avec des variables (mais comment?)?Code:<xsl:if test="(../@type='Anmeldung' and @F15='0' and @F8='1') or (@F15='0' and @F9='1' and ../@type='Verfuegung')">
Merci pour vos réponses!
++
Thierry