This is the mail archive of the
docbook-apps@lists.oasis-open.org
mailing list .
Re: [docbook-apps] olinksdb.xml profile/conditional conflicts
On Wed, Feb 23, 2005 at 11:18:37PM -0800, Bob Stayton wrote:
> Hi Jens,
> You are close, but you can't put both sets of target data under the same
> <document> element. It creates duplicate targetptr's for your elements.
>
> In general, a separate target database document is required for each
> profile, and for HTML vs. PDF. In your case, the two profiles coincide with
> the two output formats. So you need to create two separate target database
> documents, one for HTML and one for PDF, and put one of those entities in
> each <document targetdoc="TechSpec">. Then you specify the appropriate
> target database document as a parameter on the command line when you process
> each document. Then each version has the right collection of targets to
> work with, and there is no ambiguity.
Bob,
As you can see from my Make targets below, I am creating both an html.profile.db
and pdf.profile.db document using the targets.filename stringparam.
I've tried changing my olinksdb.xml to look like this (which is what I *think*
you mean by the above):
<targetset>
<sitemap>
<dir name="doc">
<document targetdoc="TechSpec">
&tech_spec_pdf;
</document>
<document targetdoc="TechSpec">
&tech_spec_html;
</document>
</dir>
</sitemap>
</targetset>
but it doesn't seem to make any difference, I get the error
../olinksdb.xml:12: error: Failure to process entity tech_spec_pdf &tech_spec_pdf;
When I make the html, it's still looking for the pdf.
What do you reckon?
Thanks,
Jens
The Make targets:
tech_spec_html: tech_spec.xml
cd tech_spec; \
xsltproc --output temp.html.xml \
--xinclude \
--stringparam profile.condition html \
/usr/share/xml/docbook/stylesheet/nwalsh/profiling/profile.xsl \
../tech_spec.xml; \
xsltproc \
--stringparam collect.xref.targets "yes" \
--stringparam targets.filename "html.profile.db" \
--stringparam target.database.document "../olinksdb.xml" \
--stringparam current.docid "TechSpec" \
--stringparam use.id.as.filename 1 \
--stringparam spacing.paras 1 \
--stringparam make.valid.html 1 \
--stringparam chunker.output.indent yes \
/usr/share/xml/docbook/stylesheet/nwalsh/html/chunk.xsl \
temp.html.xml;
tech_spec.pdf: tech_spec.xml
cd tech_spec; \
xsltproc --output temp.pdf.xml \
--xinclude \
--stringparam profile.condition pdf \
/usr/share/xml/docbook/stylesheet/nwalsh/profiling/profile.xsl \
../tech_spec.xml; \
xsltproc \
--output tech_spec.fo \
--stringparam collect.xref.targets "yes" \
--stringparam targets.filename "pdf.profile.db" \
--stringparam target.database.document "../olinksdb.xml" \
--stringparam current.docid "TechSpec" \
--stringparam paper.type A4 \
/usr/share/xml/docbook/stylesheet/nwalsh/fo/docbook.xsl temp.pdf.xml; \
fop tech_spec.fo tech_spec.pdf;