On Oct 4, 2005, at 9:55 AM, Sachin Patel wrote:

Are applications containing plans that reference the old namespace still supported since the schema versioning changes went in?

When versioning the schemas, shouldn't just renaming the file and setting the version attribute for the schema be all that is necessary?. Why was it necessary for all the uris to change as well to include the "-1.0" suffix? Could we remove this in HEAD?

I don't think so. I think we need schema namespaces that include the version information in some form.

I bring this up (a little late) because tooling build is broken at the moment due to these uri name changes. EMF uses the namespace uri to generate the package names for the model. EMF doesn't do a great job of processing uri's containing non alpha or numeric characters and now all the generated packaged names contain segments such as "_1". All the code that reference this generated model code no longer compile due to these package renames. Also there are some other problems, such as the generated class names for some of the EMF specific classes aren't named correctly to convention thus making it very error prone and difficult to code against.

XMLBeans solves this problem with a configuration file that lets you map namespaces to packages. An example:

<xb:config xmlns:xb="http://www.bea.com/2002/09/xbean/config";
    >

<xb:namespace uri="http://geronimo.apache.org/xml/ns/j2ee/connector-1.0";>
        <xb:package>org.apache.geronimo.xbeans.geronimo</xb:package>
        <xb:prefix>Ger</xb:prefix>
    </xb:namespace>


</xb:config>

I think namespaces with non-alpha characters are a fact of life and EMF should support them.

As a temporary solution, I will probably need to branch off for m5, and do one of several workarounds, one of which is to have hand modified versions of the schema's and feed those to EMF rather then the original versioned ones. (As long as the old uris are still supported). If not then, I'll have to take a much more painful approach. Either way, would it be possible to revert back to the original uri's in HEAD?

I would rather not. I think that using de-versioned copies of the schemas is your best bet for now, but I really think the only reasonable long term solution is to make EMF more flexible.

thanks
david jencks


Again, my apologies for not catching this sooner.

Sachin






Reply via email to