Tony,
Thanks for performing loading test on TurboXML.
For the discussion, the original DataTypes.xsd is as follows:
---------------------------------------------------------------------
<xsd:schema version="1:0-beta"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:oasis:names:tc:ubl:DataTypes:1:0-beta"
xmlns="urn:oasis:names:tc:ubl:DataTypes:1:0-beta"
xmlns:dt="urn:oasis:names:tc:ubl:DataTypes:1:0-beta"
xmlns:ccts="urn:oasis:names:tc:ubl:CoreComponentParameters:1:0-beta"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xsd:import
namespace="urn:oasis:names:tc:ubl:CoreComponentParameters:1:0-beta"
schemaLocation="UBL-CoreComponentParameters-1.0-beta.xsd"/>
<xsd:import
namespace="urn:oasis:names:tc:ubl:RepresentationTerms:1:0-beta"
schemaLocation="UBL-RepresentationTerms-1.0-beta.xsd"/>
</xsd:schema>
---------------------------------------------------------------------
In a singularity case like DataTypes.xsd, where the <xsd:schema>
element has no content element, it is probably alright to warn the
user about namespaced import like the 2nd import statement on
RepresentationTerms, whose namespace has not been declared with
a prefix in the <xsd:schema> element.
However, it is also technically incorrect to warn because the
containing schema *may* (not must) use the namespaced components
defined in the imported schema. And this is exactly what has
happened here. In future, when we do need to define in this
DataTypes.xsd schema components defined in RepresentationTerms.xsd,
we'd sooner or later need to declare something like
xmlns:rt="urn:oasis:names:tc:ubl:RepresentationTerms:1:0-beta"
in the <xsd:schema> via the prefix "rt" in order to refer to
RepresentationTerms' elements and types. But for now, there is no
such need, and so we don't need to define the rt prefix.
If we define prefix "rt" now (as we did for prefix "dt"), some
other not-necessarily-incorrectly-behaving schema parsers may
also generate friendly warnings about redundant prefixes that
are defined but not used.
But for the sake of consistency and since Tony went through
the trouble to identify this special case, I'd be happy to
insert the "xmlns:rt" definition into the <xsd:schema> element.
The modified DataTypes.xsd would then look as follows:
---------------------------------------------------------------------
<xsd:schema version="1:0-beta"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:oasis:names:tc:ubl:DataTypes:1:0-beta"
xmlns="urn:oasis:names:tc:ubl:DataTypes:1:0-beta"
xmlns:dt="urn:oasis:names:tc:ubl:DataTypes:1:0-beta"
xmlns:rt="urn:oasis:names:tc:ubl:RepresentationTerms:1:0-beta"
xmlns:ccts="urn:oasis:names:tc:ubl:CoreComponentParameters:1:0-beta"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xsd:import
namespace="urn:oasis:names:tc:ubl:CoreComponentParameters:1:0-beta"
schemaLocation="UBL-CoreComponentParameters-1.0-beta.xsd"/>
<xsd:import
namespace="urn:oasis:names:tc:ubl:RepresentationTerms:1:0-beta"
schemaLocation="UBL-RepresentationTerms-1.0-beta.xsd"/>
</xsd:schema>
---------------------------------------------------------------------
I'll wait for another probably 12hrs or so just to see if there're
more schema validating users/helpers out there who'd report other
problems. After that, I'd send out another set of 1.0-beta schemas
with this modification in DataTypes.xsd.
Thanks again, Tony.
Best Regards,
Chin Chee-Kai
SoftML
Tel: +65-6820-2979
Fax: +65-6743-7875
Email:
http://SoftML.Net/