我需要为网站服务创建一个XML文档,通过搜索引擎显示来自许多电子商店的产品。
当我与开发团队交谈时,他们告诉我,我需要一个遵循其结构和系统的XML。
我的问题是我如何根据我的eshop.xml创建一个新的eshopNEW.xml但更改某些元素的名称以满足其结构要求?例如,假设我需要将item
更改为product
,将title
更改为name
,并将属性type="game"
添加到其中。
我已经粘贴了一个简单的XML,这样我就可以更轻松地了解创建新文档和转换名称的过程。
感谢您的回答。
<item>
<title>Hide your heart</title>
<quantity>1</quantity>
<price>9.90</price>
</item>
<item>
<title>Empire Burlesque</title>
<note>Special Edition</note>
<quantity>1</quantity>
<price>10.90</price>
</item>
答案 0 :(得分:1)
听起来像是XSLT的一个很好的用例。
E.g。放入一个标识模板,默认情况下传递元素:
<xsl:template match="node() | @*">
<xsl:copy>
<xsl:apply-templates select="node() | @*" />
</xsl:copy>
</xsl:template>
然后为需要更改名称的元素添加特定模板:
<xsl:template match="item">
<product>
<xsl:apply-templates select="node() | @*" />
</product>
</xsl:template>
<xsl:template match="title">
<name>
<xsl:apply-templates select="node() | @*" />
</name>
</xsl:template>