将元素名称更改为其属性之一-XSLT / XML

托马斯·伯恩

使用XSLT我想换一个XML元素名称到的它的属性之一(该元素将只包含一个属性),并且还删除该属性

我有一个看起来像这样的XML文档:

<EVENTS>
  <EVENT TYPE="XXXXXX">
    <ID>1</ID>
    <STATUS>COM</STATUS>
  </EVENT>
  <EVENT TYPE="XXXXXX">
    <ID>2</ID>
    <STATUS>ACC</STATUS>
  </EVENT>
  <EVENT TYPE="YYYYYY">
    <ID>3</ID>
    <STATUS>COM</STATUS>
  </EVENT>
  <EVENT TYPE="ZZZZZZ">
    <ID>4</ID>
    <STATUS>COM</STATUS>
  </EVENT>
  <EVENT TYPE="XXXXXX">
    <ID>5</ID>
    <STATUS>DEL</STATUS>
  </EVENT>
</EVENTS>

我想将文档转换为如下形式:

<EVENTS>
  <XXXXXX>
    <ID>1</ID>
    <STATUS>COM</STATUS>
  </XXXXXX>
  <XXXXXX>
    <ID>2</ID>
    <STATUS>ACC</STATUS>
  </XXXXXX>
  <YYYYYY>
    <ID>3</ID>
    <STATUS>COM</STATUS>
  </YYYYYY>
  <ZZZZZZ>
    <ID>4</ID>
    <STATUS>COM</STATUS>
  <ZZZZZZ>
  <XXXXXX>
    <ID>5</ID>
    <STATUS>DEL</STATUS>
  </XXXXXX>
</EVENTS>
用户名

您正在寻找的<xsl:element>命令,在这种情况下,您将使用

<xsl:element name="{@TYPE}">

这使用属性值模板,该模板允许在大括号内使用字符串表达式。

然后安排不要通过TYPE属性进行复制。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

更改重复的元素名称 xslt xml

来自分类Dev

XML / XSLT属性输出

来自分类Dev

XSLT更改XML元素顺序

来自分类Dev

如何使用XSLT将XML更改为XML

来自分类Dev

xml使用xslt删除元素

来自分类Dev

使用 XSLT 映射 XML 元素

来自分类Dev

使用XSLT增加XML属性?

来自分类Dev

XSLT从XML获取属性值

来自分类Dev

使用XSLT添加XML属性

来自分类Dev

XSLT 1.0:如何合并XML节点,然后将属性移动到子节点并更改其值

来自分类Dev

使用 XSLT 更改 XML 元素标记

来自分类Dev

使用XSLT基于属性合并Xml元素

来自分类Dev

使用XSLT基于属性合并Xml元素

来自分类Dev

使用XSLT更改xml文件中文档元素的属性值

来自分类Dev

使用XSLT将XML转换为XML

来自分类Dev

使用 XSLT 将 XML 元素名称转换为驼峰格式

来自分类Dev

XSLT使用XSLT从xml中删除一个根元素的所有属性

来自分类Dev

如何使用XSLT将XML元素的第一个属性的值重命名?

来自分类Dev

如何使用XSLT将XML元素的第一个属性的值重命名?

来自分类Dev

XSLT通过元素匹配从xml复制元素

来自分类Dev

使用 xslt 将 XML 元素从其位置移动到另一个父元素下

来自分类Dev

XSLT文件的名称(不是输入的XML)

来自分类Dev

XSLT / XML按名称选择值

来自分类Dev

从XML生成XSD并添加名称空间XSLT

来自分类Dev

使用XSLT使用名称空间转换xml

来自分类Dev

XML XSLT-> HTML转换-如何使用xslt将xml元素文本拆分为点

来自分类Dev

XSLT转换,用逗号分隔xml元素

来自分类Dev

使用XSLT递归删除空的xml元素

来自分类Dev

XSLT转换,用逗号分隔xml元素