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: Customizing DocBook to Produce a real URL Tree

Am Dienstag, 26. November 2002 11:41 schrieb Shlomi Fish:
> Hi!
> I'm not happily using the db2* tools to convert DocBook/XML into
> various formats. However, I noticed that jade put all the HTML file
> into one directory and calls them with obscure names such as:
> book1.html
> c16.html
> x208.html
> etc. Now what I want is that it will be real URL Tree:
>      (Root)
> [id1]
> [id1]/[id2]
> [id1]/[id2]/[id3]
> [id4]

you need to customize <xsl:template match="*" mode="chunk-filename">
its inside chunk-common i believe. I dont know how to customize DSSSL.

I use xinclude to put my docbook together and 
then i have all these nice xml:base attributes.

i modified it like this (its not working code because of some missing 
templates ('getdir' and 'has.chunk.children', but i can easily send 
you a working example if its not enough and you are interested.

(if you dont work with xinclude you can write a recursive template 
which goes up and builds a diretory path from ancestor ids. i made it 
like this before i used xinclude) 

<xsl:template match="*" mode="chunk-filename">
  <xsl:variable name="ischunk"><xsl:call-template 

    <xsl:when test="$ischunk='0'">
        <xsl:when test="count(parent::*)>0">
          <xsl:apply-templates mode="chunk-filename" 
        <!-- unless there is no up, in which case return "" -->

      <xsl:variable name="xmlbase" 

      <xsl:variable name="mydir">
        <xsl:call-template name="getdir">
          <xsl:with-param name="filename" select="$xmlbase"/>

      <xsl:variable name="myid">
        <xsl:call-template name="object.id"/>

      <xsl:variable name="has.chunk.children">
        <xsl:call-template name="has.chunk.children"/>

        <xsl:when test="$has.chunk.children = '1'">
          <xsl:value-of select="$mydir"/>
          <xsl:value-of select="concat($root.filename, $html.ext)"/>
          <xsl:value-of select="$mydir"/>
          <xsl:value-of select="concat($myid, $html.ext)"/>

PLANWERK 6 /websolutions
Herzogstraße 85
40215 Düsseldorf

fon 0211-6015919
fax 0211-6015917

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

Powered by eList eXpress LLC