Pergunta

Eu estou tentando desenvolver uma folha de estilo XSLT que vai transformar um XML em outro, mantendo em vista:

  1. Por padrão, o estilo deve exibir nada para cada elemento (nem mesmo o texto).
  2. Se houver uma correspondência modelo explícita para um elemento, em seguida, copiar esse elemento, é atributos e todos os seus sub-elementos (e seus atributos).

Em outras palavras, transformar apenas os elementos explicitamente especificado identidade.

Foi útil?

Solução

Bem, para não fazer nada para a maioria, certamente, algo como:

<xsl:template match="/*">
  <xsl:copy>
    <xsl:apply-templates select="*"/>
  </xsl:copy>
</xsl:template>
<xsl:template match="*">
    <xsl:apply-templates select="*"/>
</xsl:template>

Em seguida, adicione partidas para o que você do quer:

<xsl:template match="Foo | Bar">
    <xsl:copy-of select="."/>
</xsl:template>

No entanto, parece que um muito exigência incomum. Normalmente você simplesmente usar partidas que navegar com o conteúdo conhecido através do conhecimento do xml.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top