在我的xml中,我希望所有值都增加1。 所以在下面的xml中,我只有2倍的值,我希望值8为9,值5为6。 但这应该适用于所有可能的价值观。
这是我的xml:
<?xml version="1.0" encoding="UTF-8"?><equipmentActualProperties>
<equipmentActualProperty>
<action>U</action>
<dataType>Text</dataType>
<equipmentActualPropertyID>CUST_0002</equipmentActualPropertyID>
<equipmentActualPropertyValueTexts>
<equipmentActualPropertyValueText>
<languageID>EN</languageID>
<value>8</value>
</equipmentActualPropertyValueText>
</equipmentActualPropertyValueTexts>
<equipmentPropertyID>CUST_0002</equipmentPropertyID>
<equipmentUse>Other</equipmentUse>
<hierarchyScope>default</hierarchyScope>
<requiredByRequestedSegmentResponse>Other</requiredByRequestedSegmentResponse>
</equipmentActualProperty>
<equipmentActualProperty>
<action>U</action>
<dataType>Text</dataType>
<equipmentActualPropertyID>CUST_0001</equipmentActualPropertyID>
<equipmentActualPropertyValueTexts>
<equipmentActualPropertyValueText>
<languageID>EN</languageID>
<value>5</value>
</equipmentActualPropertyValueText>
</equipmentActualPropertyValueTexts>
<equipmentPropertyID>CUST_0001</equipmentPropertyID>
<equipmentUse>Other</equipmentUse>
<hierarchyScope>default</hierarchyScope>
<requiredByRequestedSegmentResponse>Other</requiredByRequestedSegmentResponse>
</equipmentActualProperty>
答案 0 :(得分:0)
您可以使用身份模板和推送编程来执行此操作。此外,要使其正常工作,您的代码段必须位于根节点内。
<!-- Identity template. -->
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="value">
<xsl:copy>
<xsl:value-of select=". + 1"/>
</xsl:copy>
</xsl:template>