xs:include — Inclusion of a W3C XML Schema for the same target namespace.
<xs:include id = xs:ID schemaLocation = xs:anyURI {any attributes with non-schema namespace} > Content: (xs:annotation?) </xs:include>
May be included in: xs:schema
xs:include
performs a straight inclusion of a
schema within another schema that describes the same target
namespace. It is possible, though, to include a schema that
doesn’t specify a target namespace. The included
schema will be treated as adopting the target namespace of its
includer in a schema with a target namespace. This possibility, often
called “chameleon design,” allows
reuse of “transparent” schemas in
the context of different namespaces.
The effect of a schema inclusion is a merge between the two schemas that are consolidated into a global schema. The schema that is included doesn’t need to be a complete schema by itself.
It is not possible to use xs:include
to include a
schema describing another namespace. (xs:import
should be used in this case.)
It is not possible to change the definitions of the included schemas.
(xs:redefine
should be used in this case.)
It is not possible to include a fragment of a schema. (General
purpose inclusion mechanisms such as XInclude
should be used in this case.)