|
[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
[Recent Entries]
[Reply To This Message]
Re: variable question
Subject: Re: variable question
From: Bruce D'Arcus <bdarcus@xxxxxxxxxxxxx>
Date: Mon, 30 Aug 2004 23:31:43 -0400
|
I'm getting the following error on the below:
An empty sequence is not allowed as the first argument of
mods:reftype()
What does this mean in this context? That the function is getting
confused trying to find the right node?
Bruce
On Aug 29, 2004, at 4:32 PM, Jeni Tennison wrote:
For XSLT 2.0, I think I'd turn the reftype template into a function
instead, since it just returns a string. I'd keep the title-before
template as a template since it might return some XML when you revise
it in the future. So it would look more like:
<xsl:template match="mods:titleInfo[not(@type='abbreviated')]"
mode="bibliography">
<span class="{if (../mods:relatedItem[@type = 'host'])
then 'title'
else 'title italic'}">
<xsl:apply-templates select="." mode="title-before"/>
<xsl:apply-templates select="mods:title"/>
<xsl:apply-templates select="mods:subTitle"/>
<xsl:apply-templates select="." mode="title-after"/>
</span>
</xsl:template>
<xsl:template match="mods:titleInfo" mode="title-before">
<xsl:if test="mods:reftype(parent::mods:relatedItem) = 'chapter'">
<xsl:text>"</xsl:text>
</xsl:if>
</xsl:template>
<xsl:function name="mods:reftype" as="xs:string">
<xsl:param name="relatedItem" as="element(mods:relatedItem)" />
<xsl:choose>
<xsl:when test="$relatedItem/@type = 'host'">
<xsl:variable name="issuance" as="xs:string"
select="$relatedItem/mods:originInfo/mods:issuance" />
<xsl:choose>
<xsl:when test="$issuance = 'continuing'">article</xsl:when>
<xsl:when test="$issuance = 'monographic'">chapter</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:otherwise>book</xsl:otherwise>
</xsl:choose>
</xsl:function>

|
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format
| RSS 2.0 |
|
| Atom 0.3 |
|
|