OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: Re: [docbook-apps] Spans, Abstracts, and Sigplan

Hi Aaron,
I can help with some of this. 

1.  By default, DocBook treats the abstract and other info elements as part of the titlepage information.  Which info elements are actually expressed in the output is governed by the titlepage spec mechanism, which is documented here:


Since abstract is treated as part of the titlepage, it is formatted by the component.titlepage.properties attribute set, which puts it into the span with the title.  So your customization needs to remove it from the titlepage spec (and rebuild the titlepage templates as described in the doc), and then add it as part of the content of the article.

The template for article does <xsl:apply-templates/> after the titlepage and toc stuff.  By default the info element is not processed in normal mode, because it is handled in mode="titlepage mode".  So you would need this template to turn it on for body content in normal mode:

<xsl:template match="d:info">
  <xsl:apply-templates select="d:abstract" mode="titlepage.mode"/>
  <xsl:apply-templates select="d:keywordset" mode="titlepage.mode"/>
  <xsl:apply-templates select="d:subjectset" mode="titlepage.mode"/>

The default templates for keywordset and subjectset in that mode are empty in DocBook XSL, because those are typically handled in a custom format, if they are output at all.  So you will have to write your own templates to format them.

2.  For this author layout, you will need to rewrite the template that matches on d:author in mode="titlepage.mode".  You can copy the original from fo/titlepage.xsl.  You could use fo:list-block, with the author in the fo:list-item-label and the rest in fo:list-item-body.

3.  The abstract title can be formatted using the abstract.title.properties attribute set, setting 'text-align' to 'start'.

4.  Text to be placed in an absolute position on a page is typically done using an fo:block-container with absolute-position="absolute".  However, such a container does not exclude the body text flow.   If you just try to place that information into an fo:block-container that is absolutely positioned on the page, the normal body text will write over it.

This one may not be possible with XSL-FO.   Such text would normally be put into a float, but in XSL-FO 1.0, a float to the bottom is handled by fo:footnote, but footnotes span across both columns.   I know the Antenna House XSL-FO processor has extensions for floats that might work here, but I don't FOP can do it.  Perhaps someone else has a better idea.
Bob Stayton
Sagehill Enterprises

On 11/12/2013 6:55 PM, Aaron W.Hsu wrote:
Hello All:

I am trying to implement a sigplan template for DocBook. The Article language does well to encode most of the important elements, but I’m having trouble getting the style right. I found the attribute set for component.titlepage.properties that lets me set the information in the title page to span the two columns that the sigplan format requires, and most of the other elements I have figured out, but I’m not sure how to do the following:

  1. Put the abstract as a part of the first column above the first section, followed by the category and keywords.
  2. Layout the authors as side by side with name, affiliation, and email listed vertically for each author.
  3. Put the abstract header as left aligned rather than centered.
  4. Put a copyright/legal notice and other such meta information in the bottom of the first column, right below the text of the section, but inline with it, so that it takes up that bottom part of the first column where normal text would go; regular text starts on the second column of the title page when it reaches the copyright information.

Can anyone help me figure this out?

Aaron W. Hsu | arcfide@sacrideo.us | http://www.sacrideo.us
http://retroshare.sourceforge.net -- Secure, Decentralized Communications


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]