Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.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
Xml 如何在xslt中添加xs:type作为属性名_Xml_Xslt - Fatal编程技术网

Xml 如何在xslt中添加xs:type作为属性名

Xml 如何在xslt中添加xs:type作为属性名,xml,xslt,Xml,Xslt,在使用xslt转换xml文件时,我需要像属性一样在其中插入一个xs:type元素 所需的输出格式如下 但在xslt文件中,它显示编译时错误“未定义名称空间前缀'xs'”。但我不想在这里定义名称空间。而是添加一个冒号 请为这个问题提出解决方案 XSLT处理名称空间格式良好的XML(用于输入和输出),并且它本身也是名称空间格式良好的XML,因此在属性名称中使用冒号而不在冒号之前声明前缀的名称空间是不可能的,因为 授权: 前缀提供限定名称的命名空间前缀部分, 并且必须与命名空间中的命名空间URI引用

在使用xslt转换xml文件时,我需要像属性一样在其中插入一个xs:type元素

所需的输出格式如下

但在xslt文件中,它显示编译时错误“未定义名称空间前缀'xs'”。但我不想在这里定义名称空间。而是添加一个冒号


请为这个问题提出解决方案

XSLT处理名称空间格式良好的XML(用于输入和输出),并且它本身也是名称空间格式良好的XML,因此在属性名称中使用冒号而不在冒号之前声明前缀的名称空间是不可能的,因为 授权:

前缀提供限定名称的命名空间前缀部分, 并且必须与命名空间中的命名空间URI引用关联 声明

通过为“xs”添加以下定义,可以获得输出

xmlns:xs=”http://www.w3.org/2001/XMLSchema-instance"


谢谢。

+1请注意,这当然是消除错误的正确方法,但您应该接受Martin的答案,因为这是正确的,因为您说过不想在此处定义名称空间。而是添加一个冒号。