Christin: X-Path Probleme

Beitrag lesen

Hallo,

<xml>
 <patch name="112905-02 ">
 <veraltet>112713-02, 112233-12 </veraltet>
 </patch>
 <patch name="114209-09 ">
 <veraltet>114728-08, 118736-12, 134886-03 </veraltet>
 </patch>
 <patch name="112233-12 ">
 <veraltet>117392-01, 119382-10 </veraltet>
 </patch>
[...]
</xml>

brauch ein xsl-template, mir fehlen leider einige x-path kenntnisse.
ich möchte, dass jeder "patch name" mit allen im Programm veralteten Patches verglichen wird, um zu überprüfen ob ein "veralteter Patch" = "Patch name" ist. falls dies der fall ist, soll er angezeigt werden.
(oben im Beispiel würde der 3. Patch ausgegeben werden, da er ein veralteter vom 1. Patch ist)

ich habs bisher so versucht:

<xsl:template match="patch">
        <xsl:if test="./@name">
            <xsl:for-each select="./patch/veraltet">
               xsl:choose
                <xsl:when test="@name[contains(node(),'veraltet')]">
                    <tr valign="top" bgcolor="#f5deb3">
                      <td width="100px" align="center">
                      <xsl:value-of select="./@name"/>
                      </td>
                      <td width="200px" align="center">
                      <xsl:value-of select="./veraltet"/>
                      </td>
                   </tr>
              </xsl:when>
             </xsl:choose>
           </xsl:for-each>
       </xsl:if>
    </xsl:template>

Hoffe ihr könnt mir helfen.
LG