输入
<Order OrderNotificationID="123456" OrderNo="40003773" >
<OrderLines>
<OrderLine Action="CANCEL" EAN="" LineNo="1"> </OrderLine>
<OrderLine Action="CANCEL" EAN="" LineNo="4"> </OrderLine>
</OrderLines>
</Order>
预期输出
<NewXML InputXML= "<Order OrderNotificationID="123456" OrderNo="40003773"><OrderLines>
<OrderLine Action="CANCEL" EAN="" LineNo="1"/>
<OrderLine Action="CANCEL" EAN="" LineNo="4"/>
</OrderLines></Order>" />
答案 0 :(得分:0)
如果您真的想将输入XML的序列化放入属性值,那么您需要编写代码或使用将XML序列化为字符串的库,示例
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:import href="http://lenzconsulting.com/xml-to-string/xml-to-string.xsl"/>
<xsl:template match="/">
<xsl:variable name="serialized-xml">
<xsl:apply-templates mode="xml-to-string"/>
</xsl:variable>
<NewXML InputXml="{$serialized-xml}"/>
</xsl:template>
</xsl:stylesheet>
使用http://lenzconsulting.com/xml-to-string/中的库。但您需要了解格式良好的XML输出意味着<
和"
等字符将在属性值中转义,因此结果如下所示
<NewXML InputXml="<Order OrderNotificationID="123456" OrderNo="40003773"> 
<OrderLines>
<OrderLine Action="CANCEL" EAN="" LineNo="1"> </OrderLine>
 <OrderLine Action="CANCEL" EAN="" LineNo="4"> </OrderLine>
 </OrderLines> 
</Order>" />