在此之前,我从未使用过xslt。我正在尝试将一个xml转换为另一个完全相同的xml,只是我需要根据另一个节点中的另一个元素来修改一个元素的值。
输入XML:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<root>
<companyCode>002</companyCode>
<transportation>
<express>
<revenue>
<rateSourceCode>REBS</rateSourceCode>
</revenue>
</express>
</transportation>
<system>
<control>
<engineName>OR</engineName>
</control>
<activityCc>1000</activityCc>
<transactionName>RB</transactionName>
</system>
</root>
输出XML: 我需要检查位于System节点下的transactionName,并在此基础上修改在transport> express> Revenue
下的rateSourceCode值。
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
这是要复制所有内容,但是我不知道在比较后如何修改一个节点。