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] Cannot process a DocBook 5/XML document using a custom stylesheet


Hi Bob,

On Wed, 16 Jan 2013 11:44:32 -0800
"Bob Stayton" <bobs@sagehill.net> wrote:

> I cannot tell if any of your stylesheet modules is importing 
> xhtml-1_1/docbook.xsl.  Does shlomif-essays-5-xhtml-common.xsl?
> 

no, it does not:

shlomif[perl-begin]:$trunk$ ack -a 'docbook\.xsl'
lib/sgml/shlomif-docbook/xsl-5-stylesheets/
lib/sgml/shlomif-docbook/xsl-5-stylesheets/shlomif-essays-5-fo.xsl 6:
<xsl:import
href="http://docbook.sourceforge.net/release/xsl-ns/current/fo/docbook.xsl"; />

lib/sgml/shlomif-docbook/xsl-5-stylesheets/mychunk.xsl
22:     as mydocbook.xsl that imports the original docbook.xsl and
24:     customization should import mydocbook.xsl instead of
25:     docbook.xsl.  -->
26:<xsl:import href="shlomif-db5-xhtml-mydocbook.xsl"/>
shlomif[perl-begin]:$trunk$ 

Regards,

	Shlomi Fish

> Bob Stayton
> Sagehill Enterprises
> bobs@sagehill.net
> 
> --------------------------------------------------
> From: "Shlomi Fish" <shlomif@shlomifish.org>
> Sent: Wednesday, January 16, 2013 12:22 AM
> To: "Bob Stayton" <bobs@sagehill.net>
> Cc: "DocBook Apps" <docbook-apps@lists.oasis-open.org>
> Subject: Re: [docbook-apps] Cannot process a DocBook 5/XML document using a 
> custom stylesheet
> 
> > Hi Bob,
> >
> > On Tue, 15 Jan 2013 15:17:42 -0800
> > "Bob Stayton" <bobs@sagehill.net> wrote:
> >
> >> The problem here is that in chunking, even with onechunk, every 
> >> chunk-level
> >> element is processed twice, once to generate its chunk file and once to
> >> generate its content.  The two steps are separated by import precedence
> >> only, so maintaining the two levels of import precedence is necessary 
> >> when
> >> dealing with chunked elements.  That is done by having two customization
> >> files, as described here:
> >>
> >>   http://www.sagehill.net/docbookxsl/ChunkingCustomization.html
> >>
> >> Your custom template for article content would go into the first file, 
> >> which
> >> is named 'mydocbook.xsl' in the example.
> >
> > Thanks, this is working better. Now I have a different problem. With:
> >
> > [Q]
> > xsltproc --stringparam root.filename
> > lib/docbook/5/essays/bad-elements/all-in-one.xhtml.temp.xml
> > --path /usr/share/sgml/docbook/xsl-ns-stylesheets/xhtml-1_1
> > lib/sgml/shlomif-docbook/xsl-5-stylesheets/mychunk.xsl
> > lib/docbook/5/xml/bad-elements.xml
> > [/Q]
> >
> > I get:
> >
> > [Q]
> > runtime error:
> > file /usr/share/sgml/docbook/xsl-ns-stylesheets/xhtml-1_1/chunk-code.xsl 
> > line
> > 432 element call-template The called template 'get.doc.title' was not 
> > found.
> > runtime error:
> > file /usr/share/sgml/docbook/xsl-ns-stylesheets/xhtml-1_1/chunk-code.xsl 
> > line
> > 470 element choose
> > Variable 'rootid' has not been declared.
> > [/Q]
> >
> > mychunk.xsl is:
> >
> > [Q]
> > <?xml version="1.0" encoding="ASCII"?>
> > <!--This file was created automatically by html2xhtml-->
> > <!--from the HTML stylesheets.-->
> > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
> > xmlns:d="http://docbook.org/ns/docbook"; 
> > xmlns:exsl="http://exslt.org/common";
> > xmlns="http://www.w3.org/1999/xhtml"; version="1.0"
> > exclude-result-prefixes="exsl d">
> >
> > <!-- ********************************************************************
> >     $Id: chunk.xsl 6910 2007-06-28 23:23:30Z xmldoc $
> >     ********************************************************************
> >
> >     This file is part of the XSL DocBook Stylesheet distribution.
> >     See ../README or http://docbook.sf.net/release/xsl/current/ for
> >     copyright and other information.
> >
> >     ******************************************************************** -->
> >
> > <!--  
> > ==================================================================== -->
> >
> > <!-- First import the non-chunking templates that format elements
> >     within each chunk file. In a customization, you should
> >     create a separate non-chunking customization layer such
> >     as mydocbook.xsl that imports the original docbook.xsl and
> >     customizes any presentation templates. Then your chunking
> >     customization should import mydocbook.xsl instead of
> >     docbook.xsl.  -->
> > <xsl:import href="shlomif-db5-xhtml-mydocbook.xsl"/>
> >
> > <!-- chunk-common.xsl contains all the named templates for chunking.
> >     In a customization file, you import chunk-common.xsl, then
> >     add any customized chunking templates of the same name.
> >     They will have import precedence over the original
> >     chunking templates in chunk-common.xsl. -->
> > <xsl:import href="chunk-common.xsl"/>
> >
> > <!-- The manifest.xsl module is no longer imported because its
> >     templates were moved into chunk-common and chunk-code -->
> >
> > <!-- chunk-code.xsl contains all the chunking templates that use
> >     a match attribute.  In a customization it should be referenced
> >     using <xsl:include> instead of <xsl:import>, and then add
> >     any customized chunking templates with match attributes. But be sure
> >     to add a priority="1" to such customized templates to resolve
> >     its conflict with the original, since they have the
> >     same import precedence.
> >
> >     Using xsl:include prevents adding another layer
> >     of import precedence, which would cause any
> >     customizations that use xsl:apply-imports to wrongly
> >     apply the chunking version instead of the original
> >     non-chunking version to format an element.  -->
> > <xsl:include href="chunk-code.xsl"/>
> >
> > </xsl:stylesheet>
> >
> > [/Q]
> >
> > And shlomif-db5-xhtml-mydocbook.xsl is:
> >
> > [Q]
> > <?xml version='1.0' encoding='UTF-8'?>
> > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; 
> > version="1.0"
> > xmlns:db="http://docbook.org/ns/docbook";
> > xmlns:d="http://docbook.org/ns/docbook";
> > xmlns:vrd="http://www.shlomifish.org/open-source/projects/XML-Grammar/Vered/";
> > xmlns="http://docbook.org/ns/docbook";
> > xmlns:xlink="http://www.w3.org/1999/xlink";
> > xmlns:xhtml="http://www.w3.org/1999/xhtml";>
> >
> >    <xsl:import href="shlomif-essays-5-xhtml-common.xsl" />
> >
> >
> >    <!-- Ok, using the onechunk parameter makes this all work again. -->
> >    <!-- It does have the disadvantage that it only works for documents 
> > that
> > have --> <!-- a root element that is considered a chunk by the chunk.xsl
> > stylesheet. --> <!-- Ideally, onechunk would let anything be a chunk. But 
> > not
> > today. -->
> >
> >    <xsl:param name="onechunk" select="1"/>
> >    <xsl:param name="suppress.navigation">1</xsl:param>
> >
> >    <xsl:template name="href.target.uri">
> >        <xsl:param name="object" select="."/>
> >        <xsl:text>#</xsl:text>
> >        <xsl:call-template name="object.id">
> >            <xsl:with-param name="object" select="$object"/>
> >        </xsl:call-template>
> >    </xsl:template>
> >
> >    <!-- Avoid Generating a Table-of-Contents-->
> >    <xsl:param name="generate.toc">
> >        article toc
> >    </xsl:param>
> >
> > <!-- Disable the title="" attribute in sections. -->
> > <xsl:template name="generate.html.title">
> > </xsl:template>
> >
> > <!--
> > <xsl:template match="d:article" priority="1">
> >    <xsl:call-template name="id.warning"/>
> >
> >    <xsl:element name="{$div.element}" 
> > namespace="http://www.w3.org/1999/xhtml";>
> >        <xsl:call-template name="common.html.attributes">
> >            <xsl:with-param name="inherit" select="1"/>
> >        </xsl:call-template>
> >        <xsl:call-template name="id.attribute">
> >            <xsl:with-param name="conditional" select="0"/>
> >        </xsl:call-template>
> >
> >        <xsl:call-template name="article.titlepage"/>
> >
> >        <xsl:variable name="toc.params">
> >            <xsl:call-template name="find.path.params">
> >                <xsl:with-param name="table"
> > select="normalize-space($generate.toc)"/> </xsl:call-template>
> >        </xsl:variable>
> >
> >        <xsl:call-template name="make.lots">
> >            <xsl:with-param name="toc.params" select="$toc.params"/>
> >            <xsl:with-param name="toc">
> >                <xsl:call-template name="component.toc">
> >                    <xsl:with-param name="toc.title.p"
> > select="contains($toc.params, 'title')"/> </xsl:call-template>
> >            </xsl:with-param>
> >        </xsl:call-template>
> >
> >        <xsl:apply-templates/>
> >        <xsl:call-template name="process.footnotes"/>
> >    </xsl:element>
> > </xsl:template>
> > -->
> >
> > </xsl:stylesheet>
> >
> >
> > [/Q]
> >
> > Previously I had a problem that while everything was in one chunk, the 
> > page was
> > empty.
> >
> > Regards,
> >
> > Shlomi Fish
> >
> > -- 
> > -----------------------------------------------------------------
> > Shlomi Fish       http://www.shlomifish.org/
> > My Public Domain Photos - http://www.flickr.com/photos/shlomif/
> >
> > Ran Eilam To Shlomi Fish: so what are you working on? Working on a new 
> > wiki
> > about unit testing fortunes in freecell?
> >
> > Please reply to list if it's a mailing list post - http://shlom.in/reply .
> > 



-- 
-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
My Favourite FOSS - http://www.shlomifish.org/open-source/favourite/

We agree. But do we agree to agree?

Please reply to list if it's a mailing list post - http://shlom.in/reply .


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