これは私の入力データです。他にもいくつかのフィールドが含まれていますが、私はそれらを削除しました:
<?xml version="1.0" encoding="UTF-8"?> <tables> <table> <row> <JOURNAL_DATE></JOURNAL_DATE> <TRANSACTION_DATE>2016-08-15T00:00:00-04:00</TRANSACTION_DATE> <TRANSACTION_TIME>11:52:18.005</TRANSACTION_TIME> </row> <table> </tables>
私は、journal_date が transaction_date の日付値と transaction_time の時刻を持つ、次のような出力が必要です。
<JOURNAL_DATE>2016-08-15 11:52:18.005</JOURNAL_DATE> <TRANSACTION_DATE>2016-08-15T00:00:00-04:00</TRANSACTION_DATE> <TRANSACTION_TIME>11:52:18.005</TRANSACTION_TIME>
次の XSL コードを使用していますが、他にどのような変更を行う必要がありますか? 私は初心者です。
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" encoding="UTF-8" indent="yes" omit-xml-declaration="yes" /> <xsl:template match="node()|@*"> <xsl:copy> <xsl:apply-templates select="node()|@*"/> </xsl:copy> </xsl:template> <!--Suryanshu For adding required date format --> <xsl:template match="JOURNAL_DATE"> <xsl:copy> <xsl:call-template name="formatdate"> <xsl:with-param name="datestr" select="."/> </xsl:call-template> </xsl:copy> </xsl:template> <xsl:template name="formatdate"> <xsl:param name="datestr"/> <xsl:value-of select="substring($datestr,1,10)"/> </xsl:template> </xsl:stylesheet>
ジャーナルの日付タグにトランザクション時間が追加されるようにするには、さらにどのような変更を行う必要がありますか。