Hello Shawn,
you have 2 problems:
1. xsl:document is not part of XSLT 1.0, only of XSLT 1.1, which is no
longer developed (http://www.w3.org/TR/xslt11/). You won't find any XSLT
processors, that know XSLT 1.1. The only one I know is Saxon in some
versions.
Alternative for XSLT 1.0 are different processor specific extension
functions like Xalan redirect.
2. <?xml-stylesheet type="text/xsl" href="../display.xsl"?>
That's a processing instruction. If you write it in this way in your
XSLT, it's used (or not) there and not in the output. To create one in
the result tree, use
<xsl:processing-instruction name="xml-stylesheet">type="text/xsl"
href="../display.xsl"</xsl:processing-instruction>.
Regards,
Joerg
Shawn O. McKenzie wrote:
I am splitting multiple xml documents into smaller files using
xsl:document. Each of the output files needs to include a reference to
another transform to display in a browser. What I would like to do is
someting like:
<xsl:for-each select="namespace/class">
<xsl:variable name="class" select="@name"/>
<xsl:variable name="file" select="concat($namespace, '.', $class,
'.xml')"/>
<xsl:document method="xml" href="{$file}">
<?xml-stylesheet type="text/xsl" href="../display.xsl"?>
<class><xsl:copy-of select="@name"/>
<xsl:call-template name="hierarchy"/>
<xsl:call-template name="mergefiles"/>
</class>
</xsl:document>
</xsl:for-each>
However, it does not pick up the <?xml-stylesheet type="text/xsl"
href="../display.xsl"?> line. I tried putting this content within an
xsl:text element but that complained about the content of the element. I
also tried changing < and > to their related entity refs, but that just
pulled in the entity refs.
It would seem that you should be able to do this in one of the
attributes of xsl:document, but I'm not seeing it.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list