You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by jb...@apache.org on 2015/04/29 19:03:22 UTC

[18/32] activemq-artemis git commit: renamed schemas

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/24a4c634/artemis-server/src/main/resources/schema/activemq-configuration.xsd
----------------------------------------------------------------------
diff --git a/artemis-server/src/main/resources/schema/activemq-configuration.xsd b/artemis-server/src/main/resources/schema/activemq-configuration.xsd
deleted file mode 100644
index e9b4c13..0000000
--- a/artemis-server/src/main/resources/schema/activemq-configuration.xsd
+++ /dev/null
@@ -1,2151 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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.
--->
-<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-            xmlns="urn:activemq:core"
-            targetNamespace="urn:activemq:core"
-            attributeFormDefault="unqualified"
-            elementFormDefault="qualified"
-            version="1.0">
-
-   <xsd:element name="core" type="configurationType"/>
-
-   <xsd:complexType name="configurationType">
-      <xsd:all>
-         <xsd:element name="name" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Node name. If set, it will be used in topology notifications.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="resolve-protocols" type="xsd:boolean" default="true" maxOccurs="1"
-                      minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  If true then the ActiveMQ Server will make use of any Protocol Managers that are in available on the
-                  classpath. If false then only the core protocol will be available, unless in Embedded mode where users
-                  can inject their own Protocol Managers.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="persistence-enabled" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  true means that the server will use the file based journal for persistence.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="scheduled-thread-pool-max-size" type="xsd:int" default="5" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Maximum number of threads to use for the scheduled thread pool
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="thread-pool-max-size" type="xsd:int" default="30" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Maximum number of threads to use for the thread pool. -1 means 'no limits'.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="graceful-shutdown-enabled" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  true means that graceful shutdown is enabled
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="graceful-shutdown-timeout" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how long (in ms) to wait for clients to disconnect before shutting down the server
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="security-enabled" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  true means that security is enabled
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="security-invalidation-interval" type="xsd:long" default="10000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how long (in ms) to wait before invalidating the security cache
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-lock-acquisition-timeout" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how long (in ms) to wait to acquire a file lock on the journal
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="wild-card-routing-enabled" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  true means that the server supports wild card routing
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="management-address" type="xsd:string" default="jms.queue.activemq.management" maxOccurs="1"
-                      minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the name of the management address to send management messages to. It is prefixed with "jms.queue" so
-                  that JMS clients can send messages to it.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="management-notification-address" type="xsd:string" default="activemq.notifications"
-                      maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the name of the address that consumers bind to receive management notifications
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="cluster-user" type="xsd:string" default="ACTIVEMQ.CLUSTER.ADMIN.USER" maxOccurs="1"
-                      minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Cluster username. It applies to all cluster configurations.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="cluster-password" maxOccurs="1" minOccurs="0" type="xsd:string" default="CHANGE ME!!">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Cluster password. It applies to all cluster configurations.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="password-codec" type="xsd:string"
-                      default="org.apache.activemq.artemis.utils.DefaultSensitiveStringCodec" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Class name and its parameters for the Decoder used to decode the masked password. Ignored if
-                  mask-password is false. The format of this property is a full qualified class name optionally followed
-                  by key/value pairs.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="mask-password" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  This option controls whether passwords in server configuration need be masked. If set to "true" the
-                  passwords are masked.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="log-delegate-factory-class-name" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  XXX
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="jmx-management-enabled" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  true means that the management API is available via JMX
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="jmx-domain" type="xsd:string" default="org.apache.activemq" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the JMX domain used to registered ActiveMQ MBeans in the MBeanServer
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="message-counter-enabled" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  true means that message counters are enabled
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="message-counter-sample-period" type="xsd:long" default="10000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the sample period (in ms) to use for message counters
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="message-counter-max-day-history" type="xsd:int" default="10" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how many days to keep message counter history
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="connection-ttl-override" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  if set, this will override how long (in ms) to keep a connection alive without receiving a ping. -1
-                  disables this setting.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="async-connection-execution-enabled" type="xsd:boolean" default="true" maxOccurs="1"
-                      minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  should certain incoming packets on the server be handed off to a thread from the thread pool for
-                  processing or should they be handled on the remoting thread?
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="transaction-timeout" type="xsd:long" default="300000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how long (in ms) before a transaction can be removed from the resource manager after create time
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="transaction-timeout-scan-period" type="xsd:long" default="1000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how often (in ms) to scan for timeout transactions
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="message-expiry-scan-period" type="xsd:long" default="30000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how often (in ms) to scan for expired messages
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="message-expiry-thread-priority" type="xsd:int" default="3" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the priority of the thread expiring messages
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="id-cache-size" type="xsd:int" default="20000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the size of the cache for pre-creating message ID's
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="persist-id-cache" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  true means that ID's are persisted to the journal
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="remoting-incoming-interceptors" type="class-name-sequenceType" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of &lt;class-name/&gt; elements with the names of classes to use for interceptor incoming
-                  remoting packets
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="remoting-outgoing-interceptors" type="class-name-sequenceType" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of &lt;class-name/&gt; elements with the names of classes to use for interceptor outcoming
-                  remoting packets
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="persist-delivery-count-before-delivery" type="xsd:boolean" default="false" maxOccurs="1"
-                      minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  True means that the delivery count is persisted before delivery. False means that this only happens
-                  after a message has been cancelled.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="connectors" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of remoting connectors configurations to create
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="connector" type="transportType" maxOccurs="unbounded"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-         <xsd:element maxOccurs="1" minOccurs="0" name="acceptors">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of remoting acceptors to create
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="acceptor" type="transportType" maxOccurs="unbounded"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-         <xsd:element maxOccurs="1" minOccurs="0" name="broadcast-groups">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of broadcast groups to create
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element ref="broadcast-group" maxOccurs="unbounded" minOccurs="0"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-         <xsd:element maxOccurs="1" minOccurs="0" name="discovery-groups">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of discovery groups to create
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element maxOccurs="unbounded" minOccurs="0" ref="discovery-group">
-                     <xsd:annotation>
-                        <xsd:documentation>
-                           a discovery group specification element
-                        </xsd:documentation>
-                     </xsd:annotation>
-                  </xsd:element>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-         <xsd:element name="diverts" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of diverts to use
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="divert" type="divertType" maxOccurs="unbounded" minOccurs="0"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-
-         <!-- QUEUES -->
-         <xsd:element name="queues" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of pre configured queues to create
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="queue" maxOccurs="unbounded" minOccurs="0">
-                     <xsd:complexType>
-                        <xsd:all>
-                           <xsd:element name="address" type="xsd:string" maxOccurs="1" minOccurs="1">
-                              <xsd:annotation>
-                                 <xsd:documentation>
-                                    address for the queue
-                                 </xsd:documentation>
-                              </xsd:annotation>
-                           </xsd:element>
-                           <xsd:element ref="filter" maxOccurs="1" minOccurs="0"/>
-                           <xsd:element name="durable" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-                              <xsd:annotation>
-                                 <xsd:documentation>
-                                    whether the queue is durable (persistent)
-                                 </xsd:documentation>
-                              </xsd:annotation>
-                           </xsd:element>
-                        </xsd:all>
-                        <xsd:attribute name="name" type="xsd:ID" use="required">
-                           <xsd:annotation>
-                              <xsd:documentation>
-                                 unique name of this queue
-                              </xsd:documentation>
-                           </xsd:annotation>
-                        </xsd:attribute>
-                     </xsd:complexType>
-                  </xsd:element>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-         <xsd:element name="bridges" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of bridges to create
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="bridge" type="bridgeType" maxOccurs="unbounded" minOccurs="0"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-         <xsd:element name="ha-policy" type="haPolicyType" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The HA policy of this server
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="cluster-connections" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of cluster connections
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="cluster-connection" type="cluster-connectionType" maxOccurs="unbounded"
-                               minOccurs="0"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-         <xsd:element name="grouping-handler" type="groupingHandlerType" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Message Group configuration
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="paging-directory" type="xsd:string" default="data/paging" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the directory to store paged messages in
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="bindings-directory" type="xsd:string" default="data/bindings" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the directory to store the persisted bindings to
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="create-bindings-dir" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  true means that the server will create the bindings directory on start up
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="page-max-concurrent-io" type="xsd:int" default="5" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The max number of concurrent reads allowed on paging
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-directory" type="xsd:string" default="data/journal" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the directory to store the journal files in
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="create-journal-dir" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  true means that the journal directory will be created
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-type" default="ASYNCIO" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the type of journal to use
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:simpleType>
-               <xsd:restriction base="xsd:string">
-                  <xsd:enumeration value="ASYNCIO"/>
-                  <xsd:enumeration value="NIO"/>
-               </xsd:restriction>
-            </xsd:simpleType>
-         </xsd:element>
-
-         <xsd:element name="journal-buffer-timeout" type="xsd:long" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The timeout (in nanoseconds) used to flush internal buffers on the journal. The exact default value
-                  depend on whether the journal is ASYNCIO or NIO.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-buffer-size" type="xsd:long" default="501760" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The size of the internal buffer on the journal in KiB.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-sync-transactional" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  if true wait for transaction data to be synchronized to the journal before returning response to
-                  client
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-sync-non-transactional" type="xsd:boolean" default="true" maxOccurs="1"
-                      minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  if true wait for non transaction data to be synced to the journal before returning response to client.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="log-journal-write-rate" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Whether to log messages about the journal write rate
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-file-size" default="10485760" type="xsd:int" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the size (in bytes) of each journal file
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-min-files" type="xsd:int" default="2" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how many journal files to pre-create
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-compact-percentage" type="xsd:int" default="30" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The percentage of live data on which we consider compacting the journal
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-compact-min-files" type="xsd:int" default="10" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The minimal number of data files before we can start compacting
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="journal-max-io" type="xsd:int" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the maximum number of write requests that can be in the AIO queue at any one time. Default is 500 for
-                  AIO and 1 for NIO.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="perf-blast-pages" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  XXX Only meant to be used by project developers
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="run-sync-speed-test" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  XXX Only meant to be used by project developers
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="server-dump-interval" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Interval to log server specific information (e.g. memory usage etc)
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="memory-warning-threshold" type="xsd:int" default="25" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Percentage of available memory which will trigger a warning log
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="memory-measure-interval" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  frequency to sample JVM memory in ms (or -1 to disable memory sampling)
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="large-messages-directory" type="xsd:string" default="data/largemessages"
-                      maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the directory to store large messages
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="security-settings" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of security settings
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="security-setting" maxOccurs="unbounded" minOccurs="0">
-                     <xsd:complexType>
-                        <xsd:annotation>
-                           <xsd:documentation>
-                              a permission to add to the matched addresses
-                           </xsd:documentation>
-                        </xsd:annotation>
-                        <xsd:sequence>
-                           <xsd:element name="permission" maxOccurs="unbounded" minOccurs="0">
-                              <xsd:complexType>
-                                 <xsd:attribute name="type" type="xsd:string" use="required">
-                                    <xsd:annotation>
-                                       <xsd:documentation>
-                                          the type of permission
-                                       </xsd:documentation>
-                                    </xsd:annotation>
-                                 </xsd:attribute>
-                                 <xsd:attribute name="roles" type="xsd:string" use="required">
-                                    <xsd:annotation>
-                                       <xsd:documentation>
-                                          a comma-separated list of roles to apply the permission to
-                                       </xsd:documentation>
-                                    </xsd:annotation>
-                                 </xsd:attribute>
-                              </xsd:complexType>
-                           </xsd:element>
-                        </xsd:sequence>
-                        <xsd:attribute name="match" type="xsd:string" use="required">
-                           <xsd:annotation>
-                              <xsd:documentation>
-                                 regular expression for matching security roles against addresses
-                              </xsd:documentation>
-                           </xsd:annotation>
-                        </xsd:attribute>
-                     </xsd:complexType>
-                  </xsd:element>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-         <xsd:element name="address-settings" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a list of address settings
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element ref="address-setting" maxOccurs="unbounded" minOccurs="0"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-
-         <xsd:element name="connector-services" maxOccurs="1" minOccurs="0">
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="connector-service" type="connector-serviceType" maxOccurs="unbounded"
-                               minOccurs="0"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-
-   <xsd:element name="local-bind-address" type="xsd:string">
-      <xsd:annotation>
-         <xsd:documentation>
-            local bind address that the datagram socket is bound to
-         </xsd:documentation>
-      </xsd:annotation>
-   </xsd:element>
-
-   <xsd:element name="local-bind-port" type="xsd:int" default="-1">
-      <xsd:annotation>
-         <xsd:documentation>
-            local port to which the datagram socket is bound to
-         </xsd:documentation>
-      </xsd:annotation>
-   </xsd:element>
-
-   <!-- BROADCAST GROUP CONFIGURATION -->
-   <xsd:element name="broadcast-group">
-      <xsd:complexType>
-         <xsd:sequence>
-            <!-- XXX these 2 local-* here...-->
-            <xsd:element ref="local-bind-address" maxOccurs="1" minOccurs="0"/>
-            <xsd:element ref="local-bind-port" maxOccurs="1" minOccurs="0"/>
-            <xsd:element name="group-address" type="xsd:string" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     multicast address to which the data will be broadcast
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="group-port" type="xsd:int" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     UDP port number used for broadcasting
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="broadcast-period" type="xsd:long" default="2000" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     period in milliseconds between consecutive broadcasts
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="jgroups-file" type="xsd:string" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     Name of JGroups configuration file. If specified, the server uses JGroups for broadcasting.
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="jgroups-channel" type="xsd:string" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     Name of JGroups Channel. If specified, the server uses the named channel for broadcasting.
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="connector-ref" type="xsd:string" maxOccurs="unbounded" minOccurs="0"/>
-         </xsd:sequence>
-
-         <xsd:attribute name="name" type="xsd:ID" use="required">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a unique name for the broadcast group
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:attribute>
-
-      </xsd:complexType>
-   </xsd:element>
-
-   <xsd:element name="discovery-group">
-      <xsd:complexType>
-         <xsd:all>
-            <!-- XXX -->
-            <xsd:element name="group-address" type="xsd:string" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     Multicast IP address of the group to listen on
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-            <xsd:element name="group-port" type="xsd:int" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     UDP port number of the multi cast group
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="jgroups-file" type="xsd:string" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     Name of a JGroups configuration file. If specified, the server uses JGroups for discovery.
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="jgroups-channel" type="xsd:string" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     Name of a JGroups Channel. If specified, the server uses the named channel for discovery.
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="refresh-timeout" type="xsd:int" default="10000" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     Period the discovery group waits after receiving the last broadcast from a particular server before
-                     removing that servers connector pair entry from its list.
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element ref="local-bind-address" maxOccurs="1" minOccurs="0"/>
-            <xsd:element ref="local-bind-port" maxOccurs="1" minOccurs="0"/>
-            <xsd:element name="initial-wait-timeout" type="xsd:int" default="10000" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     time to wait for an initial broadcast to give us at least one node in the cluster
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-         </xsd:all>
-
-         <xsd:attribute name="name" type="xsd:ID" use="required">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a unique name for the discovery group
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:attribute>
-      </xsd:complexType>
-   </xsd:element>
-
-   <xsd:element name="discovery-group-ref">
-      <xsd:complexType>
-         <xsd:attribute name="discovery-group-name" type="xsd:IDREF"/>
-      </xsd:complexType>
-   </xsd:element>
-
-   <xsd:complexType name="class-name-sequenceType">
-      <xsd:annotation>
-         <xsd:documentation>
-            unlimited sequence of &lt;class-name/&gt;
-         </xsd:documentation>
-      </xsd:annotation>
-      <xsd:sequence>
-         <xsd:element maxOccurs="unbounded" minOccurs="1" name="class-name" type="xsd:string">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the fully qualified name of the interceptor class
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:sequence>
-   </xsd:complexType>
-
-   <xsd:complexType name="paramType">
-      <xsd:attribute name="key" type="xsd:string" use="required">
-         <xsd:annotation>
-            <xsd:documentation>
-               Key of a configuration parameter
-            </xsd:documentation>
-         </xsd:annotation>
-      </xsd:attribute>
-      <xsd:attribute name="value" type="xsd:string" use="required">
-         <xsd:annotation>
-            <xsd:documentation>
-               Value of a configuration parameter
-            </xsd:documentation>
-         </xsd:annotation>
-      </xsd:attribute>
-   </xsd:complexType>
-
-   <!-- BRIDGE CONFIGURATION -->
-   <xsd:complexType name="bridgeType">
-      <xsd:sequence>
-         <xsd:element name="queue-name" type="xsd:IDREF" maxOccurs="1" minOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  name of queue that this bridge consumes from
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="forwarding-address" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  address to forward to. If omitted original address is used
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="ha" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  whether this bridge supports fail-over
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element ref="filter" maxOccurs="1" minOccurs="0"/>
-
-         <xsd:element name="transformer-class-name" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  optional name of transformer class
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="min-large-message-size" type="xsd:int" default="102400" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Any message larger than this size is considered a large message (to be sent in
-                  chunks)
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="check-period" type="xsd:long" default="30000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The period (in milliseconds) a bridge's client will check if it failed to receive a ping from the
-                  server. -1 disables this check.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="connection-ttl" type="xsd:long" default="60000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how long to keep a connection alive in the absence of any data arriving from the client. This should
-                  be greater than the ping period.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="retry-interval" type="xsd:long" default="2000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  period (in ms) between successive retries
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="retry-interval-multiplier" type="xsd:double" default="1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  multiplier to apply to successive retry intervals
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="max-retry-interval" type="xsd:long" default="2000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Limit to the retry-interval growth (due to retry-interval-multiplier)
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="initial-connect-attempts" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  maximum number of initial connection attempts, -1 means 'no limits'
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="reconnect-attempts" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  maximum number of retry attempts, -1 means 'no limits'
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="failover-on-server-shutdown" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  should failover be prompted if target server is cleanly shutdown?
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="use-duplicate-detection" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  should duplicate detection headers be inserted in forwarded messages?
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="confirmation-window-size" type="xsd:int" maxOccurs="1" minOccurs="0" default="1048576">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Once the bridge has received this many bytes, it sends a confirmation
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="user" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  username, if unspecified the cluster-user is used
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="password" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  password, if unspecified the cluster-password is used
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="reconnect-attempts-same-node" default="10" type="xsd:int" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Upon reconnection this configures the number of time the same node on the topology will be retried
-                  before reseting the server locator and using the initial connectors
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:choice>
-            <xsd:element name="static-connectors" maxOccurs="1" minOccurs="1">
-               <xsd:complexType>
-                  <xsd:sequence>
-                     <xsd:element name="connector-ref" type="xsd:string" maxOccurs="unbounded" minOccurs="1"/>
-                  </xsd:sequence>
-               </xsd:complexType>
-            </xsd:element>
-            <xsd:element name="discovery-group-ref" maxOccurs="1" minOccurs="1">
-               <xsd:complexType>
-                  <xsd:attribute name="discovery-group-name" type="xsd:IDREF" use="required">
-                     <xsd:annotation>
-                        <xsd:documentation>
-                           name of discovery group used by this bridge
-                        </xsd:documentation>
-                     </xsd:annotation>
-                  </xsd:attribute>
-               </xsd:complexType>
-            </xsd:element>
-         </xsd:choice>
-      </xsd:sequence>
-
-      <xsd:attribute name="name" type="xsd:ID" use="required">
-         <xsd:annotation>
-            <xsd:documentation>
-               unique name for this bridge
-            </xsd:documentation>
-         </xsd:annotation>
-      </xsd:attribute>
-   </xsd:complexType>
-
-
-   <!-- CLUSTER CONNECTION CONFIGURATION -->
-
-   <xsd:complexType name="cluster-connectionType">
-      <xsd:sequence>
-         <xsd:element name="address" type="xsd:string" maxOccurs="1" minOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  name of the address this cluster connection applies to
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="connector-ref" type="xsd:string" maxOccurs="1" minOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Name of the connector reference to use.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="check-period" type="xsd:long" default="30000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The period (in milliseconds) used to check if the cluster connection has failed to receive pings from
-                  another server
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="connection-ttl" type="xsd:long" default="60000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how long to keep a connection alive in the absence of any data arriving from the client
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="min-large-message-size" type="xsd:int" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Messages larger than this are considered large-messages
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="call-timeout" type="xsd:long" default="30000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How long to wait for a reply
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="retry-interval" type="xsd:long" default="500" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  period (in ms) between successive retries
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="retry-interval-multiplier" type="xsd:double" default="1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  multiplier to apply to the retry-interval
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="max-retry-interval" type="xsd:long" default="2000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Maximum value for retry-interval
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="initial-connect-attempts" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How many attempts should be made to connect initially
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="reconnect-attempts" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How many attempts should be made to reconnect after failure
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="use-duplicate-detection" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation >
-               <xsd:documentation>
-                  should duplicate detection headers be inserted in forwarded messages?
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="forward-when-no-consumers" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  should messages be load balanced if there are no matching consumers on target?
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="max-hops" type="xsd:int" default="1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  maximum number of hops cluster topology is propagated
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="confirmation-window-size" type="xsd:int" default="1048576" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The size (in bytes) of the window used for confirming data from the server connected to.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="call-failover-timeout" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How long to wait for a reply if in the middle of a fail-over. -1 means wait forever.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="notification-interval" type="xsd:long" default="1000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how often the cluster connection will notify the cluster of its existence right after joining the
-                  cluster
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="notification-attempts" type="xsd:int" default="2" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  how many times this cluster connection will notify the cluster of its existence right after joining
-                  the cluster
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="scale-down-connector" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The connector to use for scaling down or when as backup in SCALE_DOWN mode
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:choice>
-            <xsd:element name="static-connectors" maxOccurs="1" minOccurs="0">
-               <xsd:complexType>
-                  <xsd:sequence>
-                     <xsd:element name="connector-ref" type="xsd:string" maxOccurs="unbounded" minOccurs="0"/>
-                  </xsd:sequence>
-                  <xsd:attribute name="allow-direct-connections-only" default="false" type="xsd:boolean" use="optional">
-                     <xsd:annotation>
-                        <xsd:documentation>
-                           restricts cluster connections to the listed connector-ref's
-                        </xsd:documentation>
-                     </xsd:annotation>
-                  </xsd:attribute>
-               </xsd:complexType>
-            </xsd:element>
-            <xsd:element name="discovery-group-ref" maxOccurs="1" minOccurs="0">
-               <xsd:complexType>
-                  <xsd:attribute name="discovery-group-name" type="xsd:IDREF" use="required">
-                     <xsd:annotation>
-                        <xsd:documentation>
-                           XXX -- this is a duplicate...
-                        </xsd:documentation>
-                     </xsd:annotation>
-                  </xsd:attribute>
-               </xsd:complexType>
-            </xsd:element>
-         </xsd:choice>
-      </xsd:sequence>
-      <xsd:attribute name="name" type="xsd:ID" use="required">
-         <xsd:annotation>
-            <xsd:documentation>
-               unique name for this cluster connection
-            </xsd:documentation>
-         </xsd:annotation>
-      </xsd:attribute>
-   </xsd:complexType>
-
-   <!-- DIVERT CONFIGURATION TYPE -->
-   <xsd:complexType name="divertType">
-      <xsd:all>
-         <xsd:element name="transformer-class-name" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  an optional class name of a transformer
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="exclusive" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  whether this is an exclusive divert
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="routing-name" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the routing name for the divert
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="address" type="xsd:string" maxOccurs="1" minOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the address this divert will divert from
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element name="forwarding-address" type="xsd:string" maxOccurs="1" minOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the forwarding address for the divert
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-
-         <xsd:element ref="filter" maxOccurs="1" minOccurs="0"/>
-      </xsd:all>
-
-      <xsd:attribute name="name" type="xsd:ID" use="required">
-         <xsd:annotation>
-            <xsd:documentation>
-               a unique name for the divert
-            </xsd:documentation>
-         </xsd:annotation>
-      </xsd:attribute>
-
-   </xsd:complexType>
-   <xsd:complexType name="haPolicyType">
-      <xsd:choice>
-         <xsd:element name="live-only" type="haLiveOnlyPolicyType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  A live only server with no HA capabilities apart from scale down.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="replication" type="haReplicationType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Configuration for a replicated server, either master, slave or colocated.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="shared-store" type="haSharedStoreType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Configuration for a shared store server, either master, slave or colocated.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:choice>
-   </xsd:complexType>
-
-   <xsd:complexType name="haReplicationType">
-      <xsd:choice>
-         <xsd:element name="master" type="replicatedPolicyType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  A live server configured to replicate.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="slave" type="replicaPolicyType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  A backup server configured to replicate.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="colocated" type="haColocationReplicationType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  a replicated lives server that will allow requests to create colocated replicated backup servers.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:choice>
-   </xsd:complexType>
-
-   <xsd:complexType name="haColocationReplicationType">
-      <xsd:all>
-         <xsd:element name="request-backup" type="xsd:boolean" minOccurs="0" maxOccurs="1" default="false">
-            <xsd:annotation>
-               <xsd:documentation>
-                  If true then the server will request a backup on another node
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="backup-request-retries" type="xsd:int" minOccurs="0" maxOccurs="1" default="-1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How many times the live server will try to request a backup, -1 means for ever.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="backup-request-retry-interval" type="xsd:long" minOccurs="0" maxOccurs="1" default="5000">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How long to wait for retries between attempts to request a backup server.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="max-backups" type="xsd:int" minOccurs="0" maxOccurs="1" default="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Whether or not this live server will accept backup requests from other live servers.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="backup-port-offset" type="xsd:int" minOccurs="0" maxOccurs="1" default="100">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The offset to use for the Connectors and Acceptors when creating a new backup server.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="excludes" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  the connectors that shouldn't have their ports offset, typically remote connectors or the
-                  connector used in the cluster connection if scalinmg down
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="connector-ref" type="xsd:string" maxOccurs="unbounded" minOccurs="1"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-         <xsd:element name="master" type="replicatedPolicyType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The configuration for the live replicated server.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="slave" type="replicaPolicyType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The configuration for any slaves created.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-
-   <xsd:complexType name="haColocationSharedStoreType">
-      <xsd:all>
-         <xsd:element name="request-backup" type="xsd:boolean" minOccurs="0" maxOccurs="1" default="false">
-            <xsd:annotation>
-               <xsd:documentation>
-                  If true then the server will request a backup on another node
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="backup-request-retries" type="xsd:int" minOccurs="0" maxOccurs="1" default="-1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How many times the live server will try to request a backup, -1 means for ever.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="backup-request-retry-interval" type="xsd:long" minOccurs="0" maxOccurs="1" default="5000">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How long to wait for retries between attempts to request a backup server.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="max-backups" type="xsd:int" minOccurs="0" maxOccurs="1" default="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Whether or not this live server will accept backup requests from other live servers.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="backup-port-offset" type="xsd:int" minOccurs="0" maxOccurs="1" default="100">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The offset to use for the Connectors and Acceptors when creating a new backup server.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="master" type="sharedStoreMasterPolicyType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The configuration for the live shared store server.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="slave" type="sharedStoreSlavePolicyType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The configuration for any shared store backups created.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-
-   <xsd:complexType name="haSharedStoreType">
-      <xsd:choice>
-         <xsd:element name="master" type="sharedStoreMasterPolicyType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  A shared store live server configuration.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="slave" type="sharedStoreSlavePolicyType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  A shared store backup server configuration.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="colocated" type="haColocationSharedStoreType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  A shared store colocated configuration
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:choice>
-   </xsd:complexType>
-
-   <xsd:complexType name="haLiveOnlyPolicyType">
-      <xsd:all>
-         <xsd:element name="scale-down" type="scaleDownType" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The scale down configuration of this live server.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-   <xsd:complexType name="replicatedPolicyType">
-      <xsd:all>
-         <xsd:element name="group-name" type="xsd:string" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  used for replication, if set, (remote) backup servers will only pair with live servers with matching
-                  group-name
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="cluster-name" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Name of the cluster configuration to use for replication. This setting is only necessary in case you
-                  configure multiple cluster connections. It is used by a replicating backups and by live servers that
-                  may attempt fail-back.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="check-for-live-server" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Whether to check the cluster for a (live) server using our own server ID when starting
-                  up. This option is only necessary for performing 'fail-back' on replicating
-                  servers. Strictly speaking this setting only applies to live servers and not to
-                  backups.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-   <xsd:complexType name="replicaPolicyType">
-      <xsd:all>
-         <xsd:element name="group-name" type="xsd:string" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  used for replication, if set, (remote) backup servers will only pair with live servers with matching
-                  group-name
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="cluster-name" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Name of the cluster configuration to use for replication. This setting is only necessary in case you
-                  configure multiple cluster connections. It is used by a replicating backups and by live servers that
-                  may attempt fail-back.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="max-saved-replicated-journals-size" type="xsd:int" default="2" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  This specifies how many times a replicated backup server can restart after moving its files on start.
-                  Once there are this number of backup journal files the server will stop permanently after if fails
-                  back.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="scale-down" type="scaleDownType" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  if provided then this backup will scale down rather than becoming live after fail over.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="restart-backup" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Will this server, if a backup, restart once it has been stopped because of failback or scaling down.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="allow-failback" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Whether a server will automatically stop when a another places a request to take over
-                  its place. The use case is when a regular server stops and its backup takes over its
-                  duties, later the main server restarts and requests the server (the former backup) to
-                  stop operating.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="failback-delay" type="xsd:long" default="5000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  if we have to start as a replicated server this is the delay to wait before fail-back occurs
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-   <xsd:complexType name="colocatedReplicaPolicyType">
-      <xsd:all>
-         <xsd:element name="group-name" type="xsd:string" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  used for replication, if set, (remote) backup servers will only pair with live servers with matching
-                  group-name
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="cluster-name" type="xsd:string" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Name of the cluster configuration to use for replication. This setting is only necessary in case you
-                  configure multiple cluster connections. It is used by a replicating backups and by live servers that
-                  may attempt fail-back.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="max-saved-replicated-journals-size" type="xsd:int" default="2" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  This specifies how many times a replicated backup server can restart after moving its files on start.
-                  Once there are this number of backup journal files the server will stop permanently after if fails
-                  back.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="scale-down" type="scaleDownType" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  if provided then this backup will scale down rather than becoming live after fail over.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="restart-backup" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Will this server, if a backup, restart once it has been stopped because of failback or scaling down.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-   <xsd:complexType name="sharedStoreMasterPolicyType">
-      <xsd:all>
-         <xsd:element name="failback-delay" type="xsd:long" default="5000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  delay to wait before fail-back occurs on (live's) restart
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="failover-on-shutdown" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Will this backup server come live on a normal server shutdown
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-   <xsd:complexType name="sharedStoreSlavePolicyType">
-      <xsd:all>
-         <xsd:element name="allow-failback" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Whether a server will automatically stop when a another places a request to take over
-                  its place. The use case is when a regular server stops and its backup takes over its
-                  duties, later the main server restarts and requests the server (the former backup) to
-                  stop operating.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="failback-delay" type="xsd:long" default="5000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  delay to wait before fail-back occurs on (live's) restart
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="failover-on-shutdown" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Will this backup server come live on a normal server shutdown
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="scale-down" type="scaleDownType" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  if provided then this backup will scale down rather than becoming live after fail over.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="restart-backup" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Will this server, if a backup, restart once it has been stopped because of failback or scaling down.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-   <xsd:complexType name="colocatedPolicyType">
-      <xsd:all>
-         <xsd:element name="request-backup" type="xsd:boolean" minOccurs="0" maxOccurs="1" default="false">
-            <xsd:annotation>
-               <xsd:documentation>
-                  If true then the server will request a backup on another node
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="backup-request-retries" type="xsd:int" minOccurs="0" maxOccurs="1" default="-1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How many times the live server will try to request a backup, -1 means for ever.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="backup-request-retry-interval" type="xsd:long" minOccurs="0" maxOccurs="1" default="5000">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How long to wait for retries between attempts to request a backup server.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="max-backups" type="xsd:int" minOccurs="0" maxOccurs="1" default="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Whether or not this live server will accept backup requests from other live servers.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="backup-port-offset" type="xsd:int" minOccurs="0" maxOccurs="1" default="100">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The offset to use for the Connectors and Acceptors when creating a new backup server.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-   </xsd:complexType>
-   <xsd:complexType name="scaleDownType">
-      <xsd:sequence>
-         <xsd:element name="enabled" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  its possible that you only want a server to partake in scale down as a receiver, via a group.
-                  In this case set scale-down to false
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="group-name" type="xsd:string" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  The scale down group to scale down to, a server will only scale down to a server within the same group
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:choice>
-         <xsd:element name="discovery-group-ref" maxOccurs="1" minOccurs="0">
-            <xsd:complexType>
-               <xsd:attribute name="discovery-group-name" type="xsd:IDREF" use="required">
-                  <xsd:annotation>
-                     <xsd:documentation>
-                        The discovery group to use for scale down, if not supplied then the scale-down-connectors or first
-                        invm connector will be used
-                     </xsd:documentation>
-                  </xsd:annotation>
-               </xsd:attribute>
-            </xsd:complexType>
-         </xsd:element>
-         <xsd:element name="connectors" minOccurs="0" maxOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  A list of connectors to use for scaling down, if not supplied then the scale-down-discovery-group or
-                  first invm connector will be used
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:complexType>
-               <xsd:sequence>
-                  <xsd:element name="connector-ref" type="xsd:string" maxOccurs="unbounded" minOccurs="1"/>
-               </xsd:sequence>
-            </xsd:complexType>
-         </xsd:element>
-         </xsd:choice>
-      </xsd:sequence>
-   </xsd:complexType>
-
-   <xsd:complexType name="groupingHandlerType">
-      <xsd:all>
-         <xsd:element name="type" maxOccurs="1" minOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  Each cluster should choose 1 node to have a LOCAL grouping handler and all the other nodes should have
-                  REMOTE handlers
-               </xsd:documentation>
-            </xsd:annotation>
-            <xsd:simpleType>
-               <xsd:restriction base="xsd:string">
-                  <xsd:enumeration value="LOCAL"/>
-                  <xsd:enumeration value="REMOTE"/>
-               </xsd:restriction>
-            </xsd:simpleType>
-         </xsd:element>
-         <xsd:element name="address" type="xsd:string" maxOccurs="1" minOccurs="1">
-            <xsd:annotation>
-               <xsd:documentation>
-                  A reference to a cluster connection address
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="timeout" type="xsd:int" default="5000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How long to wait for a decision
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="group-timeout" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How long a group binding will be used, -1 means for ever. Bindings are removed after this wait
-                  elapses. On the remote node this is used to determine how often you should re-query the main
-                  coordinator in order to update the last time used accordingly.
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-         <xsd:element name="reaper-period" type="xsd:long" default="30000" maxOccurs="1" minOccurs="0">
-            <xsd:annotation>
-               <xsd:documentation>
-                  How often the reaper will be run to check for timed out group bindings. Only valid for LOCAL handlers
-               </xsd:documentation>
-            </xsd:annotation>
-         </xsd:element>
-      </xsd:all>
-      <xsd:attribute name="name" type="xsd:string" use="required">
-         <xsd:annotation>
-            <xsd:documentation>
-               A name identifying this grouping-handler
-            </xsd:documentation>
-         </xsd:annotation>
-      </xsd:attribute>
-   </xsd:complexType>
-
-   <xsd:element name="address-setting">
-      <xsd:complexType>
-         <xsd:annotation>
-            <xsd:documentation>
-               Complex type element to configure an address.
-            </xsd:documentation>
-         </xsd:annotation>
-         <xsd:all>
-            <xsd:element maxOccurs="1" minOccurs="0" name="dead-letter-address" type="xsd:string">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     the address to send dead messages to
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="expiry-address" type="xsd:string" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     the address to send expired messages to
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="expiry-delay" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     Overrides the expiration time for messages using the default value for expiration time. "-1"
-                     disables this setting.
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="redelivery-delay" type="xsd:long" default="0" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     the time (in ms) to wait before redelivering a cancelled message.
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="redelivery-delay-multiplier" type="xsd:double" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     multipler to apply to the "redelivery-delay"
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="max-redelivery-delay" type="xsd:long" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     Maximum value for the redelivery-delay
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="max-delivery-attempts" type="xsd:int" default="10" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     how many times to attempt to deliver a message before sending to dead letter address
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="max-size-bytes" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
-               <xsd:annotation>
-                  <xsd:documentation>
-                     the maximum size (in bytes) to use in paging for an address (-1 means no limits)
-                  </xsd:documentation>
-               </xsd:annotation>
-            </xsd:element>
-
-            <xsd:element name="page-size-bytes" type="xsd:long" default="10485760" maxOccurs="1

<TRUNCATED>