xsl-list
[Top] [All Lists]

mapping 2 attribute values to a 3rd

2005-02-02 18:23:34
I'm trying to prepend a prefix, which depends on a status code and a
language code, to the front of a title.  I've stored the mapping from
status and language codes to prefixes like this:

<xsl:variable name="title-table">
  <title status="WDRN" lang="en" prefix="(Withdrawn)"/>
  <title status="WDRN" lang="fr" prefix="(Retir&#xE9;)"/>
  <title status="WDRN" lang="it" prefix="(Suspensa)"/>
  <title status="WDRN" lang="sv" prefix="(Utag&#xE5;tt)"/>
  <title status="WDRN" lang="de" prefix="(Zur&#xFC;ckgezogen)"/>
  <!-- more status codes to come! -->
</xsl:variable>

And given that I've got the title text itself stored in a variable named
"title":

  <xsl:variable name="title" select="title_list/title[(_at_)type='TITLE'][1]"/>

I then try to pass the prefixed title to a template like this:

    <xsl:with-param name="prefixed-title"
       select="if (specific_status)
               then concat($title-table/title[
                            @status=specific_status and
                            @lang=doc_lang_list/doc_lang[1]]
                           [(_at_)prefix],
                           normalize-space($title))
               else normalize-space($title)"/>

So for the following XML, I would expect $prefixed-title to be prefixed
by '(Withdrawn)', but it's just the bare title text.  Can someone point
out what I've done wrong in my stylesheet?

<document id="GDPDCAAAAAAAAAAA">
<doc_lang_list>
<doc_lang>en</doc_lang>
</doc_lang_list>
<specific_status>WDRN</specific_status>
<title_list>
<title type="TITLE" language="en">Hydraulic Fluid Power - Valves - Mounting 
Interfaces (NFPA/T3.5.1M R1-1984)</title>
<title type="EXT" language="en">Superseded by T3.5.1 R2-2002</title>
</title_list>
</document>

Thanks!
-- 
Kevin Rodgers


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