使用XSLT合并两个XML文件
发布时间:2020-12-16 07:40:48 所属栏目:百科 来源:网络整理
导读:我有2个xml文件,我需要使用样式表合并在一起 AssessmentInput ApplicationData.../AppicationData MetricList.../MetricList/AssessmentInput 一个是ApplicationData,另一个是MetricList. 这就是我所做的,但它与应有的无关 ?xml version="1.0" encoding="asc
我有2个xml文件,我需要使用样式表合并在一起
<AssessmentInput> <ApplicationData>...</AppicationData> <MetricList>...</MetricList> </AssessmentInput> 一个是ApplicationData,另一个是MetricList. <?xml version="1.0" encoding="ascii"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exslt="http://exslt.org/common" exclude-result-prefixes="xsl exslt"> <xsl:output omit-xml-declaration="yes" method="xml" encoding="UTF-8"/> <xsl:param name="ApplicationData" select="/"/> <xsl:param name="MetricList"/> <xsl:template match="/"> <xsl:apply-templates select="$ApplicationData/ApplicationData"/> </xsl:template> <xsl:template match="ApplicationData"> <xsl:copy> <xsl:apply-templates select="@*"/> <xsl:apply-templates select="*"/> </xsl:copy> </xsl:template> <xsl:template match="@* | node()"> <xsl:copy> <xsl:apply-templates select="@* | node()"/> </xsl:copy> </xsl:template> </xsl:stylesheet> 请帮我.我对XSLT没有任何经验.
给定以下输入文件:
ApplicationData.xml <?xml version="1.0" ?> <ApplicationData> Whatever data you have in here. </ApplicationData> MetricList.xml <?xml version="1.0" ?> <MetricList> Whatever list you have in here. </MetricList> AssessmentInput.xml <?xml version="1.0" ?> <AssessmentInput /> 以下转换merge.xsl应用于AssessmentInput.xml <?xml version="1.0" ?> <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/AssessmentInput"> <xsl:copy> <xsl:copy-of select="document('ApplicationData.xml')" /> <xsl:copy-of select="document('MetricList.xml')" /> </xsl:copy> </xsl:template> </xsl:transform> 产生正确的输出 <?xml version="1.0" encoding="UTF-8"?> <AssessmentInput> <ApplicationData> Whatever data you have in here. </ApplicationData> <MetricList> Whatever list you have in here. </MetricList> </AssessmentInput> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |