[XML-SIG] Replacing a Java tool-chain with 4Suite?

Uche Ogbuji uche.ogbuji@fourthought.com
Wed, 15 Jan 2003 19:23:25 -0700

> Mike C. Fletcher wrote at 2003-1-15 08:29 -0500:
>  > I've got a whole mess (word chosen deliberately :) ) of DocBook-XML 
>  > documents (or more properly, document fragments) which comprise the 
>  > PyOpenGL manual.  This set of files was originally converted to pdf, 
>  > html-help, latex, and html by a Java toolchain (which is no longer 
>  > functional, for reasons I haven't yet tracked down) including:
>  > 
>  > 	Saxon
>  > 	DocBook XSL
>  > 	Sun's Entity Resolver
>  > 	Oasis' Docbook Catalog
>  > 	WebEQ (for converting mathml to png)
>  > 
>  > Now, as far as I can see, 4Suite's 4xslt is an XSL processor similar to 
>  > Saxon, with built-in entity resolution.  The XSL distro is just data, as 
>  > is the Catalog (and the catalog's just for entity resolution anyway 
>  > AFAICS). So, I would expect that I could just run 4xslt across the xml 
>  > and xsl files and get a transformed file.
> About 18 months ago, I switched from 4Suite to Saxon, because:
>   *  4Suite processed DocBook/XML documents with Norman Walsh's XSLT
>      stylesheets more than 10 times slower than Saxon.
>   *  It took more than 5 times as much memory
>   *  There have been many XSLT bugs in 4Suite leading to wrong
>      rendering of the Docbook style sheets.
>      Despite problem reports the bugs were not fixed.
> Time had passed and 4Suite is now surely better than 18 months ago.

It certainly is.  It's still a bit slower and uses about twice as much memory 
as Saxon on the docbook stylesheets (it beats Saxon on most other tasks I and 
others have tested it on).  Jeremy, however, is preparing to check in changes 
that should help significantly with that.

Having recently used 4Suite/Docbook in production systems, and fixed bugs that 
came up, I'm pretty confident that there are not more conformance bugs in 
4Suite itself that are exposed by common uses of the Docbook stylesheet.

> Nevertheless, you should make some checks whether it is now up to
> your tasks.

>From his message, this is exactly what Mike was doing.  He has posted a 
message to the Docbook list to see whether the errors he saw when he enables 
validation are Docbook DTD or xmlproc errors (4Suite uses xmlproc in 
validating mode).  This is a useful service to all.  Mike does say that he 
doesn't need the validation flag, so he can probably use 4Suite with no 
problem.  As Daniel pointed out, he can also use libxslt/Python with no 
problem.  I'm sure Brian and co will point out that he can use pyana with no 
problem.  In no case is he compelled to use Saxon.

Uche Ogbuji                                    Fourthought, Inc.
http://uche.ogbuji.net    http://4Suite.org    http://fourthought.com
Python Generators + DOM - http://www.xml.com/pub/a/2003/01/08/py-xml.html
4Suite Repository Features - https://www6.software.ibm.com/reg/devworks/dw-x4suite5-i/
XML class warfare - http://www.adtmag.com/article.asp?id=6965
MusicBrainz  metadata - http://www-106.ibm.com/developerworks/xml/library/x-think14.html