Hallo Julian,
hätte es hiermit versucht, funktioniert aber nur wenn das Feld "Recipient" wirklich ein _ enthält. Es besteht aber auch die Möglichkeit, dass der "Recipient" den Wert "_" gar nicht enthält.-> Dann soll der "Recipient" beibehalten werden.
Probiere es mit contains-Abfrage im Prädikat:
<xsl:template match="Interchange/Recipient[contains(., '_')]">
<Recipient><xsl:value-of select="substring-before(., '_')"/></Recipient>
</xsl:template>
Grüße,
Thomas