You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@forrest.apache.org by mjb <ma...@ella-associates.org> on 2003/08/12 23:49:42 UTC

Docbook skinning and public identifiers

Dear people

I would like to transform my Docbook documents using the Norm Walsh style
sheets
rather than using the docbook2document.xsl style sheet

But my docbook documents dont have public identifiers in them
(I cant change this)
How do I let Forrest know what sort of document it is dealing with?

Also:
Mr Crossley, in his FAQ gives the following xml as the way to transform
DocBook using the Norm walsh sheets.
...
  <map:match pattern="**/resolver-*.html">
    <map:generate src="content/xdocs/{1}/resolver-{2}.xml"/>
    <map:transform
      src="file:///usr/share/sgml/docbook/xsl/xhtml/docbook.xsl"/>
    <map:serialize/>
  </map:match>
...

Which sitemap file does this go in? (the main sitemap.xmap?).
Also, does it matter where abouts in the sitemap.xmap file it goes?
 Also, does this handle the 'skinning' process as well? In other words, will
the Docbook documents appear
  within the HTML framework of Forrest?
 Also: is the text 'resolver' significant?


Also: I downloaded a source copy of Forrest from the
download directory (tar.gz) but the structure of the
sitemap.xmap files seems very different to that described
in the documentation (for example: I cant find a 'forrest.xmap' any where on
my system)
.
  Is this version very out of date?
  Do I need to use cvs to get a recent copy?

thanks for your help
matthew bishop


Re: Docbook skinning and public identifiers

Posted by Jeff Turner <je...@apache.org>.
On Tue, Aug 12, 2003 at 02:49:42PM -0700, mjb wrote:
> Dear people
> 
> I would like to transform my Docbook documents using the Norm Walsh style
> sheets rather than using the docbook2document.xsl style sheet

Norm Walsh's stylesheets emit HTML, so you'd have to munge them
slightly to be able to merge in the Forrest header/menu.  PDFs
certainly wouldn't work.  Also, I think Norm Walsh's stylesheets use a
Saxon extension.  Forrest uses Xalan, so you'd have to change that.

Might be easiest to stick with just Norm Walsh's stylesheets in the
beginning, and later decide if you really need Forrest.

> But my docbook documents dont have public identifiers in them
> (I cant change this)

You should; otherwise they're not Docbook documents, just some random
SGML.

> How do I let Forrest know what sort of document it is dealing with?

Have a look in forrest.xmap to see how it's done:

<map:actions>
  <map:action logger="sitemap.action.sourcetype" name="sourcetype" src="org.apache.cocoon.acting.sourcetype.SourceTypeAction">
    ...
    <sourcetype name="docbook-v4.2">
      <document-declaration public-id="-//OASIS//DTD DocBook XML V4.2//EN" />
    </sourcetype>
    <sourcetype name="sdocbook-v1.0">
      <document-declaration public-id="-//OASIS//DTD Simplified DocBook XML V1.0//EN" />
    </sourcetype>
  </map:action>

So the SourceTypeAction looks at the DOCTYPE declaration by default.
I believe it can also look at the root node, and possibly other
things; have a look at the source.

> Also:
> Mr Crossley, in his FAQ gives the following xml as the way to transform
> DocBook using the Norm walsh sheets.
> ...
>   <map:match pattern="**/resolver-*.html">
>     <map:generate src="content/xdocs/{1}/resolver-{2}.xml"/>
>     <map:transform
>       src="file:///usr/share/sgml/docbook/xsl/xhtml/docbook.xsl"/>
>     <map:serialize/>
>   </map:match>
> ...
> 
> Which sitemap file does this go in? (the main sitemap.xmap?).

Yes, just above the default *.html matcher.

> Also, does it matter where abouts in the sitemap.xmap file it goes?

Yes, order matters.  Stuff at the top matches first.

>  Also, does this handle the 'skinning' process as well? In other words, will
> the Docbook documents appear
>   within the HTML framework of Forrest?

Not unless you strip the outer elements (<html> etc) and replace with
the tag Forrest uses to identify mergeable content.  Have a look at
http://localhost:8888/body-index.html for an example.

>  Also: is the text 'resolver' significant?

I think that's just an example XML filename.

> Also: I downloaded a source copy of Forrest from the
> download directory (tar.gz) but the structure of the
> sitemap.xmap files seems very different to that described
> in the documentation (for example: I cant find a 'forrest.xmap' any where on
> my system)

The docs describe CVS Forrest.  No great loss as we didn't have much
sitemap doco for 0.4, but some can be found in primer.html

>   Is this version very out of date?

About 6 months.  CVS Forrest is stable and we'll be doing a 0.5
release soonish.

>   Do I need to use cvs to get a recent copy?

Preferably.

--Jeff

> 
> thanks for your help
> matthew bishop
>