xsl: valor usado como xsl: nome do elemento
Eu tenho um arquivo XML de entrada com uma estrutura de lista:
<list>
<listItem>
<name>elementOne</name>
<value>elementOneValue</name>
</listItem>
<listItem>
<name>elementTwo</name>
<value>elementTwoValue</name>
</listItem>
</list>
O que estou tentando converter nessa estrutura:
<elementOne>elementOneValue</elementOne>
<elementTwo>elementTwoValue</elementTwo>
Essa é uma lógica fácil de implementar com o XSL, mas estou tendo complicações.
<xsl:for-each select="/list/listItem">
<xsl:element name="<xsl:value-of select="name"/>">
<xsl:value-of select="value"/>
</xsl:element>
</xsl:for-each>
Não funciona porque eu assumo que as aspas duplas seqüenciais estão quebrando o<xsl:element>
etiqueta, rótulo, palavra-chave
<xsl:for-each select="/list/listItem">
<<xsl:value-of select="name"/>>
<xsl:value-of select="value"/>
</<xsl:value-of select="name"/>>
</xsl:for-each>
Não funciona porque não posso usar<<
ou>>
e
<xsl:for-each select="/list/listItem">
<<xsl:value-of select="name"/>>
<xsl:value-of select="value"/>
</<xsl:value-of select="name"/>>
</xsl:for-each>
Não funciona porque acabo com> e <no meu código, em vez de XML analisável<
ou>
. Eu esperava que essa fosse uma solução muito fácil, mas não consigo encontrar nenhum registro na Internet. Qual é a solução simples que estou ignorando?