Bonjour,
Voila j'ai un test à faire mais je ne sais pas si comme je le fais c'est optimale:
mon xml:
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> |
dans ce XML j'aimerais que:
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:
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> |
Mais ca ne marche pas?
alors j'ai fait mon teste comme ceci:
<xsl:if test="(../@type='Anmeldung' and @F15='0' and @F8='1') or (@F15='0' and @F9='1' and ../@type='Verfuegung')">
Mais es-ce vraiment optimale comme test ou il serait mieux de faire ca avec des variables (mais comment?)?
Merci pour vos réponses!
++
Thierry
Partager