| <!-- Copyright 2004 The Apache Software Foundation |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. --> |
| <xs:schema |
| xmlns:xs="http://www.w3.org/2001/XMLSchema" |
| xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config" |
| targetNamespace="http://xml.apache.org/xmlbeans/2004/02/xbean/config" |
| elementFormDefault="qualified"> |
| |
| <xs:import namespace="http://www.w3.org/2001/XMLSchema"/> |
| |
| <xs:element name="config"> |
| <xs:annotation> |
| <xs:documentation> |
| The config element is the top-level element for an .xsdconfig file. |
| It contains configuration information that guides the xsd compiler |
| when it generates Java classes. You can specify package names to |
| be used for whole xml namespaces; you can specify class names |
| to use for individual schema types; and you can supply extension |
| interfaces and implementations to be extended by the generated |
| Java classes. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:complexType> |
| <xs:choice minOccurs="0" maxOccurs="unbounded"> |
| |
| <xs:element name="namespace" type="xb:nsconfig"> |
| <xs:annotation> |
| <xs:documentation> |
| Specifies configuration for a namespace. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| |
| <xs:element name="qname" type="xb:qnameconfig"> |
| <xs:annotation> |
| <xs:documentation> |
| Specifies java mapping for a qname. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| |
| </xs:choice> |
| </xs:complexType> |
| </xs:element> |
| |
| <xs:complexType name="nsconfig"> |
| |
| <xs:sequence> |
| |
| <xs:element name="package" type="xs:string" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| The package name to be used for types generated in this |
| namespace. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| |
| <xs:element name="prefix" type="xs:string" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| A prefix to be used to prepend to top-level Java type names |
| generated in this namespace. (The prefix is not used for |
| inner Java type definitions.) |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| |
| <xs:element name="suffix" type="xs:string" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| A suffix to be used to append to top-level Java type names |
| generated in this namespace. (The suffix is not used for |
| inner Java type definitions.) |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| |
| </xs:sequence> |
| |
| <xs:attribute name="uri" type="xs:namespaceList"> |
| <xs:annotation> |
| <xs:documentation> |
| A list of any number of namespace URIs or ##local for the no-namespace, |
| or ##any for all namespaces. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| |
| </xs:complexType> |
| |
| <xs:complexType name="qnameconfig"> |
| <xs:sequence/> |
| <xs:attribute name="name" type="xs:QName"/> |
| <xs:attribute name="javaname" type="xs:string"/> |
| </xs:complexType> |
| |
| <xs:simpleType name="namespaceList"> |
| <xs:annotation> |
| <xs:documentation> |
| A list of namespace URIs, with ##local for no-uri; or ##any for all URIs. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:union> |
| <xs:simpleType> |
| <xs:restriction base="xs:token"> |
| <xs:enumeration value="##any"/> |
| </xs:restriction> |
| </xs:simpleType> |
| <xs:simpleType> |
| <xs:list> |
| <xs:simpleType> |
| <xs:union memberTypes="xs:anyURI"> |
| <xs:simpleType> |
| <xs:restriction base="xs:token"> |
| <xs:enumeration value="##local"/> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:union> |
| </xs:simpleType> |
| </xs:list> |
| </xs:simpleType> |
| </xs:union> |
| </xs:simpleType> |
| |
| </xs:schema> |