[xsl] Odd Result-Document Behavior

Subject: [xsl] Odd Result-Document Behavior
From: "Eliot Kimber ekimber@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 23 Dec 2015 17:32:48 -0000
I9m using Saxon 9.6.0.7 via Oxygen.

I9m using xsl:result-document with @format to generate result documents. If
I use a variable reference in @format the referenced xml:output is not used.
If I replace the variable reference with a string literal I get the expected
output (in both cases the attribute is an attribute value template).

My initial code is:

<xsl:result-document href="{$mapUri}" format="{$mapFormat}2>



Where $mapFormat has the string value map9 and the 3map2 output declaration
is present:



<xsl:param name="mapFormat" as="xs:string" select="'map'2/>



  <xsl:output name="map"
    method="xml"
    doctype-public="-//OASIS//DTD DITA Map//EN"
    doctype-system="map.dtd"
    indent="yes"
  />

When I run this, the output is not used (result document has no DOCTYPE decl
and is not indented).

If I replace format="{$mapFormat}2 with format=3{map9}2 then I get the
expected result (DOCTYPE decl, indented markup).

So the only difference is the use of the variable reference. I9ve verified
that $mapFormat has a value:

    <xsl:message> + [DEBUG] mapFormat="<xsl:sequence
select="$mapFormat"/>"</xsl:message>



Which produces:


+ [DEBUG] mapFormat=3map"

It seems unlikely that this is a Saxon bug but I9m at a loss as to what I
could be doing wrong to cause this behavior.

What am I missing?

Thanks,

Eliot

----
Eliot Kimber, Owner
Contrext, LLC
http://contrext.com

Current Thread