我有一个像下面这样的xml:
looping = True
while looping:
userInput = input("Press X to leave the loop")
if userInput == "X":
looping = False
print("Left the while loop")
我想使用xslt将键值(key =" user" to key =" cm:user")转换为新的xml文件,输出xml应该是这样的
class Animal:
def __init__(self):
print("Creating animal")
def make_sound(self, sound):
print("Making a sound...")
print(sound)
# Create an instance of the Animal class.
animal = Animal()
# Call a method. The self parameter implicitly refers to the instance, animal.
animal.make_sound("meow")
我正在使用下面的xslt和saxon jar:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<properties>
<entry key="user">1234</entry>
<entry key="name">sam</entry>
</properties>
当我运行它时,我收到以下错误:
XTDE1490:不能将多个结果文档写入同一个URI:
有人可以帮我这个..
答案 0 :(得分:3)
你只需要
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:template match="@key[.='user']">
<xsl:attribute name="key">
<xsl:value-of select="'cm:user'"/>
</xsl:attribute>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:transform>
如果要使用xsl:result-document
定义结果文件名,请添加模板
<xsl:template match="/">
<xsl:result-document href="foo.xml">
<xsl:apply-templates/>
</xsl:result-document>
</xsl:template>