Domanda

Domanda semplice. Ho un file XML con un paio di decine di blocchi di commento. Questo si sta trasformando da un foglio di stile per generare una pagina HTML. Tuttavia, i commenti vengono ignorati con questo. Ma in fondo l'HTML generato Vorrei avere un elenco di tutti i commenti all'interno del file XML. È che anche possibile, senza l'utilizzo di altro che pura XSLT? (No Javascript o qualsiasi altra cosa!)


Per quanto ne so, questo non è possibile, ma potrei sbagliarmi ...

È stato utile?

Soluzione

Il motivo per i commenti non vengono elaborati è che il modello predefinito per i commenti non fare nulla:

<xsl:template match="processing-instruction()|comment()"/>

XSLT 1.0 spec "Built-in regole di modello" .

Se volete fare qualcosa di diverso con i commenti, si può solo creare il proprio modello e uscita sia come un nuovo commento XML utilizzando xsl:comment di corrispondenza o di fare una lista HTML:

<xsl:template match="/">
  <ul>
    <xsl:apply-templates select="//comment()"/>
  </ul>
</xsl:template>

<xsl:template match="comment()">
  <li>
    <xsl:value-of select="."/>
  </li>
</xsl:template>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top