[oXygen-user] xsl question

George Cristian Bina
Thu Aug 9 02:10:54 CDT 2007


Hi Timothy,

Great to hear that you got it working!
Here it is a short explanation of what happens for other users.

The key is in the XML parser. oXygen has XInclude processing enabled by 
default. It uses Xerces and sets on the XInclude processing on it, that 
means that when parsing the document the XInclude processing is 
performed automatically and Xerces reports the replacement fragment 
instead of reporting the XInclude elements to whatever component uses 
it, in this case to the Xalan XSLT processor.
When invoked from command line Xalan gets the JAXP default XML parser 
with default options, thus no XInclude is performed and the XInclude 
elements are reported by the parser to Xalan as they are in the document.
It is possible to configure JAXP to use a specific parser, through 
system properties for instance, and Xerces also allows to configure via 
system properties the parser configuration to be used and you can 
specify it to be XInclude aware. If you configure JAXP to return Xerces 
with XInclude processing enabled then Xalan will get that parser and 
will show similar results with what you get in oXygen.
You can see here:
http://www.sagehill.net/docbookxsl/Xinclude.html#JavaXIncludes
an example of configuring JAXP and Xerces via system properties (the 
-D... switches on the command line) to return Xerces with XInclude 
support enabled as the default JAXP parser.

Best Regards,
George
---------------------------------------------------------------------
George Cristian Bina - http://aboutxml.blogspot.com/
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com


Timothy Reaves wrote:
> Kindly disregard; got it figured out.
> 
> 
> On Aug 8, 2007, at 5:35 PM, Timothy Reaves wrote:
> 
>>     I have an issue I'm trying to resolve.  When I perform an xslt
>> transform in the XSLT Debugger, the output is what I expect.  When I
>> execute a transform with the command line:
>>
>> java org.apache.xalan.xslt.Process -in applications\InputTemplate.xml 
>> -xsl
>> configxsl\transformer.xsl -out applications\Output.xml
>>
>> the output is not the same.  In oXygen, I've specified InputTemplate.xml
>> as the XML, transformer.xsl as the XSL (both open in buffers) and Xalan.
>>
>>     The difference I'm seeing is that in the debugger, an XInclude is
>> being included (the output window shows the combined document, and
>> properly transformed.  This is what I want).  The output when run
>> from the command line leaves the XInclude element alone, but
>> otherwise properly transforms the document.
>>
>>     So does oXygen just process in-memory?  Is there a way to see the
>> equivalent command line?  Thanks.
>>
>> _______________________________________________
>> oXygen-user mailing list
>> 
>> http://www.oxygenxml.com/mailman/listinfo/oxygen-user
>>
> 
> _______________________________________________
> oXygen-user mailing list
> 
> http://www.oxygenxml.com/mailman/listinfo/oxygen-user



More information about the oXygen-user mailing list