我需要将一个 XML(例如 x1.xml)(我的应用程序的输入)转换为稍微不同的 XML(例如 x2.xml)格式,该格式基于相同架构的较新版本。 x2 是我的应用程序的输出。 x1 和 x2 大约 90% 的元素相同,因为它们属于同一架构(只是版本不同)。
最佳的转型方法是什么?我正在使用 java 和 mule esb。
最佳答案
这是 XSLT 的主要任务。从默认情况下复制未更改的元素的身份模板规则开始:
<xsl:template match="*">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>
然后为您想要修改的任何元素添加进一步的模板规则。
关于java - 将 XML 转换为属于同一模式的不同版本且稍有不同的 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13076409/