[Home] [By Thread] [By Date] [Recent Entries]
I am trying to produce a PDF document formatted like:
Adobovs, Kivdul Letters to the editor. Nov/Dec 2001 p.27 . Philatelic news and views. Sep/Oct 2001 p.35; Sep/Oct 2002 p.11; Nov/Dec 2002 p.28; Jan/Feb 2003 p.24 . My template file gives me: Adobovs, Kivdul Letters to the editor. Nov/Dec 2001 p.27 . Philatelic news and views. Sep/Oct 2001 p.35 ; Sep/Oct 2002 p.11 ; Nov/Dec 2002 p.28 ; Jan/Feb 2003 p.24 . Can someone help me understand how to get the citation elements from articles with the same <Title> all on the same line? I think I need to process the entire node-set for "Philatelic news and views" simultaneously, but am not sure how to write that template. My XSLT and XML files, much abbreviated but still functional, follow. Thanks, Mark ------------------------------------ <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xs="http://www.w3.org/2001/XMLSchema" exclude-result-prefixes="xs" version="2.0"> <xsl:template match="/"> <fo:root> <fo:layout-master-set> <fo:simple-page-master master-name="page"> <fo:region-body region-name="body" margin-top="0.5in" margin-bottom="1in" margin-left="0.5in" margin-right="0.5in"/> </fo:simple-page-master> </fo:layout-master-set> <fo:page-sequence master-reference="page"> <fo:flow flow-name="body"> <xsl:apply-templates/> </fo:flow> </fo:page-sequence> </fo:root> </xsl:template>
<xsl:template match="Article"> <fo:block> <xsl:choose> <xsl:when test="Title = (preceding-sibling::Article/Title) [last()]"> <fo:wrapper>  <xsl:value-of select="IssueName"/>  <xsl:value-of select="Year" /> p.<xsl:value-of select=" Page"/> </fo:wrapper> </xsl:when> <xsl:otherwise> <fo:wrapper> <xsl:apply-templates select="Title"/>  <xsl:value-of select="IssueName"/>  <xsl:value-of select="Year" /> p.<xsl:value-of select=" Page"/> </fo:wrapper> </xsl:otherwise> </xsl:choose> <xsl:choose> <xsl:when test="Title = (following-sibling::Article/Title) [1]"> <xsl:text> ;  </xsl:text> </xsl:when> <xsl:otherwise> <xsl:text> .</xsl:text> </xsl:otherwise> </xsl:choose> </fo:block> </xsl:template> </xsl:stylesheet>
---------------------------------------------------
<List>
<Item>
<Heading entry="author">Adobovs, Kivdul </Heading>
<Article>
<Title>Letters to the editor</Title>
<IssueName>Nov/Dec</IssueName>
<Year>2001</Year>
<Page>27</Page>
</Article>
<Article>
<Title>Philatelic news and views</Title>
<IssueName>Sep/Oct</IssueName>
<Year>2001</Year>
<Page>35</Page>
</Article>
<Article>
<Title>Philatelic news and views</Title>
<IssueName>Sep/Oct</IssueName>
<Year>2002</Year>
<Page>11</Page>
</Article>
<Article>
<Title>Philatelic news and views</Title>
<IssueName>Nov/Dec</IssueName>
<Year>2002</Year>
<Page>28</Page>
</Article>
<Article>
<Title>Philatelic news and views</Title>
<IssueName>Jan/Feb</IssueName>
<Year>2003</Year>
<Page>24</Page>
</Article>
</Item>
</List>
|

Cart



