Mark Wielaard wrote:
This patch adds the RELAX NG pluggable datatypes library to
Classpath. This API, and an implementation of it, will be used by the
W3C XML Schema and RELAX NG JAXP validators currently in development.

Please let me know how you feel about this.

Could you explain a bit more how this will be used. I see
javax.xml.validation.SchemaFactory.newInstance() has a big TODO and I
assume you are working on an implementation of this. For which schema
languages?

I am personally working on a RELAX NG validator. I'm also in contact with someone else who is working on an XML Schema validator, but they haven't signed papers yet (and I haven't seen any code).

And how does using this datatypes library fit into that
implementation?

The validators will use the datatypes library interface in order to look up datatypes by name. The datatype implementation will be responsible for validating just the datatype part of the overall schema.

I have a datatype library implementation in development. It is currently based on the relaxngDatatype API.

We would expose this package (indirectly) which is why I am a bit
hesitant to say "great, go ahead". We could do like kaffe does in case
it merges an external library and rename it to
gnu.xml.org.relaxng.datatype, on the other hand this package has been
stable for years so it is unlikely that a user wants to replace it with
another version.

Arguably, if we change the name we lose any benefit of being able to plug in a 3rd party datatype library implementation. It would be trivial to duplicate just the part of the API we need in a private namespace and use that for our own providers, but we would only be able to use our own implementation.

My primary reason for including this API is that it is the current standard API. I believe that much as with JAXP itself, free software benefits by being able to interface with alternate implementations, to provide more choice and facilitate testing.

I saw you already notified FSF legal of this and they checked the
license to be compatible for inclusion. And adding it to external is the
right thing to do. The only other thing needed would be to update the
top-level LICENSE file when we decide to include this.

Sure
--
犬 Chris Burdess
  "They that can give up essential liberty to obtain a little safety
  deserve neither liberty nor safety." - Benjamin Franklin




Attachment: PGP.sig
Description: This is a digitally signed message part

Reply via email to