OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Am I being really dumb? Can't get Norman Walsh's XSLT for DocBook towork...




Not sure which of the three different products is at fault and how here,
so I'll try XML-DEV before going to the people who made XT, Xalan, and
Norman Walsh himself, not that all of those people aren't on this list
anyway...

Let me set the scene. 

Version 1.29 of the DocBook XSLT
Stylesheets: http://nwalsh.com/docbook/xsl/dbx129.zip

XT version 19991105

Alrighty? Trying a sample document from the stylesheet distribution
yields:

java -Dcom.jclark.xsl.sax.parser=com.jclark.xml.sax.Driver com.jclark.xsl.sax.Driver test/book.xml html/docbook.xsl /tmp/book.html
file:/usr/local/share/docbook/html/index.xsl:273: no such function: key

"no such function: key". Odd. The relevant line of the file it names in
the error reads:

  <xsl:variable name="terms" select="//indexterm[count(.|key('letter',
                                     substring(&primary;, 1, 1))[1]) = 1]"/>

I then tried with Xalan 1.2 (Java), which worked OK unless I tried to use
a <!DOCTYPE ...> to refer to a DTD (which is required to make id
attributes work, which is kinda handy in DocBook), in which case I either
get "out of memory" or the enigmatic:

xalan domain-conf.xml /usr/local/share/docbook/html/docbook.xsl domain-conf.html
========= Parsing file:/usr/local/share/docbook/html/docbook.xsl ==========
Parse of file:/usr/local/share/docbook/html/docbook.xsl took 61293 milliseconds
========= Parsing file:/guest/warhead/domain-conf/docs/domain-conf.xml ==========
file:/usr/local/share/docbook-xml-dtd-3.1.7/docbookx.dtd; Line 19; Column 9
XSL Error: Could not parse
file:/guest/warhead/domain-conf/docs/domain-conf.xml document!
XSLT: Recursive reference "%dbnotn;". (Reference
path: (top-level)-%dbhier;-%dbnotn;-%dbnotn;)
Xalan: was not successful.
XSLProcessor: done

...after waiting a whole minute ("61293 milliseconds") for it to parse the
XSL!

(That's a V3.1.7 DocBk XML DTD. "-//Norman Walsh//DTD DocBk XML
V3.1.7//EN"; same happens with a "-//OASIS//DTD DocBook XML V4.1.2//EN"
DTD.)

I've tried finding this circular reference, but nothing in the DTD seems
to actually make a circular reference. I've tried the usual tricks of
reording stuff and the like to see if I can get any handle on what it's
talking about to no avail.

I'd like to move over to using XSLT instead of DSSSL for my DocBook
processing, but I seem to be cursed when it comes to getting the tools to
work :-(

Anyone have any idea what's going on here?

TIA,

ABS

-- 
                               Alaric B. Snell
 http://www.alaric-snell.com/  http://RFC.net/  http://www.warhead.org.uk/
   Any sufficiently advanced technology can be emulated in software