xsl-list
[Top] [All Lists]

RE: [xsl] thumb index creation

2007-06-04 02:37:12
I'm not sure exactly what you want, but this code is almost certainly wrong:

<xsl:for-each select="//title"> 
  <xsl:choose> 
     <xsl:when test="//title='Seminare'"> 

That's saying "for every title in the document, if there is some title
somewhere in the document equal to 'Seminare'...". You probably meant "if
this title is 'Seminare'", which would be

<xsl:for-each select="//title"> 
  <xsl:choose> 
     <xsl:when test=".='Seminare'"> 

I'm afraid it's not surprising you didn't find the problem in the archives.
10% of the queries on this list are due to people getting the context of
their path expressions wrong, but it they knew that was the issue then they
wouldn't need to ask the question.

Be very careful before using "//". A lot of beginners seem to throw it in
for luck, without understanding what it does.

Michael Kay
http://www.saxonica.com/


-----Original Message-----
From: Andreas Peter [mailto:info(_at_)minimag(_dot_)de] 
Sent: 04 June 2007 07:29
To: XSL-LIST
Subject: [xsl] thumb index creation

Hello together,

I did my homework and asked the archive but I found nothing 
about my problem. Here some facts...

At the moment I am working on a thumb index for a broschure. 
My problem is that I do not know how to address the content 
of an element (plain text). For example I want to address the 
content (here Seminare or Fachseminare ...) of the element 
<title>Seminare</title> for my thumb index. That means each 
time the tag <title> appears in the XML-file a thumb index 
should be created depending on the content.

For example:
<title>Seminare</title> => red thumb index 
<title>Fachseminare</title> => green thumb index


More concrete:
The XML-File (in extracts):

...
<title>Seminare</title>
...
<title>Fachseminare</title>
...

My XSL-File (in extracts):

...
<fo:static-content flow-name="thumb.left"> <fo:block> 
<xsl:for-each select="//title"> <xsl:choose> <xsl:when 
test="//title='Seminare'"> <fo:block-container 
position="absolute" top="0mm" right="94mm"
height="25mm" width="5mm" background-color="rgb(172,207,204)">
<fo:block />
</fo:block-container>
</xsl:when>
<xsl:when test="//title='Fachseminare'"> <fo:block-container 
position="absolute" top="25mm" right="94mm"
height="25mm" width="5mm" background-color="rgb(89,82,65)"> 
<fo:block></fo:block> </fo:block-container> </xsl:when> 
<xsl:when test="//title='Vortraege'"> <fo:block-container 
position="absolute" top="50mm" right="94mm"
height="25mm" width="5mm" background-color="rgb(89,82,65)"> 
<fo:block></fo:block> </fo:block-container> </xsl:when> 
</xsl:choose> </xsl:for-each> </fo:block> </fo:static-content> ...

If I use the code above, only the first <title> will be 
matched as a thumb index. Any ideas out there? Would be quite helpful.

Thanks so much,
Andreas


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

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