The schema spec requires that all parts of a schema from the target namespace of a given schema be present in that schema document or <include>d. A location is required in the <include> element because there may be more than one. The normal externalSchemaLocation mechanism would not allow multiple items for the same namespace, but the honour-all-schemaLocations feature when set to true allows multiple settings for a given namespace all to be processed. It is not clear from the docs whether the externalSchemaLocations are consulted for <include> processing.
The spec also requires that if a different namespace is referenced from the given schema, that that namespace be explicitly <import>ed. In this case a location is optional; the application is allowed to use an entity resolver or some other mechanism to associate a namespace with its component declarations. If a location is provided for an imported namespace, the normal behavior is for the location to be treated as a hint that the application is free to ignore if it has another source (such as a local copy) for the declarations. This is also important for the sake of security and verifiability of contracts, etc. It is not clear to me how the Xerces honour-all-schemaLocations interacts with this aspect of the spec. Jeff On 12/7/06, Caleandro <[EMAIL PROTECTED]> wrote:
Hi Michael, Yes, I have only the Xerces 2.8.1 of xercesimpl.jar on my machine. Actually the matter is: can I use "external-schemaLocation" to locate all the schemas needed for validation INSTEAD of including some of them in a whole main schema by means of schema- include end/or import? How can I reuse in that way some common portions of schemas of a unique namespace? To do this must I specify honour-all-schemaLocations feature in Xerces, if yes I not yet got it. I would not have to specify include and/or import for common components in all the schemas, but if possible reach the same target from the outside of the schema and message instance (by means of Xerces features and properties). The above questions seems to be linked to another problem; the soap-envelope schema says that some of his elements like body, fault and headers have the processContents attribute set to "lax"; and this is right but, I need to validate a soap message whose parts (particularly the body) are defined in many schemas or namespaces, but Xerces seems to take in count only the first schema one declare. I had to modify the "lax" in "strict" to validate against compound schemas. So I remain with some uncertainty. Thank for your help. Vito --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]