<?xml version="1.0" encoding="UTF-8"?>
<schema
  elementFormDefault="qualified"
  targetNamespace="http://www.jbind.org/examples/soap11"
  xmlns="http://www.w3.org/2001/XMLSchema"
  xmlns:jb="http://www.jbind.org" 
  xmlns:tns="http://www.jbind.org/examples/soap11"
  xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
  jb:package="org.jbind.example.soap.soap11"
  jb:factoryType="Factory"
>

  <import namespace="http://schemas.xmlsoap.org/soap/envelope/" schemaLocation="soap-envelope.xsd"/>

  <complexType name="Factory" jb:creator="normal">
    <sequence>
      <element ref="env:Envelope"/>
    </sequence>
  </complexType>

  <complexType name="Client" jb:hasBehaviour="true">
    <sequence>
      <element ref="tns:envelopeHandler"/>
    </sequence>
    <attribute name="host" type="anyURI" use="required"/>
    <attribute name="port" type="unsignedShort" use="required"/>
    <attribute name="file" type="string" use="required"/>
    <attribute name="action" type="string" use="required"/>
  </complexType>

  <complexType name="EnvelopeHandler" jb:hasBehaviour="true" abstract="true"/>
    
  <element name="client" type="tns:Client"/>
  <element name="envelopeHandler" type="tns:EnvelopeHandler"/>
  
</schema>
