This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: The need for a liaison implementation for Xalan to use a non-Xerces XML parser?


Brian --

I'm no expert in this area but since no one else has answered for so
long, I'll just jump in and give you my answers and let others add or
subtract as they see fit.

I think that most of your questions can be answered if you look at the
Javadoc and source code for XercesLiaison.  The liaison class is
designed to provide functions that the SAX and DOM APIs do not provide
by themselves but that rightly belong with the parser, at least from
Xalan's point of view.  For example, getParserDescription() returns a
string describing the parser.  There are no standards that define such a
method so Xalan placed it in the liaison.  If you look at the other
methods listed you'll see what I mean.

The methods in a liaison class are implemented with pretty small amounts
of code.  So, I would say, in answer to your point (1) that JAXP (and
Xerces, for that matter) just don't define some of the methods that
Xalan would like to have available from a parser.  Remember that Xalan
is using a parser implementation to create the output as well.

In answer to (2) and (3), this failure is not due to the differences in
the DOM level.  These are functions not defined by either DOM and which
are really not part of a Document Object Model but are "properties" or
"methods" of the parser itself.

As far as (4), Mike Kay's SAXON allows you to specify the parser you'd
like to use in a  ParserManager.properties file simply by specifying the
name of the parser class.  I think this will work with JAXP out of the
box.

HTH,
Gary


Brian Young wrote:
>...
> 1)  Is my assumption that JAXP is meant to be the standard API between an XML parser and an XSL processor correct?  How does JAXP v1.0 fail to meet this goal?
> 2)  Is the failure of the JAXP reference implementation to work with Xalan (without coding a liaison class) due not to the JAXP interface but rather to differences in the DOM (level 1 vs. 2)?
> 3)  Is the difference in the DOM the sole reason why a liaison must be used?  In other words, were the next version of the JAXP reference implementation to support level 2 *or* I decided to use SAX (since both support 1.0) would it then "just work"?
> 4)  Are there any XSL processors out there that "just work" with the JAXP reference implementation?  I know that there is a Sun XSLT compiler, and I *imagine* it uses JAXP reference, but it is not production yet.
> 
> Insight is really appreciated.  I'm learning, but not fast enough (and don't have the industry-wide view I need) to grasp this stuff as quick as I'd like to.


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]