You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by ru...@apache.org on 2010/05/15 20:17:35 UTC

svn commit: r944693 - in /synapse/trunk/java/repository/schema: ./ misc/ wsdl/

Author: ruwan
Date: Sat May 15 18:17:35 2010
New Revision: 944693

URL: http://svn.apache.org/viewvc?rev=944693&view=rev
Log:
synapse configuration schema - at a very early stage / need a lot more work for this to be completed :-)

Added:
    synapse/trunk/java/repository/schema/
    synapse/trunk/java/repository/schema/endpoint.xsd
    synapse/trunk/java/repository/schema/event_source.xsd
    synapse/trunk/java/repository/schema/local_entry.xsd
    synapse/trunk/java/repository/schema/misc/
    synapse/trunk/java/repository/schema/misc/common.xsd
    synapse/trunk/java/repository/schema/misc/target.xsd
    synapse/trunk/java/repository/schema/priority_executor.xsd
    synapse/trunk/java/repository/schema/proxy.xsd
    synapse/trunk/java/repository/schema/registry.xsd
    synapse/trunk/java/repository/schema/sequence.xsd
    synapse/trunk/java/repository/schema/synapse_config.xsd
    synapse/trunk/java/repository/schema/task.xsd
    synapse/trunk/java/repository/schema/wsdl/
    synapse/trunk/java/repository/schema/wsdl/wsdl11.xsd
    synapse/trunk/java/repository/schema/wsdl/wsdl20.xsd

Added: synapse/trunk/java/repository/schema/endpoint.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/endpoint.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/endpoint.xsd (added)
+++ synapse/trunk/java/repository/schema/endpoint.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:element name="endpoint" type="NamedEndpoint">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Endpoint description
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="NamedEndpoint">
+        <xs:annotation>
+
+        </xs:annotation>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/event_source.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/event_source.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/event_source.xsd (added)
+++ synapse/trunk/java/repository/schema/event_source.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:element name="eventSource" type="EventSource">
+        <xs:annotation>
+            <xs:documentation source="description">
+                EventSource description
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="EventSource">
+        <xs:annotation>
+
+        </xs:annotation>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/local_entry.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/local_entry.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/local_entry.xsd (added)
+++ synapse/trunk/java/repository/schema/local_entry.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:element name="localEntry" type="LocalEntry">
+        <xs:annotation>
+            <xs:documentation source="description">
+                LocalEntry description
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="LocalEntry">
+        <xs:annotation>
+
+        </xs:annotation>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/misc/common.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/misc/common.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/misc/common.xsd (added)
+++ synapse/trunk/java/repository/schema/misc/common.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:element name="resource">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Resources like XSDs to be provided to the WSDL and so forth
+            </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+            <xs:attribute name="location" type="xs:anyURI" use="required"/>
+            <xs:attribute name="key" type="xs:string" use="required"/>
+        </xs:complexType>
+    </xs:element>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/misc/target.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/misc/target.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/misc/target.xsd (added)
+++ synapse/trunk/java/repository/schema/misc/target.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:element name="target" type="Target">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Target description
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="Target">
+        <xs:annotation>
+
+        </xs:annotation>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/priority_executor.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/priority_executor.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/priority_executor.xsd (added)
+++ synapse/trunk/java/repository/schema/priority_executor.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:element name="priorityExecutor" type="PriorityExecutor">
+        <xs:annotation>
+            <xs:documentation source="description">
+                PriorityExecutor description
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="PriorityExecutor">
+        <xs:annotation>
+
+        </xs:annotation>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/proxy.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/proxy.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/proxy.xsd (added)
+++ synapse/trunk/java/repository/schema/proxy.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdl20="http://www.w3.org/ns/wsdl">
+
+    <xs:include schemaLocation="misc/target.xsd"/>
+    <xs:include schemaLocation="misc/common.xsd"/>
+    <xs:import namespace="http://schemas.xmlsoap.org/wsdl/" schemaLocation="wsdl/wsdl11.xsd"/>
+    <xs:import namespace="http://www.w3.org/ns/wsdl" schemaLocation="wsdl/wsdl20.xsd"/>
+
+    <xs:element name="proxy" type="Proxy">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Proxy Service element in the Synapse Configuration
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="Proxy">
+        <xs:annotation>
+            <xs:documentation source="description">
+                This is the element type representing the proxy services
+                in the Synapse Configuration
+            </xs:documentation>
+        </xs:annotation>
+        <xs:all>
+            <xs:element ref="target" minOccurs="1" maxOccurs="1"/>
+            <xs:element name="publishWSDL" minOccurs="0" maxOccurs="1">
+                <xs:annotation>
+                    <xs:documentation source="description">
+                        This is used to specify the WSDL of the proxy
+                    </xs:documentation>
+                </xs:annotation>
+                <xs:complexType>
+                    <!-- TODO : this needs to be altered in the configuration to support correctly -->
+                    <xs:sequence>
+                        <xs:group ref="inlineWsdl" minOccurs="0" maxOccurs="1"/>
+                        <xs:element ref="resource" minOccurs="0" maxOccurs="unbounded"/>
+                    </xs:sequence>
+                    <xs:attribute name="uri" type="xs:anyURI" use="optional"/>
+                    <xs:attribute name="key" type="xs:string" use="optional"/>
+                </xs:complexType>
+            </xs:element>
+            <xs:element name="parameter" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation source="description">
+                        These are the parameters of the proxy service
+                    </xs:documentation>
+                </xs:annotation>
+                <xs:complexType>
+                    <xs:attribute name="name" type="xs:string"/>
+                </xs:complexType>
+            </xs:element>
+        </xs:all>
+        <xs:attribute name="name" use="required"/>
+        <xs:attribute name="transports" use="optional"/>
+        <xs:attribute name="pinnedServers" use="optional"/>
+    </xs:complexType>
+
+    <xs:group name="inlineWsdl">
+        <xs:choice>
+            <xs:element ref="wsdl11:definitions" minOccurs="0" maxOccurs="1"/>
+            <xs:element ref="wsdl20:description" minOccurs="0" maxOccurs="1"/>
+        </xs:choice>
+    </xs:group>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/registry.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/registry.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/registry.xsd (added)
+++ synapse/trunk/java/repository/schema/registry.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:element name="registry" type="Registry">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Registry description
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="Registry">
+        <xs:annotation>
+
+        </xs:annotation>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/sequence.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/sequence.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/sequence.xsd (added)
+++ synapse/trunk/java/repository/schema/sequence.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:element name="sequence" type="NamedSequence">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Sequence description
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="NamedSequence">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Sequence contains a set of mediators
+            </xs:documentation>
+        </xs:annotation>
+        <xs:attribute name="name" use="required"/>
+    </xs:complexType>
+    
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/synapse_config.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/synapse_config.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/synapse_config.xsd (added)
+++ synapse/trunk/java/repository/schema/synapse_config.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:include schemaLocation="sequence.xsd"/>
+    <xs:include schemaLocation="endpoint.xsd"/>
+    <xs:include schemaLocation="proxy.xsd"/>
+    <xs:include schemaLocation="event_source.xsd"/>
+    <xs:include schemaLocation="local_entry.xsd"/>
+    <xs:include schemaLocation="registry.xsd"/>
+    <xs:include schemaLocation="task.xsd"/>
+    <xs:include schemaLocation="priority_executor.xsd"/>
+
+    <xs:element name="definitions" type="Definition">
+        <xs:annotation>
+            <xs:documentation source="description">
+                The complete Synapse Configuration is enclosed within the &lt;definitions&gt;
+                element.
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="Definition">
+        <xs:annotation>
+            <xs:documentation source="description">
+                This complex type denotes the top level elements that can be there in a
+                &lt;definitions&gt; tag, basically all top level constructs of the synapse
+                configuration
+            </xs:documentation>
+        </xs:annotation>
+        <xs:all>
+            <xs:element ref="sequence" minOccurs="0"/>
+            <xs:element ref="localEntry" minOccurs="0"/>
+            <xs:element ref="endpoint" minOccurs="0"/>
+            <xs:element ref="proxy" minOccurs="0"/>
+            <xs:element ref="eventSource" minOccurs="0"/>
+            <xs:element ref="task" minOccurs="0"/>
+            <xs:element ref="priorityExecutor" minOccurs="0"/>
+            <xs:element ref="registry" minOccurs="0" maxOccurs="1"/>
+        </xs:all>
+    </xs:complexType>
+    
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/task.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/task.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/task.xsd (added)
+++ synapse/trunk/java/repository/schema/task.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you 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" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:element name="task" type="Task">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Task description
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="Task">
+        <xs:annotation>
+
+        </xs:annotation>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/wsdl/wsdl11.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/wsdl/wsdl11.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/wsdl/wsdl11.xsd (added)
+++ synapse/trunk/java/repository/schema/wsdl/wsdl11.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,310 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+
+Copyright 2001 - 2005, International Business Machines Corporation and Microsoft Corporation
+All Rights Reserved
+
+License for WSDL Schema Files
+
+The Authors grant permission to copy and distribute the WSDL Schema
+Files in any medium without fee or royalty as long as this notice and
+license are distributed with them.  The originals of these files can
+be located at:
+
+http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd
+
+THESE SCHEMA FILES ARE PROVIDED "AS IS," AND THE AUTHORS MAKE NO REPRESENTATIONS
+OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THESE FILES, INCLUDING, BUT NOT
+LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
+NON-INFRINGEMENT OR TITLE.  THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT,
+INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR
+RELATING TO ANY USE OR DISTRIBUTION OF THESE FILES.
+
+The name and trademarks of the Authors may NOT be used in any manner,
+including advertising or publicity pertaining to these files or any program
+or service that uses these files, written prior permission.  Title to copyright
+in these files will at all times remain with the Authors.
+
+No other rights are granted by implication, estoppel or otherwise.
+
+
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+           targetNamespace="http://schemas.xmlsoap.org/wsdl/"
+           elementFormDefault="qualified" >
+
+  <xs:complexType mixed="true" name="tDocumentation" >
+    <xs:sequence>
+      <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax" />
+    </xs:sequence>
+  </xs:complexType>
+
+  <xs:complexType name="tDocumented" >
+    <xs:annotation>
+      <xs:documentation>
+      This type is extended by  component types to allow them to be documented
+      </xs:documentation>
+    </xs:annotation>
+    <xs:sequence>
+      <xs:element name="documentation" type="wsdl:tDocumentation" minOccurs="0" />
+    </xs:sequence>
+  </xs:complexType>
+
+  <xs:complexType name="tExtensibleAttributesDocumented" abstract="true" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tDocumented" >
+        <xs:annotation>
+          <xs:documentation>
+          This type is extended by component types to allow attributes from other namespaces to be added.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:anyAttribute namespace="##other" processContents="lax" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tExtensibleDocumented" abstract="true" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tDocumented" >
+        <xs:annotation>
+          <xs:documentation>
+          This type is extended by component types to allow elements from other namespaces to be added.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+          <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
+        </xs:sequence>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:element name="definitions" type="wsdl:tDefinitions" >
+    <xs:key name="message" >
+      <xs:selector xpath="wsdl:message" />
+      <xs:field xpath="@name" />
+    </xs:key>
+    <xs:key name="portType" >
+      <xs:selector xpath="wsdl:portType" />
+      <xs:field xpath="@name" />
+    </xs:key>
+    <xs:key name="binding" >
+      <xs:selector xpath="wsdl:binding" />
+      <xs:field xpath="@name" />
+    </xs:key>
+    <xs:key name="service" >
+      <xs:selector xpath="wsdl:service" />
+      <xs:field xpath="@name" />
+    </xs:key>
+    <xs:key name="import" >
+      <xs:selector xpath="wsdl:import" />
+      <xs:field xpath="@namespace" />
+    </xs:key>
+  </xs:element>
+
+  <xs:group name="anyTopLevelOptionalElement" >
+    <xs:annotation>
+      <xs:documentation>
+      Any top level optional element allowed to appear more then once - any child of definitions element except wsdl:types. Any extensibility element is allowed in any place.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:choice>
+      <xs:element name="import" type="wsdl:tImport" />
+      <xs:element name="types" type="wsdl:tTypes" />
+      <xs:element name="message"  type="wsdl:tMessage" >
+        <xs:unique name="part" >
+          <xs:selector xpath="wsdl:part" />
+          <xs:field xpath="@name" />
+        </xs:unique>
+      </xs:element>
+      <xs:element name="portType" type="wsdl:tPortType" />
+      <xs:element name="binding"  type="wsdl:tBinding" />
+      <xs:element name="service"  type="wsdl:tService" >
+        <xs:unique name="port" >
+          <xs:selector xpath="wsdl:port" />
+          <xs:field xpath="@name" />
+        </xs:unique>
+	  </xs:element>
+    </xs:choice>
+  </xs:group>
+
+  <xs:complexType name="tDefinitions" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" >
+        <xs:sequence>
+          <xs:group ref="wsdl:anyTopLevelOptionalElement"  minOccurs="0"   maxOccurs="unbounded" />
+        </xs:sequence>
+        <xs:attribute name="targetNamespace" type="xs:anyURI" use="optional" />
+        <xs:attribute name="name" type="xs:NCName" use="optional" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tImport" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+        <xs:attribute name="namespace" type="xs:anyURI" use="required" />
+        <xs:attribute name="location" type="xs:anyURI" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tTypes" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" />
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tMessage" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" >
+        <xs:sequence>
+          <xs:element name="part" type="wsdl:tPart" minOccurs="0" maxOccurs="unbounded" />
+        </xs:sequence>
+        <xs:attribute name="name" type="xs:NCName" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tPart" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+        <xs:attribute name="name" type="xs:NCName" use="required" />
+        <xs:attribute name="element" type="xs:QName" use="optional" />
+        <xs:attribute name="type" type="xs:QName" use="optional" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tPortType" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+        <xs:sequence>
+          <xs:element name="operation" type="wsdl:tOperation" minOccurs="0" maxOccurs="unbounded" />
+        </xs:sequence>
+        <xs:attribute name="name" type="xs:NCName" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tOperation" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" >
+	    <xs:sequence>
+          <xs:choice>
+            <xs:group ref="wsdl:request-response-or-one-way-operation" />
+            <xs:group ref="wsdl:solicit-response-or-notification-operation" />
+          </xs:choice>
+        </xs:sequence>
+        <xs:attribute name="name" type="xs:NCName" use="required" />
+        <xs:attribute name="parameterOrder" type="xs:NMTOKENS" use="optional" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:group name="request-response-or-one-way-operation" >
+    <xs:sequence>
+      <xs:element name="input" type="wsdl:tParam" />
+	  <xs:sequence minOccurs='0' >
+	    <xs:element name="output" type="wsdl:tParam" />
+		<xs:element name="fault" type="wsdl:tFault" minOccurs="0" maxOccurs="unbounded" />
+      </xs:sequence>
+    </xs:sequence>
+  </xs:group>
+
+  <xs:group name="solicit-response-or-notification-operation" >
+    <xs:sequence>
+      <xs:element name="output" type="wsdl:tParam" />
+	  <xs:sequence minOccurs='0' >
+	    <xs:element name="input" type="wsdl:tParam" />
+		<xs:element name="fault" type="wsdl:tFault" minOccurs="0" maxOccurs="unbounded" />
+	  </xs:sequence>
+    </xs:sequence>
+  </xs:group>
+
+  <xs:complexType name="tParam" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+        <xs:attribute name="name" type="xs:NCName" use="optional" />
+        <xs:attribute name="message" type="xs:QName" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tFault" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+        <xs:attribute name="name" type="xs:NCName"  use="required" />
+        <xs:attribute name="message" type="xs:QName" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tBinding" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" >
+        <xs:sequence>
+          <xs:element name="operation" type="wsdl:tBindingOperation" minOccurs="0" maxOccurs="unbounded" />
+        </xs:sequence>
+        <xs:attribute name="name" type="xs:NCName" use="required" />
+        <xs:attribute name="type" type="xs:QName" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tBindingOperationMessage" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" >
+        <xs:attribute name="name" type="xs:NCName" use="optional" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tBindingOperationFault" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" >
+        <xs:attribute name="name" type="xs:NCName" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tBindingOperation" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" >
+        <xs:sequence>
+          <xs:element name="input" type="wsdl:tBindingOperationMessage" minOccurs="0" />
+          <xs:element name="output" type="wsdl:tBindingOperationMessage" minOccurs="0" />
+          <xs:element name="fault" type="wsdl:tBindingOperationFault" minOccurs="0" maxOccurs="unbounded" />
+        </xs:sequence>
+        <xs:attribute name="name" type="xs:NCName" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tService" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" >
+        <xs:sequence>
+          <xs:element name="port" type="wsdl:tPort" minOccurs="0" maxOccurs="unbounded" />
+        </xs:sequence>
+        <xs:attribute name="name" type="xs:NCName" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="tPort" >
+    <xs:complexContent>
+      <xs:extension base="wsdl:tExtensibleDocumented" >
+        <xs:attribute name="name" type="xs:NCName" use="required" />
+        <xs:attribute name="binding" type="xs:QName" use="required" />
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:attribute name="arrayType" type="xs:string" />
+  <xs:attribute name="required" type="xs:boolean" />
+  <xs:complexType name="tExtensibilityElement" abstract="true" >
+    <xs:attribute ref="wsdl:required" use="optional" />
+  </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

Added: synapse/trunk/java/repository/schema/wsdl/wsdl20.xsd
URL: http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/wsdl/wsdl20.xsd?rev=944693&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/wsdl/wsdl20.xsd (added)
+++ synapse/trunk/java/repository/schema/wsdl/wsdl20.xsd Sat May 15 18:17:35 2010
@@ -0,0 +1,362 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "http://www.w3.org/2001/XMLSchema.dtd">
+<!-- 
+   W3C XML Schema defined in the Web Services Description (WSDL)
+    Version 2.0 specification
+     http://www.w3.org/TR/wsdl20
+
+   Copyright © 2007 World Wide Web Consortium,
+
+   (Massachusetts Institute of Technology, European Research Consortium for
+   Informatics and Mathematics, Keio University). All Rights Reserved. This
+   work is distributed under the W3C® Software License [1] in the hope that
+   it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+   warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+   [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+   $Id: wsdl20.xsd,v 1.4 2008/03/31 19:12:51 plehegar Exp $
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://www.w3.org/ns/wsdl" targetNamespace="http://www.w3.org/ns/wsdl" elementFormDefault="qualified" finalDefault="" blockDefault="" attributeFormDefault="unqualified">
+
+  <xs:element name="documentation" type="wsdl:DocumentationType"/>
+  <xs:complexType name="DocumentationType" mixed="true">
+    <xs:sequence>
+      <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" namespace="##any"/>
+    </xs:sequence>
+    <xs:anyAttribute namespace="##other" processContents="lax"/>
+  </xs:complexType>
+
+  <xs:complexType name="DocumentedType" mixed="false">
+    <xs:annotation>
+      <xs:documentation>
+      This type is extended by component types to allow them to be documented.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:sequence>
+      <xs:element ref="wsdl:documentation" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+  </xs:complexType>
+
+  <xs:complexType name="ExtensibleDocumentedType" abstract="true" mixed="false">
+    <xs:annotation>
+      <xs:documentation>
+      This type is extended by component types to allow 
+      attributes from other namespaces to be added.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:complexContent>
+      <xs:extension base="wsdl:DocumentedType">
+	    <xs:anyAttribute namespace="##other" processContents="lax"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <!-- description element decl and type def -->
+  <xs:element name="description" type="wsdl:DescriptionType">
+    <xs:unique name="interface">
+      <xs:selector xpath="wsdl:interface"/>
+      <xs:field xpath="@name"/>
+    </xs:unique>
+    <xs:unique name="binding">
+      <xs:selector xpath="wsdl:binding"/>
+      <xs:field xpath="@name"/>
+    </xs:unique>
+    <xs:unique name="service">
+      <xs:selector xpath="wsdl:service"/>
+      <xs:field xpath="@name"/>
+    </xs:unique>
+  </xs:element>
+
+  <xs:complexType name="DescriptionType" mixed="false">
+    <xs:annotation>
+      <xs:documentation>
+        Although correct, this type declaration does not capture
+        all the constraints on the contents of the wsdl:description
+        element as defined by the WSDL 2.0 specification.
+
+        In particular, the ordering constraints wrt elements preceding
+        and following the wsdl:types child element are not captured, as
+        attempts to incorporate such restrictions in the schema
+        ran afoul of the UPA (Unique Particle Attribution) rule
+        in the XML Schema language.
+
+        Please refer to the WSDL 2.0 specification for
+	additional information on the contents of this type.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:element ref="wsdl:import"/>
+          <xs:element ref="wsdl:include"/>
+          <xs:element ref="wsdl:types"/>
+          <xs:element ref="wsdl:interface"/>
+	      <xs:element ref="wsdl:binding"/>
+	      <xs:element ref="wsdl:service"/>
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+	<xs:attribute name="targetNamespace" type="xs:anyURI" use="required"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <!-- types for import and include elements -->
+  <xs:element name="import" type="wsdl:ImportType"/>
+  <xs:complexType name="ImportType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+	    <xs:sequence>
+	      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="strict"/>
+	    </xs:sequence>
+        <xs:attribute name="namespace" type="xs:anyURI" use="required"/>
+        <xs:attribute name="location" type="xs:anyURI" use="optional"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:element name="include" type="wsdl:IncludeType"/>
+  <xs:complexType name="IncludeType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+	    <xs:sequence>
+	      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="strict"/>
+	    </xs:sequence>
+        <xs:attribute name="location" type="xs:anyURI" use="required"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:element name="types" type="wsdl:TypesType"/>
+  <xs:complexType name="TypesType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+	    <xs:sequence>
+	      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="strict"/>
+	    </xs:sequence>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <!-- parts related to wsdl:interface -->
+  <xs:element name="interface" type="wsdl:InterfaceType">
+	<xs:unique name="operation">
+	  <xs:selector xpath="wsdl:operation"/>
+	  <xs:field xpath="@name"/>
+	</xs:unique>
+	<xs:unique name="fault">
+	  <xs:selector xpath="wsdl:fault"/>
+	  <xs:field xpath="@name"/>
+	</xs:unique>
+  </xs:element>
+  <xs:complexType name="InterfaceType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:element name="operation" type="wsdl:InterfaceOperationType"/>
+          <xs:element name="fault" type="wsdl:InterfaceFaultType"/>
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="name" type="xs:NCName" use="required"/>
+        <xs:attribute name="extends" use="optional">
+		  <xs:simpleType>
+		    <xs:list itemType="xs:QName"/>
+		  </xs:simpleType>
+	</xs:attribute>
+        <xs:attribute name="styleDefault" use="optional">
+		  <xs:simpleType>
+		    <xs:list itemType="xs:anyURI"/>
+		  </xs:simpleType>
+	</xs:attribute>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="InterfaceOperationType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:element name="input" type="wsdl:MessageRefType"/>
+          <xs:element name="output" type="wsdl:MessageRefType"/>
+          <xs:element name="infault" type="wsdl:MessageRefFaultType"/>
+          <xs:element name="outfault" type="wsdl:MessageRefFaultType"/>
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="name" type="xs:NCName" use="required"/>
+        <xs:attribute name="pattern" type="xs:anyURI" use="optional"/>
+        <xs:attribute name="safe" type="xs:boolean" use="optional"/>
+        <xs:attribute name="style" type="xs:anyURI" use="optional"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="MessageRefType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="messageLabel" type="xs:NCName" use="optional"/>
+        <xs:attribute name="element" type="wsdl:ElementReferenceType" use="optional"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:simpleType name="ElementReferenceType">
+    <xs:annotation>
+      <xs:documentation>
+      Use the QName of a GED that describes the content, 
+      #any for any content, 
+      #none for empty content, or 
+      #other for content described by some other extension attribute that references a declaration in a non-XML extension type system.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:union memberTypes="xs:QName">
+      <xs:simpleType>
+        <xs:restriction base="xs:token">
+          <xs:enumeration value="#any"/>
+          <xs:enumeration value="#none"/>
+          <xs:enumeration value="#other"/>
+        </xs:restriction>
+      </xs:simpleType>
+    </xs:union>
+  </xs:simpleType>
+
+  <xs:complexType name="MessageRefFaultType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="ref" type="xs:QName" use="required"/>
+        <xs:attribute name="messageLabel" type="xs:NCName" use="optional"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="InterfaceFaultType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="name" type="xs:NCName" use="required"/>
+        <xs:attribute name="element" type="wsdl:ElementReferenceType" use="optional"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <!-- types related to wsdl:binding -->
+  <xs:element name="binding" type="wsdl:BindingType"/>
+  <xs:complexType name="BindingType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:element name="operation" type="wsdl:BindingOperationType"/>
+          <xs:element name="fault" type="wsdl:BindingFaultType"/>
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="name" type="xs:NCName" use="required"/>
+        <xs:attribute name="type" type="xs:anyURI" use="required"/>
+        <xs:attribute name="interface" type="xs:QName" use="optional"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="BindingOperationType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:element name="input" type="wsdl:BindingOperationMessageType"/>
+          <xs:element name="output" type="wsdl:BindingOperationMessageType"/>
+          <xs:element name="infault" type="wsdl:BindingOperationFaultType"/>
+          <xs:element name="outfault" type="wsdl:BindingOperationFaultType"/>
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="ref" type="xs:QName" use="required"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="BindingOperationMessageType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="messageLabel" type="xs:NCName" use="optional"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="BindingOperationFaultType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="ref" type="xs:QName" use="required"/>
+        <xs:attribute name="messageLabel" type="xs:NCName" use="optional"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:complexType name="BindingFaultType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="ref" type="xs:QName" use="required"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <!-- types related to service -->
+  <xs:element name="service" type="wsdl:ServiceType">
+	<xs:unique name="endpoint">
+	  <xs:selector xpath="wsdl:endpoint"/>
+	  <xs:field xpath="@name"/>
+	</xs:unique>
+  </xs:element>
+  <xs:complexType name="ServiceType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="1" maxOccurs="unbounded">
+          <xs:element ref="wsdl:endpoint"/>
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="name" type="xs:NCName" use="required"/>
+        <xs:attribute name="interface" type="xs:QName" use="required"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+  
+  <xs:element name="endpoint" type="wsdl:EndpointType"/>
+  <xs:complexType name="EndpointType" mixed="false">
+    <xs:complexContent>
+      <xs:extension base="wsdl:ExtensibleDocumentedType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </xs:choice>
+        <xs:attribute name="name" type="xs:NCName" use="required"/>
+        <xs:attribute name="binding" type="xs:QName" use="required"/>
+        <xs:attribute name="address" type="xs:anyURI" use="optional"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  <xs:attribute name="required" type="xs:boolean"/>
+
+  <xs:complexType name="ExtensionElement" abstract="true" mixed="false">
+    <xs:annotation>
+	  <xs:documentation>
+	  This abstract type is intended to serve as the base type for
+      extension elements. It includes the wsdl:required attribute
+      which it is anticipated will be used by most extension elements
+	  </xs:documentation>
+	</xs:annotation>
+    <xs:attribute ref="wsdl:required" use="optional"/>
+  </xs:complexType>
+
+</xs:schema>
\ No newline at end of file