Jean Jordaan wrote: > > As mentioned before, I'm having some issues with modular documents. > While I can't get convertdoc to run, I'm using xmlto > http://cyberelk.net/tim/software/xmlto/ > to process the DocBook to HTML. xmlto uses xsltproc. > > (1) When xi:including elements in the same document, XXE writes e.g.:: > > <xi:include href="" xmlns:xi="http://www.w3.org/2001/XInclude" > xpointer="acronyms" /> > > This makes xsltproc complain: "element include: XInclude error : > detected a recursion in ../glossary.xml". It drops the offending > directive. > > This works:: > > <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" > xpointer="acronyms" />
I've already answered this question: xmlto has a bug. See my preceding email. > (2) The 'acronyms' id refers to a <glossdiv> element, which itself > contains includes. While xsltproc does resolve those includes in the > original glossdiv occurence, it doesn't resolve them when they've been > included. Here's a simplified snippet to illustrate:: > > <glossary id="manual"> > <glossdiv>...</glossdiv> > <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" > xpointer="acronyms" /> > </glossary> > > <glossary> > <glossdiv id="acronyms"> > <glossentry> > <glossterm>...</glossterm> > <glossdef> > Some text .. <xi:include href="terms.xml" > xmlns:xi="http://www.w3.org/2001/XInclude" > xpointer="element(operator)" /> > </glossdef> > </glossentry> > </glossdiv> > </glossary> > > When I process this, 'operator' is only resolved once. In the glossary > with id 'manual', xsltproc reports: "No template matches xi:include in > para.", and generates this HTML:: > > <font color="red"><xi:include></xi:include></font> > > Is this an issue with xsltproc, or with the DocBook stylesheets? This is a problem with xsltproc (and xmllint, etc), which does not properly implement XInclude. > It doens't look as if XXE is affected by this issue, is that correct? Correct. Also note that the convertdoc utility and the Convert menus found in Professional Edition allow to convert complex modular documents without any problem.

