Hello there,
I have the following, very basic, XML Document:
<ROWSET>
<ROW>
<START_DATE>2009-02-14T00:00:00Z</START_DATE>
<END_DATE>2009-02-20T23:59:59Z</END_DATE>
</ROW>
</ROWSET>
I want to apply an XSLT to transform it into the following:
<?xml version="1.0" encoding="utf-8"?>
<notification-history-request xmlns=" <start-time>2009-02-14T00:00:00Z</start-time>
<end-time>2009-02-20T23:59:59Z</end-time>
<notification-types>
<notification-type>new-order</notification-type>
</notification-types>
</notification-history-request>
I have constructed this XSLT to do this job:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl=" version="1.1" >
<xsl:template match="ROWSET/ROW">
<notification-history-request xmlns=" <start-time><xsl:value-of select="START_DATE"/></start-time>
<end-time><xsl:value-of select="END_DATE"/></end-time>
<notification-types>
<notification-type>new-order</notification-type>
</notification-types>
</notification-history-request>
</xsl:template>
</xsl:stylesheet>
Now, if I apply that XSLT to the starting document in XML Exchanger, using the Saxon 1.X Parser, I get the desired XML document.
However, if I apply it on an Oracle Database, using the version of the Sax Parser (I think) that ships with the database, I get the following XML document:
<?xml version="1.0" encoding="utf-8"?>
<notification-history-request xmlns=" <start-time></start-time>
<end-time></end-time>
<notification-types>
<notification-type>new-order</notification-type>
</notification-types>
</notification-history-request>
In effect. the START_DATE and END_DATE values are not being transferred. However, if I remove the xmlns Google Checkout Schema namespace from the XSLT, both values are successfully transferred.
The presence of the namespace is obviously the issue, and this is only affecting the Sax Parser that comes with Oracle 10g. Unfortunately, I have to use this parser if I want to do this inside an Oracle database.
Is there any elegant way to get this to work?
I have the following, very basic, XML Document:
<ROWSET>
<ROW>
<START_DATE>2009-02-14T00:00:00Z</START_DATE>
<END_DATE>2009-02-20T23:59:59Z</END_DATE>
</ROW>
</ROWSET>
I want to apply an XSLT to transform it into the following:
<?xml version="1.0" encoding="utf-8"?>
<notification-history-request xmlns=" <start-time>2009-02-14T00:00:00Z</start-time>
<end-time>2009-02-20T23:59:59Z</end-time>
<notification-types>
<notification-type>new-order</notification-type>
</notification-types>
</notification-history-request>
I have constructed this XSLT to do this job:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl=" version="1.1" >
<xsl:template match="ROWSET/ROW">
<notification-history-request xmlns=" <start-time><xsl:value-of select="START_DATE"/></start-time>
<end-time><xsl:value-of select="END_DATE"/></end-time>
<notification-types>
<notification-type>new-order</notification-type>
</notification-types>
</notification-history-request>
</xsl:template>
</xsl:stylesheet>
Now, if I apply that XSLT to the starting document in XML Exchanger, using the Saxon 1.X Parser, I get the desired XML document.
However, if I apply it on an Oracle Database, using the version of the Sax Parser (I think) that ships with the database, I get the following XML document:
<?xml version="1.0" encoding="utf-8"?>
<notification-history-request xmlns=" <start-time></start-time>
<end-time></end-time>
<notification-types>
<notification-type>new-order</notification-type>
</notification-types>
</notification-history-request>
In effect. the START_DATE and END_DATE values are not being transferred. However, if I remove the xmlns Google Checkout Schema namespace from the XSLT, both values are successfully transferred.
The presence of the namespace is obviously the issue, and this is only affecting the Sax Parser that comes with Oracle 10g. Unfortunately, I have to use this parser if I want to do this inside an Oracle database.
Is there any elegant way to get this to work?