Passing DocBook transformation parameters

Having trouble installing Oxygen? Got a bug to report? Post it all here.
Zby
Posts: 36
Joined: Tue Apr 05, 2005 10:52 am

Passing DocBook transformation parameters

Post by Zby »

Hi all,

I noticed that when I want to generate target.db file for olinks used in my documents, only xlstproc can do it, that is, generate target.db if I specify it as an XSL processor.
Other processors, icluding xalan or saxon, seem not to receive the transformation parameter from the scenario settings. This parameter is

Code: Select all

collect.xref.targets=only
Is there anything to fix it or trace the source of the problem? For example, a verbose output or any debug information?

rgds,

-Zby
Zby
Posts: 36
Joined: Tue Apr 05, 2005 10:52 am

Post by Zby »

I forgot to mention the version numbers.
I use Oxygen 5.1 on Windows XP, JRE 1.4.2_08 with DocBook DTD 4.4/XSL 1.69.1
sorin_ristache
Posts: 4141
Joined: Fri Mar 28, 2003 2:12 pm

Post by sorin_ristache »

Hello,

Use the olink.debug parameter for the stylesheet.

Best Regards,
Sorin
Zby
Posts: 36
Joined: Tue Apr 05, 2005 10:52 am

Post by Zby »

Thanks, it is quite a helpful parameter.
Anyways, when Saxon parses the XML file, the output (target.db) is saved to an udefined system directory (in my case, c:\program files\common files\system\mapi\1033\nt). Scenario setting for the file location isn't taken into account (${cfd} and ${cfn} seem not to work).
When the source is processed with Xalan, you have to be tricky about the output location. Do not define output as target.db since it will be overriden by an empty file. Define whatever you want, different than target.db, and you'll get the result.
Strange, isn't it?

-Z
Zby
Posts: 36
Joined: Tue Apr 05, 2005 10:52 am

Post by Zby »

Seems my last question is still unanswered.

Something's changed since I have Windows XP and Oxygen 7 installed on it.

When I use Xalan or XsltProc to create a taget database (target.db), the output file is automatically saved in the current directory, that is, the same where the transformed file is located.
On the other hand, when using Saxon, target.db is saved to Oxygen's installation directory. This is very annoying. Is it a bug or a natural behavior of Saxon? How can I work it around?
I have to use Saxon as a transformer since only this one supports DocBook extensions.

Thanks,
-Zby
sorin_ristache
Posts: 4141
Joined: Fri Mar 28, 2003 2:12 pm

Post by sorin_ristache »

Hello,
Zby wrote:When I use Xalan or XsltProc to create a taget database (target.db), the output file is automatically saved in the current directory, that is, the same where the transformed file is located.
On the other hand, when using Saxon, target.db is saved to Oxygen's installation directory. This is very annoying. Is it a bug or a natural behavior of Saxon? How can I work it around?
Please specify all the parameters of your transform scenario, including the XSLT parameters of the DocBook stylesheet, in order to see what is wrong. Also specify the location of the source XML file and also of the DocBook stylesheet if you do not use the DocBook stylesheets included in <oXygen/>.
Zby wrote:I have to use Saxon as a transformer since only this one supports DocBook extensions.
The set of DocBook XSLT extensions also has a Xalan implementation. It is included in <oXygen/> together with the Saxon version in [oXygen-install-folder]\frameworks\docbook\xsl\extensions. You have to remove the .ext extension of one of the two jars and when you restart <oXygen/> the extensions will be available automatically in your DocBook transforms. As the readme.txt file located in the same folder explains you cannot activate both the Saxon and Xalan extensions at the same time because they are incompatible and cannot coexist in the classpath.

Regards,
Sorin
Post Reply