xsl-list
[Top] [All Lists]

Re: Catch ALL | Failed template rule

2005-03-24 12:25:14
Thank you Nicola:
Iterating through and performing an exact check using a test method
such as xsl:choose was what I was trying to avoid though.
After reading through your example though, it does spark my interest
in asking the question:
What is fo?



On Thu, 24 Mar 2005 13:42:16 -0000, Nicola Harlow
<Nicola(_dot_)Harlow(_at_)pm-group(_dot_)com> wrote:
Hi Karl,

Sorry if this is way off target, but I have just found a solution for a
similar problem that may help you.

This is in XSL:FO, and may not be of any use to you, but you may be able
to adapt it.

Basically I have a tag that searches for a glossary entry. When it finds
it, it creates a link to the glossary entry. If there is no entry, it
creates a broken link and spews forth some red text so I can find it
easily.

   <xsl:template match="glossarytt">
       <xsl:variable name="items" select="key('glossaryitems-by-name',
           @name)"/>

           <xsl:choose>
               <xsl:when test="$items">
                   <xsl:for-each select="$items">
                       <xsl:variable name="href" select="@name"/>
                       <fo:inline text-decoration="underline"
color="green"
                           font-weight="bold">
                           <fo:basic-link
internal-destination="{$href}">
                               <xsl:value-of select="term"/>
                           </fo:basic-link>
                       </fo:inline>
                   </xsl:for-each>
               </xsl:when>
               <xsl:otherwise><fo:basic-link
internal-destination="BrokenGlossaryTT">
                   <fo:inline color="red">Broken glossarytt:
<xsl:value-of
                       select="@name"/></fo:inline></fo:basic-link>
               </xsl:otherwise>
               </xsl:choose>
   </xsl:template>

I don't know if this will quite cover what you want, but it certainly
works for me!

(Thanks to J.Pietschmann)

Nicola

Nicola Harlow
Technical Author
The Program Management Group plc
tel:           +44 (0) 1937 547 171
direct:      +44 (0) 1937 547 165
fax:         +44 (0) 1937 547 154
mail:     nicola(_dot_)harlow(_at_)pm-group(_dot_)com
web:        http://www.pm-group.com


--~------------------------------------------------------------------
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>
--~--



--~------------------------------------------------------------------
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>
--~--