ich viele XML-Dateien wie folgen aus:XSLT concat viele Dateien
file1.xml:
<Document xmlns="Forward">
<Id>123456789</Id>
</Document>
File2.xml:
<Document xmlns="Forward">
<Id>4568844</Id>
</Document>
Ich mag diese Dateien verketten und fügen Präfix zum Namespace wie folgt:
Ausgabe:
<?xml version="1.0" encoding="UTF-8"?>
<mes:Fichier xmlns:mes="message">
<mes:Rcvr>RECEIVE</mes:Rcvr>
<doc:Document xmlns:doc="Forward">
<doc:Id>123456789</doc:Id>
</doc:Document>
<doc:Document xmlns:doc="Forward">
<doc:Id>4568844</doc:Id>
</doc:Document>
</mes:Fichier>
Meine XLS:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:mes="message" >
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:param name="Rcvr"/>
<xsl:param name="fileList"/>
<xsl:template match="/">
<xsl:copy>
<mes:Fichier xmlns:mes="message" >
<mes:Rcvr><xsl:value-of select="$Rcvr"/></mes:Rcvr>
<xsl:apply-templates select="@*|node()" />
</mes:Fichier>
</xsl:copy>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Was genau wird der Inhalt von '$ fileList' sein? Verwenden Sie einen XSLT 2.0-Prozessor? –
$ fileList wird jetzt nicht verwendet, ich könnte diesen Parameter in meine Dateiliste wie "document (file1.xml) | document (file2.xml)" einfügen, aber ich bin mir nicht sicher .... Ja, ich kann XSLT 2.0 verwenden Prozessor. Als du @ michael.hor257k –
Ich verstehe nicht, was Ihre Frage ist, dann. Verwende entweder 'tokenize()' auf der '$ fileList', oder sieh dir die 'collection()' Funktion an. –