Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将xmlns作为属性添加到xslt中的元素_Xml_Xslt - Fatal编程技术网

将xmlns作为属性添加到xslt中的元素

将xmlns作为属性添加到xslt中的元素,xml,xslt,Xml,Xslt,我需要用xslt创建一个xml文件。我需要第一个元素包含两个属性,如下所示: <Nomination_Doc release="1" xmlns="sas:nominate:1"> 我尝试了以下代码: <xsl:element name="Nomination_Doc"> <xsl:attribute name="release">1</xsl:attrib

我需要用xslt创建一个xml文件。我需要第一个元素包含两个属性,如下所示:

<Nomination_Doc release="1"
xmlns="sas:nominate:1">

我尝试了以下代码:

   <xsl:element name="Nomination_Doc">
   <xsl:attribute name="release">1</xsl:attribute>
   <xsl:attribute name="xmlns">sas:nominate:1</xsl:attribute>

1.
sas:提名:1
但它给了我:

<Nomination_Doc release="1">


并且缺少属性xmlns。我做了一些研究,发现xmlns就像一个保留字,只用于声明名称空间。这种情况下的解决方案是什么?

你可以而且应该直接写

<Nomination_Doc release="1" xmlns="sas:nominate:1">


在XSLT中,如果要创建在编写代码时名称和命名空间已知的元素<代码>xsl:element仅当您希望在运行时计算元素名和/或名称空间时才需要。

哇,太好了,这很简单。我现在正在使用模板进行尝试。为了完成此操作,
xsl:element
指令有一个可选的
名称空间
属性,因此您可以执行
。但是如前所述,当名称和名称空间都是预先知道的时,这是一个不必要的复杂问题。