2014-11-25 156 views
0

我正在转换将其所有数据作为属性存储在元素中的XML文件。这个文件有很多我不需要的数据,所以转换是提取所需的部分。将XML转换为XML,将属性转换为元素

不幸的是,我找不到一种方法将旧文件的属性更改为新文件的元素。

当前XML:

<?xml version="1.0" encoding="ISO-8859-1" ?> 
<report Title="System Information for Windows Build Technician&#39;s Version" computer_name="example" language="NULL" xml_version="1.2"> 
<software Title="Software"> 
    <page Title="Operating System" H1="Property" H2="Value" > 
     <item Property="Owner" Value="Tom Smith" /> 
     <item Property="Organization" /> 
     <item Property="Workgroup" Value="WORKGROUP" /> 
    </page> 
</software> 

我期望的输出将能够采取的属性说,业主和汤姆·史密斯,并创建一个元素: <owner>Tom Smith</owner>

+0

你看过XSLT吗?如果没有,那就做! – 2014-11-25 10:31:38

+0

@四十二是的,这是我用来改造的。 – chdgrrtt 2014-11-25 12:04:00

回答

0

尝试是这样的

<xsl:for-each select="report/software/page/item"> 
     <xsl:element name="{@Property}"> 
     <xsl:value-of select="@Value"/> 
     </xsl:element> 
    </xsl:for-each> 
+0

谢谢,这已经解决了我的问题! – chdgrrtt 2014-11-25 12:02:46