<?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:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>

   <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="system-property-prefix" type="xsd:string" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  This defines the prefix which we will use to parse System properties for the configuration. Default=
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="internal-naming-prefix" type="xsd:string" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Artemis uses internal queues and addresses for implementing certain behaviours.  These queues and addresses
                  will be prefixed by default with "$.activemq.internal" to avoid naming clashes with user namespacing.
                  This can be overridden by setting this value to a valid Artemis address.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="amqp-use-core-subscription-naming" type="xsd:boolean" maxOccurs="1" minOccurs="0" default="false">
            <xsd:annotation>
               <xsd:documentation>
                  This enables making AMQP subscription queue names, match core queue names, for better interoperability between protocols.
                  Note: Enabling this to an existing broker if pre-existing amqp durable subscriptions already existed will require
                  clients to re-subscribe and to clean up old subscription names.
               </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 Artemis 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="journal-datasync" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  that means the server will use fdatasync to confirm writes on the disk.
               </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 an entry in the authentication or authorization cache
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="authentication-cache-size" type="xsd:long" default="1000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  how large to make the authentication cache
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="authorization-cache-size" type="xsd:long" default="1000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  how large to make the authorization 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>
                  DEPRECATED: the name of the factory class to use for log delegation
               </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 Artemis MBeans in the MBeanServer
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="jmx-use-broker-name" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Whether or not to use the broker name in the JMX properties
               </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="connection-ttl-check-interval" type="xsd:long" default="2000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  how often (in ms) to check connections for ttl violation
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="configuration-file-refresh-period" type="xsd:long" default="5000" maxOccurs="1"
                      minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  how often (in ms) to check the configuration file for modifications
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="temporary-queue-namespace" type="xsd:string" default="" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  the namespace to use for looking up address settings for temporary queues
               </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>
                  DEPRECATED: the priority of the thread expiring messages
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="address-queue-scan-period" type="xsd:long" default="30000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  how often (in ms) to scan for addresses and queues that need to be deleted
               </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 intercepting 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 intercepting outgoing
                  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="populate-validated-user" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  true means that the server will add the name of the validated user to messages it sends
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="reject-empty-validated-user" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  true means that the server will not allow any message that doesn't have a validated user, in JMS this is JMSXUserID
               </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:attributeGroup ref="xml:specialAttrs"/>
            </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:attributeGroup ref="xml:specialAttrs"/>
            </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:attributeGroup ref="xml:specialAttrs"/>
            </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:attributeGroup ref="xml:specialAttrs"/>
            </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:attributeGroup ref="xml:specialAttrs"/>
            </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="0">
                              <xsd:annotation>
                                 <xsd:documentation>
                                    address for the queue
                                 </xsd:documentation>
                              </xsd:annotation>
                           </xsd:element>
                           <xsd:element name="user" type="xsd:string" maxOccurs="1" minOccurs="0">
                              <xsd:annotation>
                                 <xsd:documentation>
                                    user to associate for creating 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:string" use="required">
                           <xsd:annotation>
                              <xsd:documentation>
                                 unique name of this queue
                              </xsd:documentation>
                           </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="max-consumers" type="xsd:integer" use="optional"/>
                        <xsd:attribute name="purge-on-no-consumers" type="xsd:boolean" use="optional"/>
                        <xsd:attribute name="exclusive" type="xsd:boolean" use="optional"/>
                        <xsd:attribute name="group-rebalance" type="xsd:boolean" use="optional"/>
                        <xsd:attribute name="group-rebalance-pause-dispatch" type="xsd:boolean" use="optional"/>
                        <xsd:attribute name="group-buckets" type="xsd:int" use="optional"/>
                        <xsd:attribute name="group-first-key" type="xsd:string" use="optional"/>
                        <xsd:attribute name="last-value" type="xsd:boolean" use="optional"/>
                        <xsd:attribute name="last-value-key" type="xsd:string" use="optional"/>
                        <xsd:attribute name="non-destructive" type="xsd:boolean" use="optional"/>
                        <xsd:attribute name="consumers-before-dispatch" type="xsd:int" use="optional"/>
                        <xsd:attribute name="delay-before-dispatch" type="xsd:long" use="optional"/>
                        <xsd:attributeGroup ref="xml:specialAttrs"/>
                     </xsd:complexType>
                  </xsd:element>
               </xsd:sequence>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </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:attributeGroup ref="xml:specialAttrs"/>
            </xsd:complexType>
         </xsd:element>

         <xsd:element name="federations" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  a list of federations to create
               </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:sequence>
                  <xsd:element name="federation" type="federationType" maxOccurs="unbounded" minOccurs="0"/>
               </xsd:sequence>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </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" type="clusterConnectionChoiceType" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  a list of cluster connections
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="broker-connections" type="brokerConnectType" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  A list of connections the broker will make towards other servers.
                  Currently the only connection type supported is amqpConnection
               </xsd:documentation>
            </xsd:annotation>
         </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="read-whole-page" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Whether the whole page is read while getting message after page cache is evicted.
               </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="journal-retention-directory" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  the directory to store journal-retention message in and rention configuraion.
               </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:simpleContent>
                  <xsd:extension base="xsd:string">
                     <xsd:attribute name="unit" use="optional">
                        <xsd:annotation>
                           <xsd:documentation>
                              This configures the period type to use on limit. By default it is DAYS.
                           </xsd:documentation>
                        </xsd:annotation>
                        <xsd:simpleType>
                           <xsd:restriction base="xsd:string">
                              <xsd:enumeration value="DAYS"/>
                              <xsd:enumeration value="HOURS"/>
                              <xsd:enumeration value="MINUTES"/>
                              <xsd:enumeration value="SECONDS"/>
                           </xsd:restriction>
                        </xsd:simpleType>
                     </xsd:attribute>
                     <xsd:attribute name="period" type="xsd:integer" use="optional">
                        <xsd:annotation>
                           <xsd:documentation>
                              The amount of time used to keep files.
                           </xsd:documentation>
                        </xsd:annotation>
                     </xsd:attribute>
                     <xsd:attribute name="storage-limit" type="xsd:string" use="optional">
                        <xsd:annotation>
                           <xsd:documentation>
                              Size (in bytes) before we starting removing files from the retention area.
                              this is an extra protection on top of the period.
                              Notice we first remove files based on period and if you're using more storage then you
                              configured we start removing older files.
                              By default this is unlimited (not filled).
                              Supports byte notation like "K", "Mb", "GB", etc.
                           </xsd:documentation>
                        </xsd:annotation>
                     </xsd:attribute>
                  </xsd:extension>
               </xsd:simpleContent>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="node-manager-lock-directory" type="xsd:string" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  the directory to store the node manager lock file
               </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:enumeration value="MAPPED"/>
               </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-device-block-size" type="xsd:long" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The size in bytes used by the device. This is usually translated as fstat/st_blksize
                  And this is a way to bypass the value returned as st_blksize.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="journal-buffer-size" type="xsd:string" default="501760" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The size (in bytes) of the internal buffer on the journal. Supports byte notation like "K", "Mb",
                  "GB", etc.
               </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:string" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The size (in bytes) of each journal file. Supports byte notation like "K", "Mb", "GB", etc.
               </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-pool-files" type="xsd:int" default="-1" 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="journal-file-open-timeout" type="xsd:int" default="5" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  the length of time in seconds to wait when opening a new Journal file before timing out and failing
               </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="global-max-size" type="xsd:string" default="-1" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Size (in bytes) before all addresses will enter into their Full Policy configured upon messages being
                  produced. Supports byte notation like "K", "Mb", "GB", etc.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="max-disk-usage" type="xsd:int" default="90" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Max percentage of disk usage before the system blocks or fails clients.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="disk-scan-period" type="xsd:long" default="5000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  how often (in ms) to scan the disks for full disks.
               </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="store" type="storeType" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The Store Type used by the server
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="critical-analyzer" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  should analyze response time on critical paths and decide for broker log, shutdown or halt.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="critical-analyzer-timeout" type="xsd:long" default="120000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The default timeout used on analyzing timeouts on the critical path.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="critical-analyzer-check-period" type="xsd:long" default="0" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The timeout here will be defaulted to half critical-analyzer-timeout, calculation happening at runtime
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="critical-analyzer-policy" default="LOG" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Should the server log, be shutdown or halted upon critical analysis failure.
               </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
               <xsd:restriction base="xsd:string">
                  <xsd:enumeration value="LOG"/>
                  <xsd:enumeration value="HALT"/>
                  <xsd:enumeration value="SHUTDOWN"/>
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>

         <xsd:element name="page-sync-timeout" type="xsd:int" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The timeout (in nanoseconds) used to sync pages. The exact default value
                  depend on whether the journal is ASYNCIO or NIO.
               </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:choice>
                     <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:attributeGroup ref="xml:specialAttrs"/>
                                 </xsd:complexType>
                              </xsd:element>
                           </xsd:sequence>
                           <xsd:attribute name="match" type="xsd:string" use="required">
                              <xsd:annotation>
                                 <xsd:documentation>
                                    pattern for matching security roles against addresses; can use wildcards
                                 </xsd:documentation>
                              </xsd:annotation>
                           </xsd:attribute>
                           <xsd:attributeGroup ref="xml:specialAttrs"/>
                        </xsd:complexType>
                     </xsd:element>
                     <xsd:element name="security-setting-plugin" maxOccurs="1" minOccurs="0">
                        <xsd:complexType>
                           <xsd:annotation>
                              <xsd:documentation>
                                 a plugin
                              </xsd:documentation>
                           </xsd:annotation>
                           <xsd:sequence>
                              <xsd:element name="setting" maxOccurs="unbounded" minOccurs="0">
                                 <xsd:complexType>
                                    <xsd:attribute name="name" type="xsd:string" use="required">
                                       <xsd:annotation>
                                          <xsd:documentation>
                                             the name of the setting
                                          </xsd:documentation>
                                       </xsd:annotation>
                                    </xsd:attribute>
                                    <xsd:attribute name="value" type="xsd:string" use="required">
                                       <xsd:annotation>
                                          <xsd:documentation>
                                             the value for the setting
                                          </xsd:documentation>
                                       </xsd:annotation>
                                    </xsd:attribute>
                                    <xsd:attributeGroup ref="xml:specialAttrs"/>
                                 </xsd:complexType>
                              </xsd:element>
                           </xsd:sequence>
                           <xsd:attribute name="class-name" type="xsd:string" use="required">
                              <xsd:annotation>
                                 <xsd:documentation>
                                    the name of the plugin class to instantiate
                                 </xsd:documentation>
                              </xsd:annotation>
                           </xsd:attribute>
                           <xsd:attributeGroup ref="xml:specialAttrs"/>
                        </xsd:complexType>
                     </xsd:element>
                  </xsd:choice>
                  <xsd:element name="role-mapping" minOccurs="0" maxOccurs="unbounded">
                     <xsd:complexType>
                        <xsd:attribute name="from" type="xsd:string" use="required">
                           <xsd:annotation>
                              <xsd:documentation>
                                 the name of the external role
                              </xsd:documentation>
                           </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="to" type="xsd:string" use="required">
                           <xsd:annotation>
                              <xsd:documentation>
                                 the comma delimited name of the internal role(s)
                              </xsd:documentation>
                           </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attributeGroup ref="xml:specialAttrs"/>
                     </xsd:complexType>
                  </xsd:element>
               </xsd:sequence>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </xsd:complexType>
         </xsd:element>

         <xsd:element name="broker-plugins" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  a list of broker-plugins
               </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:sequence>
                  <xsd:element name="broker-plugin" maxOccurs="unbounded" minOccurs="0">
                     <xsd:complexType>
                        <xsd:annotation>
                           <xsd:documentation>
                              a broker plugin
                           </xsd:documentation>
                        </xsd:annotation>
                        <xsd:sequence>
                           <xsd:element ref="property" maxOccurs="unbounded" minOccurs="0">
                              <xsd:annotation>
                                 <xsd:documentation>
                                    properties to configure a plugin
                                 </xsd:documentation>
                              </xsd:annotation>
                           </xsd:element>
                        </xsd:sequence>
                        <xsd:attribute name="class-name" type="xsd:string" use="required">
                           <xsd:annotation>
                              <xsd:documentation>
                                 the name of the broker plugin class to instantiate
                              </xsd:documentation>
                           </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attributeGroup ref="xml:specialAttrs"/>
                     </xsd:complexType>
                  </xsd:element>
               </xsd:sequence>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </xsd:complexType>
         </xsd:element>

         <xsd:element name="metrics-plugin" maxOccurs="1" minOccurs="0">
            <xsd:complexType>
               <xsd:annotation>
                  <xsd:documentation>
                     DEPRECATED: use metrics instead. A metrics plugin
                  </xsd:documentation>
               </xsd:annotation>
               <xsd:sequence>
                  <xsd:element ref="property" maxOccurs="unbounded" minOccurs="0">
                     <xsd:annotation>
                        <xsd:documentation>
                           properties to configure a plugin
                        </xsd:documentation>
                     </xsd:annotation>
                  </xsd:element>
               </xsd:sequence>
               <xsd:attribute name="class-name" type="xsd:string" use="required">
                  <xsd:annotation>
                     <xsd:documentation>
                        the name of the metrics plugin class to instantiate
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:attribute>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </xsd:complexType>
         </xsd:element>

         <xsd:element name="metrics" maxOccurs="1" minOccurs="0">
            <xsd:complexType>
               <xsd:annotation>
                  <xsd:documentation>
                     metrics configuration
                  </xsd:documentation>
               </xsd:annotation>
               <xsd:all>
                  <xsd:element name="jvm-memory" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
                     <xsd:annotation>
                        <xsd:documentation>
                           whether or not to report JVM memory metrics
                        </xsd:documentation>
                     </xsd:annotation>
                  </xsd:element>

                  <xsd:element name="jvm-threads" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
                     <xsd:annotation>
                        <xsd:documentation>
                           whether or not to report JVM thread metrics
                        </xsd:documentation>
                     </xsd:annotation>
                  </xsd:element>

                  <xsd:element name="jvm-gc" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
                     <xsd:annotation>
                        <xsd:documentation>
                           whether or not to report JVM GC metrics
                        </xsd:documentation>
                     </xsd:annotation>
                  </xsd:element>

                  <xsd:element name="netty-pool" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
                     <xsd:annotation>
                        <xsd:documentation>
                           whether or not to report Netty pool metrics
                        </xsd:documentation>
                     </xsd:annotation>
                  </xsd:element>

                  <xsd:element name="plugin" maxOccurs="1" minOccurs="0">
                     <xsd:complexType>
                        <xsd:annotation>
                           <xsd:documentation>
                              a metrics plugin
                           </xsd:documentation>
                        </xsd:annotation>
                        <xsd:sequence>
                           <xsd:element ref="property" maxOccurs="unbounded" minOccurs="0">
                              <xsd:annotation>
                                 <xsd:documentation>
                                    properties to configure a plugin
                                 </xsd:documentation>
                              </xsd:annotation>
                           </xsd:element>
                        </xsd:sequence>
                        <xsd:attribute name="class-name" type="xsd:string" use="required">
                           <xsd:annotation>
                              <xsd:documentation>
                                 the name of the metrics plugin class to instantiate
                              </xsd:documentation>
                           </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attributeGroup ref="xml:specialAttrs"/>
                     </xsd:complexType>
                  </xsd:element>
               </xsd:all>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </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:attributeGroup ref="xml:specialAttrs"/>
            </xsd:complexType>
         </xsd:element>

         <xsd:element name="resource-limit-settings" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  a list of resource limit settings
               </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:sequence>
                  <xsd:element ref="resource-limit-setting" maxOccurs="unbounded" minOccurs="0"/>
               </xsd:sequence>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </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:attributeGroup ref="xml:specialAttrs"/>
            </xsd:complexType>
         </xsd:element>

         <xsd:element name="addresses" type="addressesType" maxOccurs="1" minOccurs="0"/>

         <xsd:element name="network-check-list" type="xsd:string" default="" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  A comma separated list of IPs to be used to validate if the broker should be kept up
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="network-check-URL-list" type="xsd:string" default="" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  A comma separated list of URLs to be used to validate if the broker should be kept up
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="network-check-period" type="xsd:long" default="10000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  A frequency in milliseconds to how often we should check if the network is still up
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="network-check-timeout" type="xsd:long" default="1000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  A timeout used in milliseconds to be used on the ping.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="network-check-NIC" type="xsd:string" default="" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The network interface card name to be used to validate the address.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="network-check-ping-command" type="xsd:string" default="" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The ping command used to ping IPV4 addresses.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="network-check-ping6-command" type="xsd:string" default="" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The ping command used to ping IPV6 addresses.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="wildcard-addresses" type="wildcardType" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  parameters to configure wildcard address matching format
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:all>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </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>
            <xsd:element ref="local-bind-address" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     a local address to which the datagram socket is bound
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>
            <xsd:element ref="local-bind-port" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     a local port to which the datagram socket is bound
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>
            <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:attributeGroup ref="xml:specialAttrs"/>
      </xsd:complexType>
   </xsd:element>

   <xsd:element name="discovery-group">
      <xsd:complexType>
         <xsd:all>
            <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:attributeGroup ref="xml:specialAttrs"/>
      </xsd:complexType>
   </xsd:element>

   <xsd:element name="discovery-group-ref">
      <xsd:complexType>
         <xsd:attribute name="discovery-group-name" type="xsd:IDREF"/>
         <xsd:attributeGroup ref="xml:specialAttrs"/>
      </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:attributeGroup ref="xml:specialAttrs"/>
   </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:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <!-- BRIDGE CONFIGURATION -->
   <xsd:complexType name="bridgeType">
      <xsd:sequence>
         <xsd:element name="queue-name" type="xsd:string" 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="transformer" type="transformerType" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  optional transformer configuration
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="min-large-message-size" type="xsd:string" default="102400" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Any message larger than this size (in bytes) is considered a large message (to be sent in
                  chunks). Supports byte notation like "K", "Mb", "GB", etc.
               </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>
                  DEPRECATED: This setting has no impact, but it's being left here to avoid XML parsing errors for users
                  who still have it set. Failover on shutdown is controlled via the ha-policy set on the *broker* to
                  which the bridge connects.
               </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:string" maxOccurs="1" minOccurs="0" default="1048576">
            <xsd:annotation>
               <xsd:documentation>
                  Once the bridge has received this many bytes, it sends a confirmation. Supports byte notation like
                  "K", "Mb", "GB", etc.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="producer-window-size" type="xsd:string" maxOccurs="1" minOccurs="0" default="-1">
            <xsd:annotation>
               <xsd:documentation>
                  Producer flow control. Supports byte notation like "K", "Mb", "GB", etc.
               </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 resetting the server locator and using the initial connectors
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="routing-type" type="component-routing-type" default="PASS" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  how should the routing-type on the bridged messages be set?
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="concurrency" type="xsd:int" default="1" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Number of concurrent workers, more workers can help increase throughput on high latency networks.
                  Defaults to 1
               </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:attributeGroup ref="xml:specialAttrs"/>
               </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:attributeGroup ref="xml:specialAttrs"/>
               </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:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <!-- FEDERATION CONFIGURATION -->
   <xsd:complexType name="federationType">
      <xsd:sequence>
         <xsd:element name="upstream" type="upstreamType" minOccurs="0" maxOccurs="unbounded" />
         <xsd:element name="downstream" type="downstreamType" minOccurs="0" maxOccurs="unbounded" />
         <xsd:element name="policy-set" type="policySetType" minOccurs="0" maxOccurs="unbounded" />
         <xsd:element name="queue-policy" type="queuePolicyType" minOccurs="0" maxOccurs="unbounded" />
         <xsd:element name="address-policy" type="addressPolicyType" minOccurs="0" maxOccurs="unbounded" />
         <xsd:element name="transformer" type="federationTransformerType" minOccurs="0" maxOccurs="unbounded" />
      </xsd:sequence>
      <xsd:attribute name="name" type="xsd:ID" use="required" />
      <xsd:attribute name="user" type="xsd:string" use="optional" />
      <xsd:attribute name="password" type="xsd:string" use="optional" />
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="downstreamType">
      <xsd:complexContent>
         <xsd:extension base="streamType">
            <xsd:sequence>
               <xsd:element name="upstream-connector-ref" type="xsd:string" maxOccurs="1" minOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>
                        Name of the transport connector reference to use for the new upstream connection
                        back to this broker.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

   <xsd:complexType name="upstreamType">
      <xsd:complexContent>
         <xsd:extension base="streamType"/>
      </xsd:complexContent>
   </xsd:complexType>

   <xsd:complexType name="streamType">
      <xsd:sequence>

         <xsd:element name="ha" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  whether this connection supports fail-over
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="circuit-breaker-timeout" type="xsd:long" default="30000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  whether this connection supports fail-over
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="share-connection" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  if there is a downstream and upstream connection configured for the same broker then
                  the same connection will be shared as long as both stream configs set this flag to true
               </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="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="check-period" type="xsd:long" default="30000" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The period (in milliseconds) used to check if the federation connection has failed to receive pings from
                  another server
               </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: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:attributeGroup ref="xml:specialAttrs"/>
               </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 connection
                        </xsd:documentation>
                     </xsd:annotation>
                  </xsd:attribute>
                  <xsd:attributeGroup ref="xml:specialAttrs"/>
               </xsd:complexType>
            </xsd:element>
         </xsd:choice>
         <xsd:element name="policy" type="policyRefType" minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
      <xsd:attribute name="priority-adjustment" type="xsd:int" use="optional" />
      <xsd:attribute name="user" type="xsd:string" use="optional">
         <xsd:annotation>
            <xsd:documentation>
               username, if unspecified the federated user is used
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="password" type="xsd:string" use="optional">
         <xsd:annotation>
            <xsd:documentation>
               password, if unspecified the federated password is used
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="name" type="xsd:ID" use="required">
         <xsd:annotation>
            <xsd:documentation>
               unique name for this upstream
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>


   <xsd:complexType name="policySetType">
      <xsd:sequence>
         <xsd:element name="policy" type="policyRefType" minOccurs="0" maxOccurs="unbounded" />
      </xsd:sequence>
      <xsd:attribute name="name" type="xsd:ID" use="required" />
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>


   <xsd:complexType name="policyRefType">
      <xsd:attribute name="ref" type="xsd:string" use="required" />
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>


   <xsd:complexType name="queuePolicyType">
      <xsd:sequence>
         <xsd:element name="include" type="queueMatchType" minOccurs="0" maxOccurs="unbounded"/>
         <xsd:element name="exclude" type="queueMatchType" minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
      <xsd:attribute name="transformer-ref" type="xsd:string" use="optional" />
      <xsd:attribute name="priority-adjustment" type="xsd:int" use="optional" />
      <xsd:attribute name="include-federated" type="xsd:boolean" use="optional" />
      <xsd:attribute name="name" type="xsd:ID" use="required" />
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="queueMatchType">
      <xsd:attribute name="queue-match" type="xsd:string" use="required" />
      <xsd:attribute name="address-match" type="xsd:string" use="required" />
      <xsd:attributeGroup ref="xml:specialAttrs" />
   </xsd:complexType>


   <xsd:complexType name="addressPolicyType">
      <xsd:sequence>
         <xsd:element name="include" type="addressMatchType" minOccurs="0" maxOccurs="unbounded"/>
         <xsd:element name="exclude" type="addressMatchType" minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
      <xsd:attribute name="transformer-ref" type="xsd:string" use="optional" />
      <xsd:attribute name="auto-delete" type="xsd:boolean" use="optional" />
      <xsd:attribute name="auto-delete-delay" type="xsd:long" use="optional" />
      <xsd:attribute name="auto-delete-message-count" type="xsd:long" use="optional" />
      <xsd:attribute name="max-hops" type="xsd:int" use="optional" />
      <xsd:attribute name="name" type="xsd:ID" use="required" />
      <xsd:attribute name="enable-divert-bindings" type="xsd:boolean" use="optional" />
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="addressMatchType">
      <xsd:attribute name="address-match" type="xsd:string" use="required" />
      <xsd:attributeGroup ref="xml:specialAttrs" />
   </xsd:complexType>

   <xsd:complexType name="federationTransformerType">
      <xsd:sequence>
         <xsd:element name="class-name" type="xsd:string" maxOccurs="1" minOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  optional name of transformer class
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element ref="property"  maxOccurs="unbounded" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  properties to configure the transformer class
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:sequence>
      <xsd:attribute name="name" type="xsd:ID" use="required" />
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <!-- TRANSFORMER CONFIGURATION -->
   <xsd:complexType name="transformerType">
      <xsd:sequence>
         <xsd:element name="class-name" type="xsd:string" maxOccurs="1" minOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  optional name of transformer class
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element ref="property"  maxOccurs="unbounded" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  properties to configure the transformer class
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:sequence>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:element name="property">
      <xsd:complexType>
         <xsd:attribute name="key" type="xsd:string" use="required">
            <xsd:annotation>
               <xsd:documentation>
                  key for the property
               </xsd:documentation>
            </xsd:annotation>
         </xsd:attribute>
         <xsd:attribute name="value" type="xsd:string" use="required">
            <xsd:annotation>
               <xsd:documentation>
                  value for the property
               </xsd:documentation>
            </xsd:annotation>
         </xsd:attribute>
         <xsd:attributeGroup ref="xml:specialAttrs"/>
      </xsd:complexType>
   </xsd:element>


   <!-- CLUSTER CONNECTION CONFIGURATION -->

   <xsd:complexType name="clusterConnectionChoiceType">
      <xsd:sequence>
         <xsd:choice maxOccurs="unbounded">
            <xsd:element name="cluster-connection-uri" type="cluster-connectionUriType"/>
            <xsd:element name="cluster-connection" type="cluster-connectionType">
            </xsd:element>
         </xsd:choice>
      </xsd:sequence>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="brokerConnectType">
      <xsd:sequence maxOccurs="unbounded">
        <xsd:element name="amqp-connection" type="amqp-connectionUriType"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="amqp-connectionUriType">
      <xsd:sequence>
         <xsd:choice maxOccurs="unbounded">
            <xsd:element name="sender" type="amqp-address-match-type"/>
            <xsd:element name="receiver" type="amqp-address-match-type"/>
            <xsd:element name="peer" type="amqp-address-match-type"/>
            <xsd:element name="mirror" type="amqp-mirror-type"/>
         </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name="uri" type="xsd:string" use="required">
         <xsd:annotation>
            <xsd:documentation>
               uri of the amqp connection
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="auto-start" type="xsd:boolean" default="true">
         <xsd:annotation>
            <xsd:documentation>
               should the broker connection be started when the server is started.
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="reconnect-attempts" type="xsd:int" default="-1">
         <xsd:annotation>
            <xsd:documentation>
               How many attempts should be made to reconnect after failure
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="retry-interval" type="xsd:long" default="5000">
         <xsd:annotation>
            <xsd:documentation>
               period (in ms) between successive retries
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="user" type="xsd:string" default="">
         <xsd:annotation>
            <xsd:documentation>
               User name used to connect. If not defined it will try an anonymous connection.
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="password" type="xsd:string" default="">
         <xsd:annotation>
            <xsd:documentation>
               Password used to connect. If not defined it will try an anonymous connection.
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>

      <xsd:attribute name="name" type="xsd:string" use="required">
         <xsd:annotation>
            <xsd:documentation>
               name of the amqp connection
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="amqp-address-match-type">
      <xsd:attribute name="address-match" type="xsd:string" use="optional">
         <xsd:annotation>
            <xsd:documentation>
               address expression to match addresses
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="queue-name" type="xsd:string" use="optional">
         <xsd:annotation>
            <xsd:documentation>
               This is the exact queue name to be used.
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
   </xsd:complexType>
   <xsd:complexType name="amqp-mirror-type">
      <xsd:annotation>
         <xsd:documentation>
            This will determine that queues are mirrored towards this next broker.
            All events will be send towards this AMQP connection acting like a replica.
         </xsd:documentation>
      </xsd:annotation>

      <xsd:attribute name="message-acknowledgements" type="xsd:boolean" use="optional" default="true">
         <xsd:annotation>
            <xsd:documentation>
               Should mirror acknowledgements towards the other server
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="queue-creation" type="xsd:boolean" use="optional" default="true">
         <xsd:annotation>
            <xsd:documentation>
               Should mirror queue creation events for addresses and queues.
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="queue-removal" type="xsd:boolean" use="optional" default="true">
         <xsd:annotation>
            <xsd:documentation>
               Should mirror queue deletion events for addresses and queues.
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="durable" type="xsd:boolean" use="optional" default="true">
         <xsd:annotation>
            <xsd:documentation>
               This property will determine if the mirror will use a durable queue or not as a Store and Forward Queue.
               This is true by default.
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>

   </xsd:complexType>

   <xsd:complexType name="cluster-connectionUriType">
      <xsd:attribute name="address" type="xsd:string" use="required">
         <xsd:annotation>
            <xsd:documentation>
               uri of the cluster connection
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="name" type="xsd:string" use="required">
         <xsd:annotation>
            <xsd:documentation>
               name of the cluster connection
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="cluster-connectionType">
      <xsd:sequence>
         <xsd:element name="address" type="xsd:string" maxOccurs="1" minOccurs="0">
            <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:string" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Messages larger than this are considered large-messages. Supports byte notation like
                  "K", "Mb", "GB", etc.
               </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>
                  DEPRECATED: use message-load-balancing-type instead. Select STRICT to mimic
                  forward-when-no-consumers=true and ON_DEMAND to mimic forward-when-no-consumers=false.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="message-load-balancing" default="ON_DEMAND" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  how should messages be load balanced between servers in a cluster?
               </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
               <xsd:restriction base="xsd:string">
                  <xsd:enumeration value="OFF"/>
                  <xsd:enumeration value="STRICT"/>
                  <xsd:enumeration value="ON_DEMAND"/>
               </xsd:restriction>
            </xsd:simpleType>
         </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:string" 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. Supports
                  byte notation like "K", "Mb", "GB", etc.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="producer-window-size" type="xsd:string" maxOccurs="1" minOccurs="0" default="-1">
            <xsd:annotation>
               <xsd:documentation>
                  Producer flow control. Supports byte notation like "K", "Mb", "GB", etc.
               </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:attributeGroup ref="xml:specialAttrs"/>
               </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>
                           name of discovery group used by this cluster-connection
                        </xsd:documentation>
                     </xsd:annotation>
                  </xsd:attribute>
                  <xsd:attributeGroup ref="xml:specialAttrs"/>
               </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:attribute name="uri" type="xsd:string" use="optional">
         <xsd:annotation>
            <xsd:documentation>
               The URI for the cluster connection options
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>


   <xsd:complexType name="cluster-connection-uri-type">
      <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:attribute name="uri" type="xsd:string" use="required">
         <xsd:annotation>
            <xsd:documentation>
               The URI for the cluster connection options
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </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="transformer" type="transformerType" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  optional transformer configuration
               </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:element name="routing-type" type="component-routing-type" default="STRIP" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  how should the routing-type on the diverted messages be set?
               </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 divert
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="storeType">
      <xsd:choice>
         <xsd:element name="file-store" type="fileStoreType" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  Use a file based store for persisting journal, paging and large messages
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="database-store" type="databaseStoreType" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  Use a database for persisting journal, paging and large messages
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:choice>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="fileStoreType">
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="databaseStoreType">
      <xsd:all>
         <xsd:element name="jdbc-driver-class-name" type="xsd:string" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The JDBC Driver class name
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="jdbc-connection-url" type="xsd:string" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The JDBC Connection URL e.g. jdbc:mysql://localhost:3306/
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="jdbc-user" type="xsd:string" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The JDBC User to use for connecting to the database, NB this will only work with drivers where support
                  DriverManager.getConnection(String url, String user, String password). This can be encrypted.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="jdbc-password" type="xsd:string" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The JDBC Password to use for connecting to the database, NB this will only work with drivers where support
                  DriverManager.getConnection(String url, String user, String password). This can be encrypted.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="data-source-class-name" type="xsd:string" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The DataSource class name
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="data-source-properties" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  A list of options for the DataSource
               </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:sequence>
                  <xsd:element name="data-source-property" type="dataSourcePropertyType" minOccurs="1" maxOccurs="unbounded">
                     <xsd:annotation>
                        <xsd:documentation>
                           A key-value pair option for the DataSource
                        </xsd:documentation>
                     </xsd:annotation>
                  </xsd:element>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="message-table-name" type="xsd:string" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The table name used to store message journal entries
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="bindings-table-name" type="xsd:string" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The table name used to store bindings journal entries
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="large-message-table-name" type="xsd:string" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The table name used to large message files
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="page-store-table-name" type="xsd:string" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The table name used to large message files
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="node-manager-store-table-name" type="xsd:string" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The table name used to hold shared store data
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="jdbc-network-timeout" type="xsd:int" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The JDBC network connection timeout in milliseconds.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="jdbc-lock-renew-period" type="xsd:int" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The period in milliseconds of the keep alive service of a JDBC lock.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="jdbc-lock-expiration" type="xsd:int" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The time in milliseconds a JDBC lock is considered valid without keeping it alive.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="jdbc-journal-sync-period" type="xsd:string" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The JDBC jouranl sync period in milliseconds.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:all>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="dataSourcePropertyType">
      <xsd:attribute name="key" type="xsd:string" use="required">
         <xsd:annotation>
            <xsd:documentation>
               Configuration option key
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attribute name="value" type="xsd:string" use="required">
         <xsd:annotation>
            <xsd:documentation>
               Configuration option value
            </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:attributeGroup ref="xml:specialAttrs"/>
   </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:attributeGroup ref="xml:specialAttrs"/>
   </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 scaling down
               </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:sequence>
                  <xsd:element name="connector-ref" type="xsd:string" maxOccurs="unbounded" minOccurs="1"/>
               </xsd:sequence>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </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:attributeGroup ref="xml:specialAttrs"/>
   </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:attributeGroup ref="xml:specialAttrs"/>
   </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:attributeGroup ref="xml:specialAttrs"/>
   </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:attributeGroup ref="xml:specialAttrs"/>
   </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:element name="initial-replication-sync-timeout" type="xsd:long" default="30000" maxOccurs="1"
                      minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  The amount of time to wait for the replica to acknowledge it has received all the necessary data from
                  the replicating server at the final step of the initial replication synchronization process.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="vote-on-replication-failure" type="xsd:boolean" default="false" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  Whether or not this live broker should vote to remain as live if replication is lost.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="quorum-size" type="xsd:integer" default="-1" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  The quorum size used for voting after replication loss, -1 means use the current cluster size
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>

         <xsd:element name="vote-retries" type="xsd:integer" default="12" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  If we start as a replica and lose connection to the master, how many times should we attempt to vote
                  for quorum before restarting
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="vote-retry-wait" type="xsd:long" default="5000" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  How long to wait (in milliseconds) between each vote
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="quorum-vote-wait" type="xsd:integer" default="30" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  How long to wait (in seconds) for vote results
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="retry-replication-wait" type="xsd:long" default="2000" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  If we start as a replica how long to wait (in milliseconds) before trying to replicate again after failing to find a replica
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:all>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </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>
                  DEPRECATED: 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:element name="initial-replication-sync-timeout" type="xsd:long" default="30000" maxOccurs="1"
                      minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  If we have to start as a replicated server this is the amount of time to wait for the replica to
                  acknowledge it has received all the necessary data from the replicating server at the final step
                  of the initial replication synchronization process.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="vote-on-replication-failure" type="xsd:boolean" default="false" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  If we have to start as a replicated server decide whether or not this live broker should vote to remain
                  as live if replication is lost.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="quorum-size" type="xsd:integer" default="-1" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  If we have to start as a replicated server or we are a backup and lose connection to live, the quorum size
                  used for voting after replication loss, -1 means use the current cluster size
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="vote-retries" type="xsd:integer" default="12" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  If we lose connection to the master, how many times should we attempt to vote for quorum before restarting
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="vote-retry-wait" type="xsd:long" default="5000" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  How long to wait (in milliseconds) between each vote
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="retry-replication-wait" type="xsd:long" default="2000" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  How long to wait (in milliseconds) before trying to replicate again after failing to find a replica
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="quorum-vote-wait" type="xsd:integer" default="30" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  How long to wait (in seconds) for vote results
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:all>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </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:attributeGroup ref="xml:specialAttrs"/>
   </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>
                  DEPRECATED: 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="wait-for-activation" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
            <xsd:annotation>
               <xsd:documentation>
                  Will the master startup wait until it is activated
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:all>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </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>
                  DEPRECATED: 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:attributeGroup ref="xml:specialAttrs"/>
   </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:attributeGroup ref="xml:specialAttrs"/>
   </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:attributeGroup ref="xml:specialAttrs"/>
               </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:attributeGroup ref="xml:specialAttrs"/>
               </xsd:complexType>
            </xsd:element>
         </xsd:choice>
      </xsd:sequence>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </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="0">
            <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:attributeGroup ref="xml:specialAttrs"/>
   </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 name="dead-letter-address" type="xsd:string" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the address to send dead messages to
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-create-dead-letter-resources" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether or not to automatically create the dead-letter-address and/or a corresponding queue
                     on that address when a message found to be undeliverable
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="dead-letter-queue-prefix" type="xsd:string" default="DLQ." maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the prefix to use for auto-created dead letter queues
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="dead-letter-queue-suffix" type="xsd:string" default="" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the suffix to use for auto-created dead letter queues
                  </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="auto-create-expiry-resources" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether or not to automatically create the expiry-address and/or a corresponding queue
                     on that address when a message is sent to a matching queue
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="expiry-queue-prefix" type="xsd:string" default="EXP." maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the prefix to use for auto-created expiry queues
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="expiry-queue-suffix" type="xsd:string" default="" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the suffix to use for auto-created expiry queues
                  </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="min-expiry-delay" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     Overrides the expiration time for messages using a lower value. "-1" disables this setting.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="max-expiry-delay" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     Overrides the expiration time for messages using a higher value. "-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>
                     multiplier to apply to the "redelivery-delay"
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="redelivery-collision-avoidance-factor" type="xsd:double" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     factor by which to modify the redelivery delay slightly to avoid collisions
                  </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:string" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the maximum size (in bytes) for an address (-1 means no limits). This is used in PAGING, BLOCK and
                     FAIL policies. Supports byte notation like "K", "Mb", "GB", etc.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="max-size-bytes-reject-threshold" type="xsd:long" default="-1" maxOccurs="1"
                         minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     used with the address full BLOCK policy, the maximum size (in bytes) an address can reach before
                     messages start getting rejected. Works in combination with max-size-bytes for AMQP protocol only.
                     Default = -1 (no limit).
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="page-size-bytes" type="xsd:string" default="10485760" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     The page size (in bytes) to use for an address. Supports byte notation like "K", "Mb",
                     "GB", etc.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="page-max-cache-size" default="5" type="xsd:int" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     Number of paging files to cache in memory to avoid IO during paging navigation
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="address-full-policy" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     what happens when an address where "max-size-bytes" is specified becomes full
                  </xsd:documentation>
               </xsd:annotation>
               <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                     <xsd:enumeration value="DROP"/>
                     <xsd:enumeration value="FAIL"/>
                     <xsd:enumeration value="PAGE"/>
                     <xsd:enumeration value="BLOCK"/>
                  </xsd:restriction>
               </xsd:simpleType>
            </xsd:element>

            <xsd:element name="message-counter-history-day-limit" type="xsd:int" default="0" maxOccurs="1"
                         minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     how many days to keep message counter history for this address
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="last-value-queue" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     This is deprecated please use default-last-value-queue instead.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-last-value-queue" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether to treat the queues under the address as a last value queues by default
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-last-value-key" type="xsd:string" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the property to use as the key for a last value queue by default
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-non-destructive" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether the queue should be non-destructive by default
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-exclusive-queue" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether to treat the queues under the address as exclusive queues by default
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-group-rebalance" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether to rebalance groups when a consumer is added
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-group-rebalance-pause-dispatch" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether to pause dispatch when rebalancing groups
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-group-buckets" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     number of buckets to use for grouping, -1 (default) is unlimited and uses the raw group, 0 disables message groups.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-group-first-key" type="xsd:string" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     key used to mark a message is first in a group for a consumer
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-consumers-before-dispatch" type="xsd:int" default="0" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the default number of consumers needed before dispatch can start for queues under the address.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-delay-before-dispatch" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the default delay (in milliseconds) to wait before dispatching if number of consumers before
                     dispatch is not met for queues under the address.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="redistribution-delay" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     how long (in ms) to wait after the last consumer is closed on a queue before redistributing
                     messages.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="send-to-dla-on-no-route" type="xsd:boolean" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     if there are no queues matching this address, whether to forward message to DLA (if it exists for
                     this address)
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="slow-consumer-threshold" type="xsd:long" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     The minimum rate of message consumption allowed before a consumer is considered "slow."  Measurement
                     unit is defined by the slow-consumer-threshold-measurement-unit parameter.  By default this is
                     messages-per-seconds
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="slow-consumer-threshold-measurement-unit" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     The units used to measure the slow consumer threshold.  Default is messages-per-second.
                  </xsd:documentation>
               </xsd:annotation>
               <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                     <xsd:enumeration value="MESSAGES_PER_SECOND"/>
                     <xsd:enumeration value="MESSAGES_PER_MINUTE"/>
                     <xsd:enumeration value="MESSAGES_PER_HOUR"/>
                     <xsd:enumeration value="MESSAGES_PER_DAY"/>
                  </xsd:restriction>
               </xsd:simpleType>
            </xsd:element>

            <xsd:element name="slow-consumer-policy" default="NOTIFY" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     what happens when a slow consumer is identified
                  </xsd:documentation>
               </xsd:annotation>
               <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                     <xsd:enumeration value="KILL"/>
                     <xsd:enumeration value="NOTIFY"/>
                  </xsd:restriction>
               </xsd:simpleType>
            </xsd:element>

            <xsd:element name="slow-consumer-check-period" type="xsd:long" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     How often to check for slow consumers on a particular queue. Measured in seconds.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-create-jms-queues" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     DEPRECATED: whether or not to automatically create JMS queues when a producer sends or a consumer connects to a
                     queue
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-delete-jms-queues" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     DEPRECATED: whether or not to delete auto-created JMS queues when the queue has 0 consumers and 0 messages
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-create-jms-topics" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     DEPRECATED: whether or not to automatically create JMS topics when a producer sends or a consumer subscribes to
                     a topic
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-delete-jms-topics" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     DEPRECATED: whether or not to delete auto-created JMS topics when the last subscription is closed
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-create-queues" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether or not to automatically create a queue when a client sends a message to or attempts to consume
                     a message from a queue
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-delete-queues" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether or not to delete auto-created queues when the queue has 0 consumers and 0 messages
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-delete-created-queues" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether or not to delete created queues when the queue has 0 consumers and 0 messages
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-delete-queues-delay" type="xsd:long" default="0" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     how long to wait (in milliseconds) before deleting auto-created queues after the queue has 0
                     consumers.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-delete-queues-message-count" type="xsd:long" default="0" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the message count the queue must be at or below before it can be evaluated to be auto deleted, 0 waits until empty queue (default) and -1 disables this check.
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="config-delete-queues" default="OFF" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                      What to do when a queue is no longer in broker.xml.
                     OFF = will do nothing queues will remain,
                     FORCE = delete queues even if messages remaining.
                  </xsd:documentation>
               </xsd:annotation>
               <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                     <xsd:enumeration value="OFF"/>
                     <xsd:enumeration value="FORCE"/>
                  </xsd:restriction>
               </xsd:simpleType>
            </xsd:element>

            <xsd:element name="auto-create-addresses" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether or not to automatically create addresses when a client sends a message to or attempts to
                     consume a message from a queue mapped to an address that doesn't exist
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-delete-addresses" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether or not to delete auto-created addresses when it no longer has any queues
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="auto-delete-addresses-delay" type="xsd:long" default="0" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     how long to wait (in milliseconds) before deleting auto-created addresses after they no longer
                     have any queues
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="config-delete-addresses" default="OFF" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     What to do when an address is no longer in broker.xml.
                     OFF = will do nothing addresses will remain,
                     FORCE = delete address and its queues even if messages remaining.
                  </xsd:documentation>
               </xsd:annotation>
               <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                     <xsd:enumeration value="OFF"/>
                     <xsd:enumeration value="FORCE"/>
                  </xsd:restriction>
               </xsd:simpleType>
            </xsd:element>

            <xsd:element name="config-delete-diverts" default="OFF" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     What to do when a divert is no longer in broker.xml.
                     OFF = will do nothing queues will remain,
                     FORCE = delete queues even if messages remaining.
                  </xsd:documentation>
               </xsd:annotation>
               <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                     <xsd:enumeration value="OFF"/>
                     <xsd:enumeration value="FORCE"/>
                  </xsd:restriction>
               </xsd:simpleType>
            </xsd:element>

            <xsd:element name="management-browse-page-size" type="xsd:int" default="200" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     how many message a management resource can browse, list or filter
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="management-message-attribute-size-limit" type="xsd:int" default="256" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the size limit of any message attribute value returned from a browse ,list or filter. Attribute values that exceed with be truncated
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-purge-on-no-consumers" type="xsd:boolean" default="false" maxOccurs="1"
                         minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     purge the contents of the queue once there are no consumers
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-max-consumers" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the maximum number of consumers allowed on this queue at any one time
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-queue-routing-type" type="routing-type" default="MULTICAST" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the routing-type used on auto-created queues
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-address-routing-type" type="routing-type" default="MULTICAST" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the routing-type used on auto-created addresses
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-consumer-window-size" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the default window size for a consumer
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="default-ring-size" type="xsd:long" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the default ring-size value for any matching queue which doesn't have `ring-size` explicitly
                     defined
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="retroactive-message-count" type="xsd:long" default="0" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     the number of messages to preserve for future queues created on the matching address
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="enable-metrics" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether or not to enable metrics for metrics plugins on the matching address
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="enable-ingress-timestamp" type="xsd:boolean" default="false" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     whether or not the broker should set its own timestamp on incoming messages to the matching address
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

         </xsd:all>

         <xsd:attribute name="match" type="xsd:string" use="required">
            <xsd:annotation>
               <xsd:documentation>
                  pattern for matching settings against addresses; can use wildards
               </xsd:documentation>
            </xsd:annotation>
         </xsd:attribute>
         <xsd:attributeGroup ref="xml:specialAttrs"/>
      </xsd:complexType>
   </xsd:element>

   <xsd:element name="resource-limit-setting">
      <xsd:complexType>
         <xsd:annotation>
            <xsd:documentation>
               Complex type element to configure resource limits for a particular user.
            </xsd:documentation>
         </xsd:annotation>
         <xsd:all>
            <xsd:element name="max-connections" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     how many connections are allowed by the matched user (-1 means no limit, default is -1)
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>

            <xsd:element name="max-queues" type="xsd:int" default="-1" maxOccurs="1" minOccurs="0">
               <xsd:annotation>
                  <xsd:documentation>
                     how many queues can be created by the matched user (-1 means no limit, default is -1)
                  </xsd:documentation>
               </xsd:annotation>
            </xsd:element>
         </xsd:all>

         <xsd:attribute name="match" type="xsd:string" use="required">
            <xsd:annotation>
               <xsd:documentation>
                  the name of the user to whom the limits should be applied
               </xsd:documentation>
            </xsd:annotation>
         </xsd:attribute>
         <xsd:attributeGroup ref="xml:specialAttrs"/>
      </xsd:complexType>
   </xsd:element>

   <xsd:element name="filter">
      <xsd:complexType>
         <xsd:annotation>
            <xsd:documentation>
               optional core filter expression (set through attribute)
            </xsd:documentation>
         </xsd:annotation>
         <xsd:attribute name="string" type="xsd:string" use="required">
            <xsd:annotation>
               <xsd:documentation>
                  optional core filter expression
               </xsd:documentation>
            </xsd:annotation>
         </xsd:attribute>
         <xsd:attributeGroup ref="xml:specialAttrs"/>
      </xsd:complexType>
   </xsd:element>

   <xsd:complexType name="connector-serviceType">
      <xsd:sequence>
         <xsd:element maxOccurs="1" minOccurs="1" name="factory-class" type="xsd:string">
            <xsd:annotation>
               <xsd:documentation>
                  Name of the factory class of the ConnectorService
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element maxOccurs="unbounded" minOccurs="0" name="param" type="paramType"/>
      </xsd:sequence>
      <xsd:attribute name="name" type="xsd:string" use="optional">
         <xsd:annotation>
            <xsd:documentation>
               name of the connector service
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="transportType">
      <xsd:simpleContent>
         <xsd:extension base="xsd:string">
            <xsd:attribute name="name" type="xsd:string">
            </xsd:attribute>
         </xsd:extension>
      </xsd:simpleContent>
   </xsd:complexType>

   <!-- 2.0 Addressing configuration -->

   <xsd:simpleType name="routing-type">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="ANYCAST"/>
         <xsd:enumeration value="MULTICAST"/>
      </xsd:restriction>
   </xsd:simpleType>

   <xsd:simpleType name="component-routing-type">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="ANYCAST"/>
         <xsd:enumeration value="MULTICAST"/>
         <xsd:enumeration value="STRIP"/>
         <xsd:enumeration value="PASS"/>
      </xsd:restriction>
   </xsd:simpleType>

   <xsd:complexType name="queueType">
      <xsd:all>
         <xsd:element ref="filter" maxOccurs="1" minOccurs="0"/>
         <xsd:element name="durable" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0" />
         <xsd:element name="user" type="xsd:string" maxOccurs="1" minOccurs="0" />
      </xsd:all>
      <xsd:attribute name="name" type="xsd:string" use="required"/>
      <xsd:attribute name="max-consumers" type="xsd:integer" use="optional"/>
      <xsd:attribute name="purge-on-no-consumers" type="xsd:boolean" use="optional"/>
      <xsd:attribute name="exclusive" type="xsd:boolean" use="optional"/>
      <xsd:attribute name="group-rebalance" type="xsd:boolean" use="optional"/>
      <xsd:attribute name="group-buckets" type="xsd:int" use="optional"/>
      <xsd:attribute name="group-first-key" type="xsd:string" use="optional"/>
      <xsd:attribute name="last-value" type="xsd:boolean" use="optional"/>
      <xsd:attribute name="last-value-key" type="xsd:string" use="optional"/>
      <xsd:attribute name="non-destructive" type="xsd:boolean" use="optional"/>
      <xsd:attribute name="consumers-before-dispatch" type="xsd:int" use="optional"/>
      <xsd:attribute name="delay-before-dispatch" type="xsd:long" use="optional"/>
      <xsd:attribute name="ring-size" type="xsd:long" use="optional"/>
      <xsd:attribute name="enabled" type="xsd:boolean" use="optional"/>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="addressType">
      <xsd:all>
         <xsd:element name="anycast" 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" type="queueType" maxOccurs="unbounded" minOccurs="0" />
               </xsd:sequence>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="multicast" 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" type="queueType" maxOccurs="unbounded" minOccurs="0" />
               </xsd:sequence>
               <xsd:attributeGroup ref="xml:specialAttrs"/>
            </xsd:complexType>
         </xsd:element>
      </xsd:all>
      <xsd:attribute name="name" type="xsd:string" use="required">
         <xsd:annotation>
            <xsd:documentation>
               The address name to match incoming message addresses
            </xsd:documentation>
         </xsd:annotation>
      </xsd:attribute>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="addressesType">
      <xsd:sequence>
         <xsd:element name="address" type="addressType" maxOccurs="unbounded" minOccurs="0"/>
      </xsd:sequence>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

   <xsd:complexType name="wildcardType">
      <xsd:annotation>
         <xsd:documentation>
            Complex type element to configure wildcard address format.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:all>
         <xsd:element maxOccurs="1" minOccurs="0" name="enabled" type="xsd:boolean">
            <xsd:annotation>
               <xsd:documentation>
                  deprecated please use routing-enabled.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element maxOccurs="1" minOccurs="0" name="routing-enabled" type="xsd:boolean">
            <xsd:annotation>
               <xsd:documentation>
                  is wildcard addresses routing enabled.
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element maxOccurs="1" minOccurs="0" name="delimiter" type="xsd:string">
            <xsd:annotation>
               <xsd:documentation>
                  wildcard address parts delimiter. Default '.'
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element maxOccurs="1" minOccurs="0" name="any-words" type="xsd:string">
            <xsd:annotation>
               <xsd:documentation>
                  wildcard address any words character. Default '#'
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element maxOccurs="1" minOccurs="0" name="single-word" type="xsd:string">
            <xsd:annotation>
               <xsd:documentation>
                  wildcard address single word character. Default '*'
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:all>
      <xsd:attributeGroup ref="xml:specialAttrs"/>
   </xsd:complexType>

</xsd:schema>
