Domanda

Voglio che usi EXSLT - DYN: EVALUATE in un foglio di stile. Ho aggiunto il ritmo dei nomi ma non so dove sia il file .xsl che devo importare. Non credo di aver installato XALAN per puntare all'importazione. Come lo installerei? Una volta installato e lo punto su .xsl, prenderà la funzione e la applicherà? Sto eseguendo Windows. Il file XSLT è incluso nella parte superiore del documento XML.

Grazie

Pete

È stato utile?

Soluzione

Xalan ha la din EXSL: valuta la funzione integrata, non è necessario importare nulla per usarla. Devi solo dichiarare lo spazio dei nomi. Faccio un piccolo esempio:

input.xml :

<root>
<foo>I am foo</foo>    
<bar>I am bar</bar>    
</root>

dyn_evaluate.xsl :

<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:dyn="http://exslt.org/dynamic"
    extension-element-prefixes="dyn">

  <xsl:param name="path"/>

  <xsl:output method="text"/>

  <xsl:template match="/">
    <xsl:value-of select="dyn:evaluate($path)"/>
  </xsl:template>

</xsl:stylesheet>

Esecuzione

xalan.exe -p path '/root/foo' input.xml dyn_evaluate.xsl

I am foo

Esecuzione

xalan.exe -p path '/ root / bar' input.xml dyn_evaluate.xsl

I am bar

Spero che questo aiuti.

Altri suggerimenti

Come lo chiameresti da una pagina JSP? Il JSP serve l'XML e attualmente collega il foglio di stile alla pagina XML e server il risultato.

Non puoi, perché se servirai il client con una pagina XML con un foglio di stile allegato, questo non funzionerebbe. I browser non supportano exslt.

Tuttavia, se si esegue l'elaborazione XSLT sul server (con xalan), è possibile farlo funzionare, ma non capisco come si combina xslt con jsp.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top