Thomas J.S.: document()

Beitrag lesen

Hallo,

Hmmm... es klappt nicht. Ich bekomme keine Fehlermeldung, es erscheint aber nur "gaehnende Leere", wo eigentlich ein Text auftauchen sollte?!
Was laeuft denn jetzt falsch??

der gesucheter node existiert nicht (der 'select' verfehlt das ziel)?

(welchen prozessoer benutzt du?)

bsp:
dateien sind für cocoon (xalan) aufbereitet.

----xml 1 ----
<?xml version="1.0"?>
<?xml-stylesheet href="document_01.xsl" type="text/xsl"?>
<?cocoon-process type="xslt"?>

<ROOT>
   <DATA>
      <NAME>Huber</NAME>
      <VORNAME>Andreas</VORNAME>
      <ID>64</ID>
   </DATA>
   <DATA>
      <NAME>Meier</NAME>
      <VORNAME>Matthias</VORNAME>
      <ID>23</ID>
   </DATA>
      <DATA>
      <NAME>Huber</NAME>
      <VORNAME>Matthias</VORNAME>
      <ID>22</ID>
   </DATA>
</ROOT>
-----
------ xml 2 -----
<?xml version="1.0"?>
<wurzel>
   <code>123-code-456</code>
</wurzel>
------
---- xsl ------
<?xml version='1.0'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="ROOT">
<xsl:processing-instruction name="cocoon-format">type="text/html"</xsl:processing-instruction>
<html>
 <head>
  <title>funktion: document()</title>
 </head>
 <body>

<xsl:for-each select="DATA">
<p>
<b><xsl:value-of select="NAME" /></b>&#160;
<i><xsl:value-of select="VORNAME" /></i>&#160;
<xsl:call-template name="formatiere">
   <xsl:with-param name="wert" select="document('document_02.xml')/wurzel/code"/>
</xsl:call-template>
&#160;&#160;
<u>
<xsl:call-template name="formatiere">
   <xsl:with-param name="wert" select="ID"/>
</xsl:call-template>
</u>

</p>
</xsl:for-each>

<div>

</div>
 </body>
 </html>
</xsl:template>

<xsl:template name="formatiere">
<xsl:param name="wert" />
<i>
<xsl:value-of select="$wert" />
</i>
</xsl:template>

</xsl:stylesheet>
------

erzeugte html:
---
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>funktion: document()</title></head><body><p><b>Huber</b> 
<i>Andreas</i> 
<i>123-code-456</i>
  
<u><i>64</i></u></p><p><b>Meier</b> 
<i>Matthias</i> 
<i>123-code-456</i>
  
<u><i>23</i></u></p><p><b>Huber</b> 
<i>Matthias</i> 
<i>123-code-456</i>
  
<u><i>22</i></u></p><div></div></body></html>
-------

grüße
thomas