Mode:

Compact lists

Showing:

Documentation
Parameters
Used by
References
Included modules
Source
Main stylesheet booksToDocBook.xsl
Documentation

Description

Created on: May 8, 2013

Author: Octavian Nadolu

Generates a DocBook file containing a table with books.

Included modules
Stylesheet version 2.0
Template books
Documentation

Description

Generates a table with books.

Namespace No namespace
Match books
Mode #default
References
Import precedence 0
Source
<xsl:template match="books">
  <article xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0">
    <title>The list of recommended books</title>
    <xsl:call-template name="processMyBooks">
      <xsl:with-param name="generateIndex" select="$generateIndex"/>
      <xsl:with-param name="groupByTechnology" select="$groupByTechnology"/>
    </xsl:call-template>
  </article>
</xsl:template>
Template generateTable
Namespace No namespace
Used by
Template
Parameters
QName Namespace
books No namespace
Import precedence 0
Source
<xsl:template name="generateTable">
  <xsl:param name="books"/>
  <informaltable frame="void">
    <col width="12%"/>
    <col width="88%"/>
    <tbody>
      <xsl:apply-templates select="$books"/>
    </tbody>
  </informaltable>
</xsl:template>
Template generateCategoryTitle
Documentation

Description

Generates the a title for the given book category.

Parameters

category The name of the book category.
Namespace No namespace
Used by
Template
Parameters
QName Namespace
category No namespace
Import precedence 0
Source
<xsl:template name="generateCategoryTitle">
  <xsl:param name="category"/>
  <p>
    <xsl:value-of select="$category"/>
  </p>
</xsl:template>
Template createIndexItem
Documentation

Description

Generates a link for a book the index.

Parameters

bookAnchor The anchor of the reference.
bookName The text displayed for the link.
bookAuthor The author of the book.
Namespace No namespace
Used by
Parameters
QName Namespace
bookAnchor No namespace
bookAuthor No namespace
bookName No namespace
Import precedence 0
Source
<xsl:template name="createIndexItem">
  <xsl:param name="bookAnchor"/>
  <xsl:param name="bookName"/>
  <xsl:param name="bookAuthor"/>
  <para>
    <emphasis role="bold">
      <link xlink:href="{concat('#', $bookAnchor)}">
        <xsl:value-of select="$bookName"/>
      </link>
    </emphasis>
    <emphasis role="italic">
                - by <xsl:value-of select="$bookAuthor"/>
    </emphasis>
  </para>
</xsl:template>
Template book
Documentation

Description

Creates a row with two columns for each book.

Namespace No namespace
Match book
Mode #default
References
Template
Import precedence 0
Source
<xsl:template match="book">
  <!-- Book -->
  <tr>
    <td valign="top">
      <!--Image-->
      <xsl:apply-templates select="image"/>
    </td>
    <td>
      <anchor xml:id="{@anchor}"/>
      <!-- Title with link -->
      <xsl:variable name="title" select="title"/>
      <xsl:variable name="titleURI" select="@targeturi"/>
      <xsl:call-template name="linkTitle">
        <xsl:with-param name="titleUri" select="$titleURI"/>
        <xsl:with-param name="title" select="$title"/>
      </xsl:call-template>
      <!-- Author -->
      <para>
        <emphasis role="italic">by 
                        <xsl:value-of select="author"/>
        </emphasis>
      </para>
      <para>
        <!-- Book info -->
        <emphasis role="bold">Paperback: </emphasis><xsl:value-of select="paperback"/> | 
                    <emphasis role="bold">Publisher: </emphasis><xsl:value-of select="publisher"/> | 
                    <emphasis role="bold">Isbn: </emphasis><xsl:value-of select="isbn"/>
      </para>
      <!-- Description -->
      <xsl:apply-templates select="description"/>
    </td>
  </tr>
</xsl:template>
Template image
Documentation

Description

Creates an image element in a paragraph.

Namespace No namespace
Match image
Mode #default
Import precedence 0
Source
<xsl:template match="image">
  <para>
    <mediaobject>
      <imageobject>
        <imagedata fileref="{@src}" width="110" annotations="{@description}"/>
      </imageobject>
    </mediaobject>
  </para>
</xsl:template>
Template linkTitle
Documentation

Description

Generates a title with link

Parameters

titleUri The URI of the title
title The value of the title
Namespace No namespace
Used by
Template
Parameters
QName Namespace
title No namespace
titleUri No namespace
Import precedence 0
Source
<xsl:template name="linkTitle">
  <xsl:param name="titleUri"/>
  <xsl:param name="title"/>
  <para>
    <emphasis role="bold">
      <link xlink:href="{$titleUri}">
        <xsl:value-of select="$title"/>
      </link>
    </emphasis>
  </para>
</xsl:template>
Template para
Documentation

Description

Creates a paragraph element.
Namespace No namespace
Match para
Mode #default
Import precedence 0
Source
<xsl:template match="para">
  <para>
    <xsl:apply-templates/>
  </para>
</xsl:template>
Template italic
Documentation

Description

Creates an italic element.
Namespace No namespace
Match italic
Mode #default
Import precedence 0
Source
<xsl:template match="italic">
  <emphasis>
    <xsl:apply-templates/>
  </emphasis>
</xsl:template>
Template list
Documentation

Description

Creates a list element.
Namespace No namespace
Match list
Mode #default
Import precedence 0
Source
<xsl:template match="list">
  <itemizedlist>
    <xsl:apply-templates/>
  </itemizedlist>
</xsl:template>
Template element
Documentation

Description

Creates a list item element.
Namespace No namespace
Match element
Mode #default
Import precedence 0
Source
<xsl:template match="element">
  <listitem>
    <para>
      <xsl:apply-templates/>
    </para>
  </listitem>
</xsl:template>