[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