Hi abcde,
Your response has prompted me to respond and wind up this thread.
I found out from Sparx that the way to get the schema import lines to work properly consists of two steps:
1. For each package with a namespace, add a Tagged Value called "schemaLocation" and put in the URI of the xsd to find.
2. Build up your XSD structure in EA from the ground up. Start with the lowest level of datatype or element , first, and progressively set up the higher levels by adding references to the lower level elements/types. Use the ellipses (...) to the right of the Type drop-down list and select your element/type form there. This will set up the link which will cause EA to automatically add the xsd:import statement for the xsd that the selected element/type resides in. Note that it uses the schemaLocation tagged value that you created in Step 1.
As for building up the XSD element/type hierarchy, I mimicked the OASIS ebXML standard of having (from lowest level to highest):
* XML Datatypes (eg. int, string)
* Unqualified Datatypes (eg. IdentifierType, NameType)
* Qualified Datatypes (eg. CustomerIdentifierType, ProductNameType)
* Core Components (eg. CustomerIdentifier, ProductName)
* Aggregate Components (eg. Customer, Product)
* Message Payloads (eg. CustomerStatements, ProductCatalog)
To make it easier, it is best to create separate models for each level. That way, you can ensure that you are getting the element/type from the correct place.
As for Step 2, it would be nice to add a schemaLocation to each namespace in the namespace list for a schema. Thus, if it is left empty, no xsd:import is created, and if it is specified, an xsd:import is created. I forgot to ask for this for 7.1 and I figure that it is a bit late now.
HTH,
Rick