t:titlepage-content

t:titlepage-content — Create templates for the content of one side of a title page

Synopsis

<xsl:template match="t:titlepage-content"/>

Description

The title page content, that is, the elements from the source document that are rendered on the title page, can be controlled independently for the recto and verso sides of the title page.

The t:titlepage-content element has two attributes:

side

Identifies the side of the page to which this title page content applies. The side attribute is required and must be set to either recto or verso. In addition, you must specify exactly one t:titlepage-content for each side within each t:titlepage.

order

Indicates how the order of the elements presented on the title page is determined. If the order is document, the elements are presented in document order. Otherwise (if the order is stylesheet), the elements are presented in the order that they appear in the template (and consequently in the stylesheet).

The content of a t:titlepage-content element is a list of element names. These names should be unqualified. They identify the elements in the source document that should appear on the title page.

Each element may have a single attribute: predicate. The value of this attribute is used as a predicate for the expression that matches the element on which it occurs.

In other words, to put only the first three authors on the recto-side of a title page, you could specify:

  <t:titlepage-contents side="recto">
    <!-- other titlepage elements -->
    <author predicate="[count(previous-sibling::author)<2]"/>
    <!-- other titlepage elements -->
  </t:titlepage-contents>

Usually, the elements so named are empty. But it is possible to make one level of selection within them. Suppose that you want to process authorgroup elements on the title page, but you want to select only proper authors, editors, or corporate authors, not collaborators or other credited authors.

In that case, you can put a t:or group inside the authorgroup element:

  <t:titlepage-contents side="recto">
    <!-- other titlepage elements -->
    <authorgroup>
      <t:or>
        <author/>
        <editor/>
        <corpauthor/>
      </t:or>
    </authorgroup>
    <!-- other titlepage elements -->
  </t:titlepage-contents>

This will have the effect of automatically generating a template for processing authorgroups in the title page mode, selecting only the specified children. If you need more complex processing, you'll have to construct the templates by hand.