Ich habe die folgende Variable:xsl: Anzeige Ergebnis concat Variable mit Komma zwischen dem Wert
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE stylesheet [
<!ENTITY menu SYSTEM "verb.xml">
]>
<xsl:variable name="per">
<xsl:value-of select="*//per/@value | *//gen/@value | *//number/@value"/>
</xsl:variable>
<xsl:for-each select="concat($per, '')" >
<xsl:value-of select="translate(., ' ', '')" separator="," />
</xsl:for-each>
TEI-XML
Inhalt:
<gramGrp n="1.1" ana="#actor-affixes">
<per ana="#s2" value="2"/>
<gen ana="#smasc" value="m"/>
<number ana="#ssing" value="sg"/>
</gramGrp>
<gramGrp n="1.2" ana="#actor-affixes">
<per ana="#s3" value="3"/>
<gen ana="#sfem" value="f"/>
<number ana="#ssing" value="sg"/>
</gramGrp>
<!-- gramGrp -->
Der Ausgang ist zur Zeit: 2msg3fsg
Aber ich wollen: 2msg, 3fsg
Ich versuchte mehrere Lösungen, zum Beispiel eine Varia ble für jede element
, anstelle einer Variablen für alle TEI
element
oder <xsl:if test="position() != last()"><xsl:value-of select="translate(., ' ', '')" /><xsl:text>, </xsl:text></xsl:if>
. Aber es funktioniert nicht ...
Im Voraus, vielen Dank für Ihre freundliche Beratung.
Ausgezeichnet! Vielen Dank. Da ich vorher ein anderes 'Element 'habe, habe ich' * 'vor' // gramGrp' hinzugefügt. Es funktioniert gut! Ich bin nicht an 'xs: string' gewöhnt, da ich ein Neuling in' xsl' bin. – Vanessa