2016-09-28 7 views
0
  1. これは入力データです。また、他の多数のフィールドが含まれていますが、私はそれらを削除している:XSLを使用して2つのタグから別のタグに値をコピーすることはできません

    <?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> 
    
  2. journal_dateがtransaction_timeによってのTRANSACTION_DATEと時間の日付の値を持つている場合、私は、このような出力をしたい:

    <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> 
    
  3. 次の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> 
    

は、より多くの変更が何私は、行う必要があります。あなたのformatdateテンプレートに正しい値を渡すために

答えて

0

、あなたは..は親要素rowを選択し、そう...

<xsl:with-param name="datestr" select="../TRANSACTION_DATE"/> 

のような取引日を参照する必要があります。

<xsl:template match="JOURNAL_DATE"> 
<xsl:copy> 
    <xsl:call-template name="formatdate"> 
    <xsl:with-param name="datestr" select="../TRANSACTION_DATE"/> 
    </xsl:call-template> 
    <xsl:text> </xsl:text> 
    <xsl:value-of select="../TRANSACTION_TIME" /> 
</xsl:copy> 
</xsl:template> 
このXSLTテンプレートをお試しください
関連する問題