Thomas J.S.: Eltern Element eines bestimmten Typs finden

Beitrag lesen

Hallo,

<Seite>
  <Überschrift>Bla</Überschrift>
  <Text>Blabla</Text>
  <Seite>
    <Überschrift>Blub</Überschrift>
    <Text>Blabla</Text>
    <Fußnote>Bla</Fußnote>
  </Seite>
</Seite>

Per XSL möchte ich jetzt feststellen auf welche Seite sich meine Fußnote befindet, wenn das Element Fußnote gemacht wurde.
Wenn ich mit

<xsl:for-each select="/root//Seite">
  <xsl:for-each select=".//Fußnote">
    Mach was...
  </xsl:for-each>
</xsl:for-each>

<xsl:template match="Seite">
<xsl:for-each select="Fußnote">
   <xsl:value-of select="../Seite/Überschrift" />
</xsl:for-each>
</xsl:template>
Würde dir zur Fußnote gehörende Seitenüberschrift wiedergeben.
Auf ein Elternelement kannst du mit "parent::" oder mit "../" zugreifen.

Aber ich würde es eher so machen:
<xsl:template match="Seite">
...
<xsl:apply-temlates select="Fußnote" />
</xsl:template>

<xsl:template match="Fußnote">
   <xsl:value-of select="../Seite/Überschrift" />
</xsl:for-each>
</xsl:template>

Was genau möchtest du erreichen?

Grüße
Thomas