以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  [求助]怎样通过XSLT把一份xml文档的部分内容一下子转换到另一个xml的一部分  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=39316)


--  作者:tangquan
--  发布时间:10/25/2006 4:08:00 PM

--  [求助]怎样通过XSLT把一份xml文档的部分内容一下子转换到另一个xml的一部分
怎样通过XSLT把一份xml文档的部分内容一下子转换到另一个xml的一部分

我需要把某一个xml文档的某个节点包括的所有子节点都到另一个xml文档。而且源文档的某个节点里面的结构是不一样的。


[此贴子已经被作者于2006-10-25 16:40:23编辑过]

--  作者:W3
--  发布时间:10/25/2006 5:17:00 PM

--  
用<xsl:copy-of>可以复制node下面的所有内容,还有一个函数也支持,但是我不会用。
--  作者:Renee
--  发布时间:10/25/2006 9:09:00 PM

--  
<copy> & <copy-of>

但是你说 "而且源文档的某个节点里面的结构是不一样的" 不太明白什么意思.

能举个例子吗


--  作者:topgunqq
--  发布时间:11/10/2006 11:31:00 AM

--  
我理解是一个文档中定义书名的标签是<booktitle>。另一个定义为<bookname>。合并时要求当成相同的标签看吧?
--  作者:Qr
--  发布时间:11/10/2006 4:57:00 PM

--  
用<xsl:element>创建新的元素来替换.
--  作者:fukui
--  发布时间:11/12/2006 3:19:00 PM

--  
有例子吗?Qr
--  作者:tangquan
--  发布时间:11/15/2006 1:58:00 PM

--  
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
 <xsl:template match="/">
  <xsl:element name="GetDataResponse">
   <xsl:element name="AppData">
    <xsl:element name="Name">
     <xsl:value-of select="'CustomerData'"/>
    </xsl:element>
    <xsl:element name="Value">
   <xsl:apply-templates></xsl:apply-templates>
    </xsl:element>
    <xsl:element name="Type">
     <xsl:value-of select="'xml'"/>
    </xsl:element>
    <xsl:element name="LastModifiedDate">
     <xsl:value-of select="/RESULT/getData_customer/RESULTSET_1/ROW/ModifiedDate"/>
    </xsl:element>
   </xsl:element>
  </xsl:element>
 </xsl:template>
 <xsl:template match="/RESULT/getData_customer">
  <xsl:copy-of select="."></xsl:copy-of>
 </xsl:template>
 
</xsl:stylesheet>


<?xml version="1.0" encoding="UTF-8"?>
<!--Sample XML file generated by XMLSpy v2005 sp1 U (http://www.xmlspy.com)-->
<RESULT xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="D:\Projects\iWay55\BEEP\UT\Schema\getData_customer_response.xsd">
 <getData_customer>
  <RESULTSET_1>
   <ROW>
    <ID>0</ID>
    <LastName>String</LastName>
    <FirstName>String</FirstName>
    <Street>String</Street>
    <City>String</City>
    <State_Prov>String</State_Prov>
    <Country>String</Country>
    <Postal_Zip>String</Postal_Zip>
    <SalesOrganization>String</SalesOrganization>
    <ModifiedDate>2006-10-1</ModifiedDate>
   </ROW>
  </RESULTSET_1>
 </getData_customer>
</RESULT>


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
58.594ms