blob: ef09ee98d0aadc291de61f049b7dace32b4bbd90 [file] [log] [blame]
<?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://ws.apache.org/ns/synapse"
xmlns="http://ws.apache.org/ns/synapse">
<xs:include schemaLocation="../endpoint.xsd"/>
<xs:include schemaLocation="../mediators/mediators.xsd"/>
<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:documentation>
This denotes the target for various mediators
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="sequence" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:group ref="mediatorList" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="endpoint" type="Endpoint" minOccurs="0" maxOccurs="1"/>
</xs:all>
<xs:attribute name="sequence" type="xs:string" use="optional"/>
<xs:attribute name="endpoint" type="xs:string" use="optional"/>
</xs:complexType>
<xs:complexType name="ProxyTarget">
<xs:annotation>
<xs:documentation>
This denotes the target for a proxy or for various mediators
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="inSequence" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:group ref="mediatorList" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="outSequence" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:group ref="mediatorList" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="faultSequence" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:group ref="mediatorList" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="endpoint" type="Endpoint" minOccurs="0" maxOccurs="1"/>
</xs:all>
<xs:attribute name="inSequence" type="xs:string" use="optional"/>
<xs:attribute name="outSequence" type="xs:string" use="optional"/>
<xs:attribute name="faultSequence" type="xs:string" use="optional"/>
<xs:attribute name="endpoint" type="xs:string" use="optional"/>
</xs:complexType>
</xs:schema>