This is the mail archive of the
docbook-apps@lists.oasis-open.org
mailing list .
Re: Transforming DocBook/XML with jade on Win32
OK, this is it! I have everything working with no errors now. In this
posting I will describe (very) briefly what I did. Later I will make a
more elaborate description and submit it to the FAQ. I use Windoze NT
4.0, DocBook/SGML 4.1, DocBook/XML 4.1.2, DSSSL 1.59 and jade
1.2.1/openjade 1.3. Furthermore I use a set of SGML ISO entities found
at Oasis (http://www.oasis-open.org/cover/ISOEnts.zip).
In the following I have assumed that you have already installed the
packages mentioned above.
Here is my placement of the files:
NOTE: I have moved the XML versions of the ISO entities from the
directory ....\docbook\xml\ent to the directory ....\ISOentities\XML
C:\usr\packages\sgml
+--DocBook
| +--SGML
| | +--4.1
| +--XML
| +--4.1.2
+--DSSSL
| +--ALOC
| | +--IDEAS
| +--DocBook
| +--bin
| +--common
| +--contrib
| | +--html
| | +--imagemap
| | +--print
| | +--renumberinpart
| | +--subdoc
| +--doc
| | +--html
| | +--lib
| | +--print
| | +--testdata
| +--docsrc
| | +--htmlpr
| | +--libref
| | +--printpr
| +--dtds
| | +--dbdsssl
| | +--decls
| | +--html
| | +--imagelib
| | +--olink
| +--frames
| +--html
| +--images
| | +--callouts
| +--lib
| +--olink
| +--print
| +--test
| +--cases
| +--imagelib
| +--xml
+--ISOentities
| +--SGML
| +--XML
+--jade
+--OpenJade
+--bin
+--dsssl
+--jadedoc
| +--images
+--pubtext
I have a centralized catalog in the top SGML directory containing the
lines
CATALOG c:/usr/packages/SGML/jade/catalog
CATALOG c:/usr/packages/SGML/DSSSL/docbook/catalog
CATALOG c:/usr/packages/SGML/DocBook/SGML/4.1/docbook.cat
CATALOG c:/usr/packages/SGML/DocBook/XML/4.1.2/docbook.cat
If you use openjade, you must change the first line to
CATALOG c:/usr/packages/SGML/openjade/dsssl/catalog
I have set the following environment variables:
SGML_CATALOG_FILES=c:/usr/packages/SGML/catalog
SP_CHARSET_FIXED=yes
I have not set the SP_ENCODING variable, since this is only necessary
when using the unicode-encoding (correct?).
I have edited docbook.cat for the XML version: I added the lines
OVERRIDE YES
SYSTEM "urn:x-oasis:docbook-xml-v4.1.2" "docbookx.dtd"
just before the line
PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "docbookx.dtd"
so I can use the method suggested by Norm in his column "If You Can Name
It, You Can Claim It!". See
http://www.arbortext.com/Think_Tank/Norm_s_Column/Issue_three/issue_three.ht
ml
I have edited the public identifiers for the ISO entities from the form
PUBLIC "ISO 8879:1986//ENTITIES Diacritical Marks//EN"
"ent/iso-dia.ent"
to the form
PUBLIC "ISO 8879:1986//ENTITIES Diacritical Marks//EN//XML"
"../../../ISOentities/XML/iso-dia.ent"
Note that two things were changed in the identifier: The path to the
entitity file (use your own, if you don't like it :-) and "...//EN" ->
"...//EN//XML". The last change is what made everything work! If you omit
the "OVERRIDE" directive from above, you must change paths in the file
dbcentx.mod too.
I have also edited docbook.cat for the SGML version of DocBook: I
commented out the DTDDECL directive, since jade doesn't supportit,
and jade is what I use :-):
From
DTDDECL "-//OASIS//DTD DocBook V4.1//EN" "docbook.dcl"
to
-- DTDDECL "-//OASIS//DTD DocBook V4.1//EN" "docbook.dcl" --
I also edited the paths to the entities, e.g.:
From:
PUBLIC "ISO 8879:1986//ENTITIES Diacritical Marks//EN"
"iso-dia.gml"
to
PUBLIC "ISO 8879:1986//ENTITIES Diacritical Marks//EN"
"../../../ISOentities/SGML/ISOdia"
Now my DocBook/XML documents contains the following document type
declaration:
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"urn:x-oasis:docbook-xml-v4.1.2">
When using the XML version of DocBook, I invoke jade like this (line
wrapped, don't try this at home :-)
jade -t rtf -d /path/to/DSSSL/docbook/print/docbook.dsl
/path/to/jade/xml.dcl docname
Everything works perfectly, even when I use national (danish) characters
in the input file.
I hope you can use this, otherwise give me a call^H^H^H^Hmail!
Best regards
Rune Enggaard Jensen
r.e.jensen@bigfoot.com