| <xs:schema |
| xmlns:xs="http://www.w3.org/2001/XMLSchema" |
| xmlns:tns="http://xmlbeans.apache.org/2003/09/binding-config" |
| targetNamespace="http://xmlbeans.apache.org/2003/09/binding-config" |
| elementFormDefault="qualified"> |
| |
| <xs:element name="binding-config"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="bindings" type="tns:binding-table"/> |
| <xs:element name="xml-to-pojo" type="tns:mapping-table"/> |
| <xs:element name="xml-to-xmlobj" type="tns:mapping-table"/> |
| <xs:element name="java-to-xml" type="tns:mapping-table"/> |
| <xs:element name="java-to-element" type="tns:mapping-table"/> |
| </xs:sequence> |
| </xs:complexType> |
| </xs:element> |
| |
| |
| <xs:complexType name="binding-table"> |
| <xs:sequence> |
| <xs:element name="binding-type" type="tns:binding-type" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| </xs:complexType> |
| |
| <xs:complexType name="mapping-table"> |
| <xs:sequence> |
| <xs:element name="mapping" type="tns:mapping" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| </xs:complexType> |
| |
| <xs:complexType name="mapping"> |
| <xs:sequence> |
| <xs:element name="xmlcomponent" type="tns:xml-signature"/> |
| <xs:element name="javatype" type="tns:java-class-name"/> |
| </xs:sequence> |
| </xs:complexType> |
| |
| <xs:complexType name="binding-type" abstract="true"> |
| <xs:sequence> |
| <xs:element name="xmlcomponent" type="tns:xml-signature"/> |
| <xs:element name="javatype" type="tns:java-class-name"/> |
| <!-- todo: maybe more java info, e.g., instanceType, is-interface, is-xmlobj etc? --> |
| </xs:sequence> |
| </xs:complexType> |
| |
| <xs:complexType name="simple-type"> |
| <xs:complexContent> |
| <xs:extension base="tns:binding-type"> |
| <xs:sequence> |
| <xs:element name="as-xml" type="tns:xml-signature"/> |
| </xs:sequence> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| |
| <xs:complexType name="simple-document-binding"> |
| <xs:complexContent> |
| <xs:extension base="tns:binding-type"> |
| <xs:sequence> |
| <xs:element name="element-name" type="xs:string"/> |
| </xs:sequence> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| |
| <xs:complexType name="by-name-bean"> |
| <xs:complexContent> |
| <xs:extension base="tns:binding-type"> |
| <xs:choice minOccurs="0" maxOccurs="unbounded"> |
| <xs:element name="qname-property" type="tns:qname-property"/> |
| </xs:choice> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| |
| |
| <xs:complexType name="jaxb-bean"> |
| <xs:complexContent> |
| <xs:extension base="tns:binding-type"> |
| <xs:choice minOccurs="0" maxOccurs="unbounded"> |
| <xs:element name="particle-property" type="tns:particle-property"/> |
| <xs:element name="qname-property" type="tns:qname-property"/> |
| </xs:choice> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| |
| <xs:complexType name="binding-property" abstract="true"> |
| <xs:sequence> |
| <xs:element name="xmlcomponent" type="tns:xml-signature"/> |
| <xs:element name="javatype" type="tns:java-class-name"/> |
| <xs:choice> |
| <xs:sequence> |
| <xs:element name="getter" type="tns:java-property-name"/> |
| <xs:element name="setter" type="tns:java-property-name" minOccurs="0"/> |
| </xs:sequence> |
| <xs:element name="field" type="tns:java-field-name"/> |
| <xs:element name="static" type="tns:java-field-name"/> |
| </xs:choice> |
| <xs:element name="collection" type="tns:java-class-name" minOccurs="0"/> |
| </xs:sequence> |
| </xs:complexType> |
| |
| <xs:complexType name="qname-property"> |
| <xs:complexContent> |
| <xs:extension base="tns:binding-property"> |
| <xs:sequence> |
| <xs:element name="qname" type="xs:QName"/> |
| <xs:element name="attribute" type="xs:boolean" default="false" minOccurs="0"/> |
| <xs:element name="multiple" type="xs:boolean" default="false" minOccurs="0"/> |
| <xs:element name="nillable" type="xs:boolean" default="false" minOccurs="0"/> |
| <xs:element name="optional" type="xs:boolean" default="false" minOccurs="0"/> |
| </xs:sequence> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| |
| <xs:complexType name="particle-property"> |
| <xs:complexContent> |
| <!-- implicit restriction: xmlcomponent must be a particle --> |
| <xs:extension base="tns:binding-property"> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| |
| |
| <xs:simpleType name="java-class-name"> |
| <xs:restriction base="xs:token"> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| <xs:simpleType name="xml-signature"> |
| <xs:restriction base="xs:token"> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| <xs:simpleType name="java-property-name"> |
| <xs:restriction base="xs:token"> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| <xs:simpleType name="java-field-name"> |
| <xs:restriction base="xs:token"> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| |
| </xs:schema> |