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


Sorry, I'm not following this. I think your shlomif-db5-xhtml-mydocbook.xsl should import xhtml_1-1/docbook.xsl as described in step 1 in the instructions.

Bob Stayton
Sagehill Enterprises
bobs@sagehill.net

--------------------------------------------------
From: "Shlomi Fish" <shlomif@shlomifish.org>
Sent: Wednesday, January 16, 2013 12:12 PM
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 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 .

---------------------------------------------------------------------
To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org





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