OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] JSR 206 Java(TM) API for XML Processing (JAXP) 1.3

[ Lists Home | Date Index | Thread Index ]

Norman Walsh wrote:

> On December 16, 2003, the JSR 206 Expert Group agreed to publish a
> first Public Review draft of the Java(TM) API for XML Processing
> (JAXP) 1.3.
> 
> At this week's expert group meeting, it was suggested that our
> publication notice may have been obscured in holiday revelry. :-)
> 
> If you were hitherto unaware of it, I draw your attention to
> http://jsr206-public.dev.java.net/ where you may download the
> specification, JavaDocs, and ancillary materials.
> 
> Public Review is an invitation for...public review. Please let us know
> what you think. The comments list for JSR 206 is
> JSR-206-comments@JCP.org


I posted this yesterday. Is there any way to know if my 
questions/suggestions are getting discussed or implemented (without 
waiting till it is done)?

-----------

I have used URIResolvers quite a bit in my projects. I have also tried 
to make my code use all the popular jaxp XSL processors. It has been a 
sad experience because the way they are implemented differ from each 
other (even xalan and XSLTC differ, as I have explained on the lists 
here in the past). This new spec does little to clarify things.

Under Transformer.getURIResolver() it says:

"Get an object that will be used to resolve URIs used in document(), etc."

What does 'etc' mean?

Under Transformer.setURIResolver it says:

"If the resolver argument is null, the URIResolver value will be 
cleared, and the default behavior will be used."

Does this mean that if a URIResolver was set on the TransformerFactory, 
it would fallback to it? Does this mean you need to call the set method 
with a null to get the default (factory's resolver)?

In the TransformerFactory.getURIResolver it says:

"Get the object that is used by default during the transformation to 
resolve URIs used in document(), xsl:import, or xsl:include."

So if you get your Transformer from a TransformerFactory which one 
resolves xsl:include/import (confused over the use of 'etc' above))?

In the TransformerFactory.setURIResolver it says:

"Set an object that is used by default during the transformation to 
resolve URIs used in xsl:import, or xsl:include."

This makes no mention of document() as mentioned in 
TransformerFactory.getURIResolver.

I think the spec should clearly define the behavior of setURIResolver 
for both interfaces. IMHO it should work like this:

- if a resolver is set on the factory it is used for xsl:import/include
- if a resolver is *not* set on the factory the base URI of the XSL is 
used to resolve the import/include'd XSL relative to the base URI
- if a resolver is set on the transformer it is used for document()
- if a resolver is *not* set on the transformer the base URI of the XSL 
is used to resolve a relative XML

what do you think?

best,
-Rob




> 
> 
>                                         Be seeing you,
>                                           norm
> 
> P.S. Sorry for the dup posting. List problems.
> 






 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS