This is the mail archive of the docbook-apps@lists.oasis-open.org mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: How do I get an email in verso titlepage?


On Thu, Oct 03, 2002 at 04:08:59PM -0500, Dennis Grace wrote:
> I'm working with
> 
> DocBook XSL 1.55.0
> xsltproc (libxmil2 2-4.24/libxslt 1.0.20)
> PassiveTeX 1.19
> 
> My titlepage.xml file has <author/> within the <t:titlepage element
> ="article">, and the resulting articles include the <email> portion of the
> <author> data.
> 
> So why is it that, although I have the <author/> tag within the
> <t:titlepage element="book"> for the recto and verso, neither one prints
> the <email> address?
> 
> Anyone know how I can get the email to show in the recto of the <book>
> titlepage?

I've been spending quite some time going through the
FO titlepage templates to understand how they work
so I can document them.  I'm still sorting out how
to present this rather complicated and flexible
system of templates.  

But to solve your immediate problem, the machinery
eventually calls this template in fo/titlepage.xsl:

<xsl:template match="author" mode="titlepage.mode">
  <fo:block>
    <xsl:call-template name="anchor"/>
    <xsl:call-template name="person.name"/>
    <xsl:apply-templates select="affiliation" mode="titlepage.mode"/>
  </fo:block>
</xsl:template>

The only children of author it processes are name and
affiliation.  You'll need to create a customized version of
this template by adding a line similar to "affiliation" for
email.  There is no template matching "email" in
"titlepage.mode", so you'll have to create one of those
too.

<xsl:template match="author" mode="titlepage.mode">
  <fo:block>
    <xsl:call-template name="anchor"/>
    <xsl:call-template name="person.name"/>
    <xsl:apply-templates select="affiliation" mode="titlepage.mode"/>
    <xsl:apply-templates select="email" mode="titlepage.mode"/>
  </fo:block>
</xsl:template>

<xsl:template match="email" mode="titlepage.mode">
  <fo:block>
    <xsl:apply-templates mode="titlepage.mode"/>
  </fo:block>
</xsl:template>

Let me know if this works or not.

-- 

Bob Stayton                                 400 Encinal Street
Publications Architect                      Santa Cruz, CA  95060
Technical Publications                      voice: (831) 427-7796
Caldera International, Inc.                 fax:   (831) 429-1887
                                            email: bobs@caldera.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]