At 2009-03-15 14:00 -0700, Mark Wilson wrote:
All of the XSL FO TOC generating examples I have seen are keyed to
the structural parts of a book (a chapter element, etc) or some
similar object. I have constructed an index to a journal using
XSL-FO and would like to have a TOC that indicates the initial use
of each letter of the alphabet, or some useful refinement thereof.
For a start, how would I identify the position in the index where a
letter was used for the first time.
I think that is the wrong question to ask when working with
XSL-FO. You need to work top-down.
If it would help, here is a draft copy of the document:
http://www.knihtisk.org/library/specialist/headings.pdf.
The initial occurrence of a letter , as well as every other
occurrence, will appear in the XML element <Heading>. For the letter
'A', this is the first entry in the above document <Heading>Abbeys
and Monasteries</Heading>. Since every entry appears in the same
element type, how do I distinguish 'interesting' <Heading> elements
(those with an initial occurrence of a letter) from their less
interesting cousins (those with later occurrences)?
<xsl:for-each-group select="....population.here..."
group-by="upper-case(substring(normalize-space(.),1,1)">
<!--now at the first one of the population with the first letter-->
<fo:block font-size="150%" font-weight="bold">
<!--show the letter-->
<xsl:value-of select="current-grouping-key()"/>
</fo:block>
<!--all those with the first letter are in current-group()-->
<!--create your index entries here with those in the current-group()-->
</xsl:for-each-group>
I hope this helps.
. . . . . . . . . . Ken
--
XSLT/XSL-FO/XQuery training in Los Angeles (New dates!) 2009-06-08
Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video
Video lesson: http://www.youtube.com/watch?v=PrNjJCh7Ppg&fmt=18
Video overview: http://www.youtube.com/watch?v=VTiodiij6gE&fmt=18
G. Ken Holman mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/
Male Cancer Awareness Nov'07 http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers: http://www.CraneSoftwrights.com/legal
--~------------------------------------------------------------------
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>
--~--