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] | [Elist Home]

Subject: Re: DOCBOOK-APPS: XSL stylesheets: adding elements via customizationlayer

> From: Gershon L Joseph <gershon@mainsoft.com>
> I'm trying to extend the XSL stylesheets to cater for our extensions to
> the DocBook DTD. I have elements at the same level as <sect1>, which are
> to be treated the same way as <sect1>s. I've managed to get the TOC in the
> HTML Help appearing, but I'm getting this error while processing with
> Saxon 6.4.3:
> No template named "commandlineprogramdef" exists in the context named
> "section-title" in the "en" localization.
> I've searched the entire stylesheet installation tree, and can't find
> where to define this. The only places where context section-title appear
> are in common/gentext.xsl and en.xml. The error message is generated in
> l10n.xsl.
> I've overridden all code that process <sect1>s to include my elements, and
> I can't get rid of this message.
> Any ideas where to look or how to fix this?
> Any hints on adding support for new elements to the stylesheets? I get the
> feeling I'm reinventing the wheel here...

I'm not sure how you customized, so I'm not sure
if what I suggest here will work.  But you were on
the right track.

The file en.xml defines text templates (not xsl:templates)
for generated text, including titles.  It allows the
stylesheet to generate something like
"Section 3.2: My title" or whatever you want.
And it can work in many languages by defining
similar templates in each language file like en.xml.

You can extend the set of templates with your customization
layer using something like this:

<xsl:param name="local.l10n.xml" select="document('')"/>
<l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">
  <l:l10n language="en">
    <l:context name="section-title">
      <l:template name="commandlineprogramdef" text="%t"/>
    <l:context name="section-xref">
      <l:template name="commandlineprogramdef" text="%t"/>

I added one for section-xref in case you want to
form an <xref> to link to one of your new sections.
This extension only covers English doc, unless you
add more.

This will fix the error you are seeing, but I'm not sure
if it will satisfy everything. 

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

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

Powered by eList eXpress LLC