Ce contenu n'est pas disponible dans la langue sélectionnée.
Chapter 32. Basic Data Binding Concepts
Abstract
32.1. Including and Importing Schema Definitions Copier lienLien copié sur presse-papiers!
Overview Copier lienLien copié sur presse-papiers!
include and import schema tags. These tags enable you to insert definitions from external files or resources into the scope of a schema element. The essential difference between including and importing is:
- Including brings in definitions that belong to the same target namespace as the enclosing schema element.
- Importing brings in definitions that belong to a different target namespace from the enclosing schema element.
xsd:include syntax Copier lienLien copié sur presse-papiers!
<include schemaLocation="anyURI" />
Example 32.1. Example of a Schema that Includes Another Schema
<definitions targetNamespace="http://schemas.redhat.com/tests/schema_parser"
xmlns:tns="http://schemas.redhat.com/tests/schema_parser"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<types>
<schema targetNamespace="http://schemas.redhat.com/tests/schema_parser"
xmlns="http://www.w3.org/2001/XMLSchema">
<include schemaLocation="included.xsd"/>
<complexType name="IncludingSequence">
<sequence>
<element name="includedSeq" type="tns:IncludedSequence"/>
</sequence>
</complexType>
</schema>
</types>
...
</definitions>
Example 32.2. Example of an Included Schema
<schema targetNamespace="http://schemas.redhat.com/tests/schema_parser"
xmlns="http://www.w3.org/2001/XMLSchema">
<!-- Included type definitions -->
<complexType name="IncludedSequence">
<sequence>
<element name="varInt" type="int"/>
<element name="varString" type="string"/>
</sequence>
</complexType>
</schema>
xsd:import syntax Copier lienLien copié sur presse-papiers!
<import namespace="namespaceAnyURI"
schemaLocation="schemaAnyURI" />
Example 32.3. Example of a Schema that Imports Another Schema
<definitions targetNamespace="http://schemas.redhat.com/tests/schema_parser"
xmlns:tns="http://schemas.redhat.com/tests/schema_parser"
xmlns:imp="http://schemas.redhat.com/tests/imported_types"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<types>
<schema targetNamespace="http://schemas.redhat.com/tests/schema_parser"
xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://schemas.redhat.com/tests/imported_types"
schemaLocation="included.xsd"/>
<complexType name="IncludingSequence">
<sequence>
<element name="includedSeq" type="imp:IncludedSequence"/>
</sequence>
</complexType>
</schema>
</types>
...
</definitions>
Example 32.4. Example of an Imported Schema
<schema targetNamespace="http://schemas.redhat.com/tests/imported_types"
xmlns="http://www.w3.org/2001/XMLSchema">
<!-- Included type definitions -->
<complexType name="IncludedSequence">
<sequence>
<element name="varInt" type="int"/>
<element name="varString" type="string"/>
</sequence>
</complexType>
</schema>
Using non-referenced schema documents Copier lienLien copié sur presse-papiers!
- Convert the schema document to a WSDL document using the xsd2wsdl tool.
- Generate Java for the types using the wsdl2java tool on the generated WSDL document.ImportantYou will get a warning from the wsdl2java tool stating that the WSDL document does not define any services. You can ignore this warning.
- Add the generated classes to your classpath.