xsl-list
[Top] [All Lists]

[xsl] Passing xs:string containing zero characters

2010-05-18 20:01:39
Hi!

I'm new to XSLT 2.0 and using it with Saxon 9.1 in DITA-Open Toolkit.
I wrote following variable and pass it as a parameter as $prmLang to the template.

<xsl:variable name="lang" as="xs:string" select="string(@xml:lang)"/>

<xsl:apply-templates select="child::*[contains(@class, ' topic/related-links ')]">
  <xsl:with-param name="prmLang" as ="xs:string" select="$lang"/>
</xsl:aplly-templates>

<xsl:template match="*[contains(@class, ' topic/related-links ')]">
  <xsl:param name="prmLang" as="xs:string" required="yes"/>
  ...
</xsl:template>

Then the following error is occured when $lang is empty string.

"[xslt] D:\DITA-OT1.5-FB\demo\xxx\xsl\xxx_dita2fo_relatedlinks.xsl:34: Fatal Error! No value supplied for required parameter"

Is it a right behavior? I thought that xs:string can contain any sequence of zero or more characters.

(If I rewrite the template code required="yes" to select="''", then it works fine.)

Toshihiko Makita

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>