Hallo all!
Ich habe folgende XML Struktur:
<page id="2">
<text>Ein Link zu einem Field</text>
<link>3</link>
<field id="3">
<text>Text von Field mit id 3</text>
</field>
<field id="4">
<text>Ein Link zu einem Field</text>
<link>3</link>
</field>
</page>
<page id="5">
<text>Ein Link zu einer Seite</text>
<link>2</link>
</page>
Das heisst sowohl ein <page> als auch ein <field> kann einen <text> mit <link> enthalten. Wenn ich mit XSL nun das <text>-Element bearbeitet, weiss ich nicht, wie ich die Verlinkung machen kann. Irgendwie muss ich merken, ob ich zu einer <page> verlinke oder zu einem <field>. Wenn zu einem Field, dann muss dieselbe seite aufgerufen werden mit der id des Fields als Anker.
Ich habe so angefangen:
xsl:choose
<xsl:when test="not(child::link)">
<p><xsl:value-of select="." /></p>
</xsl:when>
<xsl:when test="xxxx">
<p><a>
<xsl:attribute name="href">index.php?id=xxxxx</xsl:attribute>
<xsl:value-of select="const" />
</a></p>
</xsl:when>
xsl:otherwise
<p><a>
<xsl:attribute name="href">index.php?id=xxxx</xsl:attribute>
<xsl:value-of select="const" />
</a></p>
</xsl:otherwise>
</xsl:choose>
Ich möchte einmal einen Link zu einer Seite konstruieren mit index.php?id=xx und einmal als Anker, wenn ich zu einem Field verlinke mit index.php?id=xx#xx