Frank Budinsky wrote:
If the requirement is just to add new types to a namespace, as opposed to modifying existing types (which is nasty), I don't think it would be hard to add this support.
This is open source, maybe you want to help :-)

Initially, I would suggest adding a new instance variable in XSDHelperImpl - extensibleNamespaces (false by default, but can be set to true) - and then change this line in XSDHelperImpl.define():

        if (ePackage == null || TypeHelperImpl.getBuiltInModels
().contains(ePackage))

to this:

        if (extensibleNamespaces || ePackage == null || TypeHelperImpl.
getBuiltInModels().contains(ePackage))

Then, it's a matter of debugging to make sure that in SDOXSDEcoreBuilder, when a type is requested that already exists, it just uses the existing type and moves on. New types would get added in the usual way.

I think this may be related to, and helped by, the work that will be done in TUSCANY-1085 (not the patch provided by Fuhwei, but the proper fix that needs to be done), which needs to ensure that previously loaded types are found in SDOXSDEcoreBuilder.

Frank.



I'm interested in this support too for some SCA scenarios where a namespace is defined across multiple files, or I when I come across copies of the same XML schema element or type definitions inlined in multiple WSDL files (for example 2 WSDL files defining portType/operations flowing a <customer> element, and the schema defining the <customer> element is inlined in the 2 WSDLs, this is a very very common case as most WSDLs inline their schema definitions).

--
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to