Hallo
Ich habe eine Filemaker-Pro-Datei, die ich mittels einem XSL in ein XML transformieren möchte. Das XML wird anschliessend ins InDesign importiert. Dabei ist folgendes Problem aufgetaucht:
Das generierte XML des Filemaker-Pro sieht so aus:
<?xml version="1.0" encoding="UTF-8" ?>
<FMPDSORESULT xmlns="http://www.filemaker.com/fmpdsoresult"><ERRORCODE>0</ERRORCODE>
<DATABASE>filename.fp7</DATABASE>
<LAYOUT></LAYOUT>
<ROW MODID="0" RECORDID="1">
<field1>data1</field1>
<field2>data2</field2>
<field3>data3</field3>
</ROW>
</FMPDSORESULT>
Für das InDesign benötige ich folgendes XML:
Mein aktuelles XSL:
Leider kann ich die ROW-Zeile nicht mit <institutionen> ersetzen.
Kann mir jemand sagen, was am aktuellen XSL falsch ist?
Herzlichen Dank
M. Müller
Ich habe eine Filemaker-Pro-Datei, die ich mittels einem XSL in ein XML transformieren möchte. Das XML wird anschliessend ins InDesign importiert. Dabei ist folgendes Problem aufgetaucht:
Das generierte XML des Filemaker-Pro sieht so aus:
<?xml version="1.0" encoding="UTF-8" ?>
<FMPDSORESULT xmlns="http://www.filemaker.com/fmpdsoresult"><ERRORCODE>0</ERRORCODE>
<DATABASE>filename.fp7</DATABASE>
<LAYOUT></LAYOUT>
<ROW MODID="0" RECORDID="1">
<field1>data1</field1>
<field2>data2</field2>
<field3>data3</field3>
</ROW>
</FMPDSORESULT>
Für das InDesign benötige ich folgendes XML:
<root>
<institutionen>
<field1>data1</field1>
<field2>data2</field2>
<field3>data3</field3>
</institutionen>
</root>
<institutionen>
<field1>data1</field1>
<field2>data2</field2>
<field3>data3</field3>
</institutionen>
</root>
Mein aktuelles XSL:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fmp="http://www.filemaker.com/fmpxmlresult" exclude-result-prefixes="fmp">
<xslutput method="xml" encoding="UTF-8" indent="yes"/>
<xsl:template match="fmp:FMPXMLRESULT">
<root>
<xsl:for-each select="fmp:RESULTSET/fmp:ROW">
<institutionen>
<xsl:for-each select="fmp:COL">
<xsl:element name="fmpATA">
<xsl:if test="fmpATA!=''">
<xsl:apply-templates select="fmpATA"/>
</xsl:if>
</xsl:element>
</xsl:for-each>
</institutionen>
</xsl:for-each>
</root>
</xsl:template>
</xsl:stylesheet>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fmp="http://www.filemaker.com/fmpxmlresult" exclude-result-prefixes="fmp">
<xslutput method="xml" encoding="UTF-8" indent="yes"/>
<xsl:template match="fmp:FMPXMLRESULT">
<root>
<xsl:for-each select="fmp:RESULTSET/fmp:ROW">
<institutionen>
<xsl:for-each select="fmp:COL">
<xsl:element name="fmpATA">
<xsl:if test="fmpATA!=''">
<xsl:apply-templates select="fmpATA"/>
</xsl:if>
</xsl:element>
</xsl:for-each>
</institutionen>
</xsl:for-each>
</root>
</xsl:template>
</xsl:stylesheet>
Leider kann ich die ROW-Zeile nicht mit <institutionen> ersetzen.
Kann mir jemand sagen, was am aktuellen XSL falsch ist?
Herzlichen Dank
M. Müller
Comment