Share via


Beispiel 2 für <xsl:if>

Eine andere Möglichkeit, Namen durch Kommas zu trennen, besteht darin, einen Namen darauf zu prüfen, ob er der erste Name ist. Unter gewissen Umständen funktioniert dies besser als Beispiel 1 für <xsl:if>, weil die last()-Funktion erfordert, dass die gesamte Gruppe von Namen gesucht und durchgezählt wird, während dies bei diesem Verfahren nicht der Fall ist.

XML-Datei (names.xml)

Verwenden Sie das names.xml-Listing in Beispiel 1 für <xsl:if>, aber bearbeiten Sie das href-Attribut, um auf ifcomma2.xsl zu zeigen.

XSLT-Datei (ifcomma2.xsl)

<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >

<xsl:template match="namelist/name">
  <xsl:if test="position()!=1">, </xsl:if>
  <xsl:apply-templates/>
</xsl:template>

</xsl:stylesheet>

Ausgabe

Dies ist die formatierte Ausgabe:

Albert, Terrance, Will, Sylvia, Timothy, Gordon, James, Robert, Dan, Sasha

Dies ist die Prozessorausgabe:

<?xml version="1.0" encoding="UTF-16"?>Albert, Terrance, Will, Sylvia, Timothy, Gordon, James, Robert, Dan, Sasha