You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2023/08/14 10:11:23 UTC

[camel-website] 02/02: Make camel-spring XSD as the new 4.0 LTS release

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-website.git

commit 1b0e482d769fad58155407b9d00797468eecb32c
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Aug 14 12:11:10 2023 +0200

    Make camel-spring XSD as the new 4.0 LTS release
---
 static/schema/spring/camel-spring.xsd | 18501 ++++++++++----------------------
 1 file changed, 5743 insertions(+), 12758 deletions(-)

diff --git a/static/schema/spring/camel-spring.xsd b/static/schema/spring/camel-spring.xsd
index 7ab171f6..d75b0af5 100644
--- a/static/schema/spring/camel-spring.xsd
+++ b/static/schema/spring/camel-spring.xsd
@@ -1,24261 +1,17246 @@
 <?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://camel.apache.org/schema/spring" elementFormDefault="qualified" targetNamespace="http://camel.apache.org/schema/spring" version="1.0">
-    
   <xs:element name="aggregate" type="tns:aggregateDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Aggregates many messages into a single message
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
-  <xs:element name="any23" type="tns:any23DataFormat">
-    <xs:annotation>
-      <xs:documentation xml:lang="en">
-        <![CDATA[
-Extract RDF data from HTML documents.
-      ]]>
-      </xs:documentation>
-    </xs:annotation>
-  </xs:element>
-    
   <xs:element name="apiKey" type="tns:apiKeyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest security basic auth definition
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="asn1" type="tns:asn1DataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Encode and decode data structures using Abstract Syntax Notation One (ASN.1).
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="avro" type="tns:avroDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Serialize and deserialize messages using Apache Avro binary data format.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="barcode" type="tns:barcodeDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Transform strings to various 1D/2D barcode bitmap formats and back.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="base64" type="tns:base64DataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Encode and decode data using Base64.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="basicAuth" type="tns:basicAuthDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest security basic auth definition
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="batch-config" type="tns:batchResequencerConfig">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configures batch-processing resequence eip.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="bean" type="tns:beanDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Calls a Java bean
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="beanPostProcessor" type="tns:camelBeanPostProcessor">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Spring specific DefaultCamelBeanPostProcessor which uses Spring
-BeanPostProcessor to post process beans.
-      ]]>
+<![CDATA[
+Spring specific DefaultCamelBeanPostProcessor which uses Spring BeanPostProcessor to post process beans.
+]]>
+      </xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:element name="beans" type="tns:beansDefinition">
+    <xs:annotation>
+      <xs:documentation xml:lang="en">
+<![CDATA[
+A groupping POJO (and related XML root element) that's historically associated with entire application (or its
+distinguished fragment). This class is not meant to be used with Camel Java DSL, but it's needed to generate XML Schema
+and MX parser methods.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="bearerToken" type="tns:bearerTokenDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest security bearer token authentication definition
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="bindy" type="tns:bindyDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Marshal and unmarshal Java beans from and to flat payloads (such as CSV,
-delimited, fixed length formats, or FIX messages).
-      ]]>
+<![CDATA[
+Marshal and unmarshal Java beans from and to flat payloads (such as CSV, delimited, fixed length formats, or FIX
+messages).
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="blacklistServiceFilter" type="tns:blacklistServiceCallServiceFilterConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="cachingServiceDiscovery" type="tns:cachingServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
+      </xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:element name="camel" type="tns:applicationDefinition">
+    <xs:annotation>
+      <xs:documentation xml:lang="en">
+<![CDATA[
+If beans reminds Spring application too much, we can use camel.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="camelContext" type="tns:camelContextFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 CamelContext using XML configuration.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="cbor" type="tns:cborDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Unmarshal a CBOR payload to POJO and back.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="choice" type="tns:choiceDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Route messages based on a series of predicates
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="circuitBreaker" type="tns:circuitBreakerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Route messages in a fault tolerance way using Circuit Breaker
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="claimCheck" type="tns:claimCheckDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-The Claim Check EIP allows you to replace message content with a claim check (a
-unique key), which can be used to retrieve the message content at a later time.
-      ]]>
+<![CDATA[
+The Claim Check EIP allows you to replace message content with a claim check (a unique key), which can be used to
+retrieve the message content at a later time.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="combinedServiceDiscovery" type="tns:combinedServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="combinedServiceFilter" type="tns:combinedServiceCallServiceFilterConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="constant" type="tns:constantExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A fixed value set only once during the route startup.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="consulServiceDiscovery" type="tns:consulServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="consumerTemplate" type="tns:camelConsumerTemplateFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configures a ConsumerTemplate
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="contextScan" type="tns:contextScanDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Scans for Java org.apache.camel.builder.RouteBuilder instances in the context
-org.apache.camel.spi.Registry .
-      ]]>
+<![CDATA[
+Scans for Java org.apache.camel.builder.RouteBuilder instances in the context org.apache.camel.spi.Registry .
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="convertBodyTo" type="tns:convertBodyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Converts the message body to another type
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="crypto" type="tns:cryptoDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Encrypt and decrypt messages using Java Cryptography Extension (JCE).
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="csimple" type="tns:cSimpleExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluate a compiled simple expression.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="csv" type="tns:csvDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Handle CSV (Comma Separated Values) payloads.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="custom" type="tns:customDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Delegate to a custom org.apache.camel.spi.DataFormat implementation via Camel
-registry.
-      ]]>
+<![CDATA[
+Delegate to a custom org.apache.camel.spi.DataFormat implementation via Camel registry.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="customLoadBalancer" type="tns:customLoadBalancerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To use a custom load balancer implementation.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="customServiceFilter" type="tns:customServiceCallServiceFilterConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="dataFormats" type="tns:dataFormatsDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configure data formats.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="datasonnet" type="tns:datasonnetExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To use DataSonnet scripts for message transformations.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="deadLetterChannel" type="tns:deadLetterChannelDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Error handler with dead letter queue.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="defaultErrorHandler" type="tns:defaultErrorHandlerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 The default error handler.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="defaultLoadBalancer" type="tns:defaultServiceCallServiceLoadBalancerConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="delay" type="tns:delayDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Delays processing for a specified length of time
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="delete" type="tns:deleteDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest DELETE command
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
-  <xs:element name="description" type="tns:descriptionDefinition">
-    <xs:annotation>
-      <xs:documentation xml:lang="en">
-        <![CDATA[
-To provide comments about the node.
-      ]]>
-      </xs:documentation>
-    </xs:annotation>
-  </xs:element>
-    
   <xs:element name="dnsServiceDiscovery" type="tns:dnsServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="doCatch" type="tns:catchDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Catches exceptions as part of a try, catch, finally block
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="doFinally" type="tns:finallyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Path traversed when a try, catch, finally block exits
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="doTry" type="tns:tryDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marks the beginning of a try, catch, finally block
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="dynamicRouter" type="tns:dynamicRouterDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Route messages based on dynamic rules
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="endpoint" type="tns:camelEndpointFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Camel endpoint configuration
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="enrich" type="tns:enrichDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Enriches a message with data from a secondary resource
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="errorHandler" nillable="true" type="xs:anyType">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Error handler settings
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="exchangeProperty" type="tns:exchangePropertyExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Gets a property from the Exchange.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="expression" type="tns:expressionSubElementDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A useful base class for an expression
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="expressionDefinition" type="tns:expression"/>
-    
   <xs:element name="failover" type="tns:failoverLoadBalancerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 In case of failures the exchange will be tried on the next endpoint.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="faultToleranceConfiguration" type="tns:faultToleranceConfigurationDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 MicroProfile Fault Tolerance Circuit Breaker EIP configuration
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="fhirJson" type="tns:fhirJsonDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshall and unmarshall FHIR objects to/from JSON.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="fhirXml" type="tns:fhirXmlDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshall and unmarshall FHIR objects to/from XML.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="filter" type="tns:filterDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Filter out messages based using a predicate
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="flatpack" type="tns:flatpackDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Marshal and unmarshal Java lists and maps to/from flat files (such as CSV,
-delimited, or fixed length formats) using Flatpack library.
-      ]]>
+<![CDATA[
+Marshal and unmarshal Java lists and maps to/from flat files (such as CSV, delimited, or fixed length formats) using
+Flatpack library.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="fluentTemplate" type="tns:camelFluentProducerTemplateFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configures a org.apache.camel.FluentProducerTemplate
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="from" type="tns:fromDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Act as a message source as input to a route
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="get" type="tns:getDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest GET command
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="globalOption" type="tns:globalOptionDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Models a string key/value pair for configuring some global options on a Camel
-context such as max debug log length.
-      ]]>
+<![CDATA[
+Models a string key/value pair for configuring some global options on a Camel context such as max debug log length.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="globalOptions" type="tns:globalOptionsDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Models a series of string key/value pairs for configuring some global options on
-a Camel context such as max debug log length.
-      ]]>
+<![CDATA[
+Models a series of string key/value pairs for configuring some global options on a Camel context such as max debug log
+length.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="grok" type="tns:grokDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Unmarshal unstructured data to objects using Logstash based Grok patterns.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="groovy" type="tns:groovyExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a Groovy script.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="gzipDeflater" type="tns:gzipDeflaterDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Compress and decompress messages using java.util.zip.GZIPStream.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="head" type="tns:headDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest HEAD command
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="header" type="tns:headerExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Gets a header from the Exchange.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="healthyServiceFilter" type="tns:healthyServiceCallServiceFilterConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="hl7" type="tns:hl7DataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshal and unmarshal HL7 (Health Care) model objects using the HL7 MLLP codec.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="hl7terser" type="tns:hl7TerserExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Get the value of a HL7 message field specified by terse location specification
-syntax.
-      ]]>
+<![CDATA[
+Get the value of a HL7 message field specified by terse location specification syntax.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="ical" type="tns:icalDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshal and unmarshal iCal (.ics) documents to/from model objects.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="idempotentConsumer" type="tns:idempotentConsumerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Filters out duplicate messages
-      ]]>
-      </xs:documentation>
-    </xs:annotation>
-  </xs:element>
-    
-  <xs:element name="inOnly" type="tns:inOnlyDefinition">
-    <xs:annotation>
-      <xs:documentation xml:lang="en">
-        <![CDATA[
-Deprecated: Marks the exchange pattern for the route to one way
-      ]]>
-      </xs:documentation>
-    </xs:annotation>
-  </xs:element>
-    
-  <xs:element name="inOut" type="tns:inOutDefinition">
-    <xs:annotation>
-      <xs:documentation xml:lang="en">
-        <![CDATA[
-Deprecated: Marks the exchange pattern for the route to request/reply
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="inputType" type="tns:inputTypeDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Set the expected data type of the input message. If the actual message type is
-different at runtime, camel look for a required Transformer and apply if exists.
-If validate attribute is true then camel applies Validator as well. Type name
-consists of two parts, 'scheme' and 'name' connected with ':'. For Java type
-'name' is a fully qualified class name. For example {code java:java.lang.String}
-, {code json:ABCOrder} . It's also possible to specify only scheme part, so that
-it works like a wildcard. If only 'xml' is specified, all the XML message
-matches. It's handy to add only one transformer/validator for all the
-transformation from/to XML.
-      ]]>
+<![CDATA[
+Set the expected data type of the input message. If the actual message type is different at runtime, camel look for a
+required Transformer and apply if exists. If validate attribute is true then camel applies Validator as well. Type name
+consists of two parts, 'scheme' and 'name' connected with ':'. For Java type 'name' is a fully qualified class name. For
+example {code java:java.lang.String} , {code json:ABCOrder} . It's also possible to specify only scheme part, so that it
+works like a wildcard. If only 'xml' is specified, all the XML message matches. It's handy to add only one
+transformer/validator for all the transformation from/to XML.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="intercept" type="tns:interceptDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Intercepts a message at each step in the route
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="interceptFrom" type="tns:interceptFromDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Intercepts incoming messages
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="interceptSendToEndpoint" type="tns:interceptSendToEndpointDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Intercepts messages being sent to an endpoint
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="jacksonXml" type="tns:jacksonXMLDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Unmarshal an XML payloads to POJOs and back using XMLMapper extension of
-Jackson.
-      ]]>
+<![CDATA[
+Unmarshal an XML payloads to POJOs and back using XMLMapper extension of Jackson.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="jaxb" type="tns:jaxbDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Unmarshal XML payloads to POJOs and back using JAXB2 XML marshalling standard.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="jmxAgent" type="tns:camelJMXAgentDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 JMX configuration.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="joor" type="tns:joorExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a jOOR (Java compiled once at runtime) expression.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="jq" type="tns:jqExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a JQ expression against a JSON message body.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="js" type="tns:javaScriptExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a JavaScript expression.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="json" type="tns:jsonDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshal POJOs to JSON and back.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="jsonApi" type="tns:jsonApiDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshal and unmarshal JSON:API resources using JSONAPI-Converter library.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="jsonpath" type="tns:jsonPathExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a JSONPath expression against a JSON message body.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="jtaTransactionErrorHandler" type="tns:jtaTransactionErrorHandlerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 JTA based transactional error handler (requires camel-jta).
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="kamelet" type="tns:kameletDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To call Kamelets in special situations
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="keyStoreParameters" type="tns:keyStoreParametersFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Key store facility for cryptographic keys and certificates
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="kubernetesServiceDiscovery" type="tns:kubernetesServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="language" type="tns:languageExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a custom language.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="loadBalance" type="tns:loadBalanceDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Balances message processing among a number of nodes
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="loadBalancerConfiguration" type="tns:serviceCallServiceLoadBalancerConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="log" type="tns:logDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Logs the defined message to the logger
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="loop" type="tns:loopDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Processes a message multiple times
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="lzf" type="tns:lzfDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Compress and decompress streams using LZF deflate algorithm.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="marshal" type="tns:marshalDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Marshals data into a specified format for transmission over a transport or
-component
-      ]]>
+<![CDATA[
+Marshals data into a specified format for transmission over a transport or component
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="method" type="tns:methodCallExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Calls a Java bean method.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="mimeMultipart" type="tns:mimeMultipartDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshal Camel messages with attachments into MIME-Multipart messages and back.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="multicast" type="tns:multicastDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Routes the same message to multiple paths either sequentially or in parallel.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="mutualTLS" type="tns:mutualTLSDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest security mutual TLS authentication definition
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="mvel" type="tns:mvelExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a MVEL template.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="noErrorHandler" type="tns:noErrorHandlerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To not use an error handler.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="oauth2" type="tns:oAuth2Definition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest security OAuth2 definition
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="ognl" type="tns:ognlExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates an OGNL expression (Apache Commons OGNL).
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="onCompletion" type="tns:onCompletionDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Route to be executed when normal route processing completes
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="onException" type="tns:onExceptionDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Route to be executed when an exception is thrown
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="onFallback" type="tns:onFallbackDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Route to be executed when Circuit Breaker EIP executes fallback
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="openIdConnect" type="tns:openIdConnectDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest security OpenID Connect definition
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="optimisticLockRetryPolicy" type="tns:optimisticLockRetryPolicyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To configure optimistic locking
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="otherwise" type="tns:otherwiseDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Route to be executed when all other choices evaluate to false
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="outputType" type="tns:outputTypeDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Set the expected data type of the output message. If the actual message type is
-different at runtime, camel look for a required Transformer and apply if exists.
-If validate attribute is true then camel applies Validator as well. Type name
-consists of two parts, 'scheme' and 'name' connected with ':'. For Java type
-'name' is a fully qualified class name. For example {code java:java.lang.String}
-, {code json:ABCOrder} . It's also possible to specify only scheme part, so that
-it works like a wildcard. If only 'xml' is specified, all the XML message
-matches. It's handy to add only one transformer/validator for all the XML-Java
-transformation.
-      ]]>
+<![CDATA[
+Set the expected data type of the output message. If the actual message type is different at runtime, camel look for a
+required Transformer and apply if exists. If validate attribute is true then camel applies Validator as well. Type name
+consists of two parts, 'scheme' and 'name' connected with ':'. For Java type 'name' is a fully qualified class name. For
+example {code java:java.lang.String} , {code json:ABCOrder} . It's also possible to specify only scheme part, so that it
+works like a wildcard. If only 'xml' is specified, all the XML message matches. It's handy to add only one
+transformer/validator for all the XML-Java transformation.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="packageScan" type="tns:packageScanDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Scans for Java org.apache.camel.builder.RouteBuilder classes in java packages
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="param" type="tns:paramDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To specify the rest operation parameters.
-      ]]>
+]]>
+      </xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:element name="parquetAvro" type="tns:parquetAvroDataFormat">
+    <xs:annotation>
+      <xs:documentation xml:lang="en">
+<![CDATA[
+Parquet Avro serialization and de-serialization.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="passThroughServiceFilter" type="tns:passThroughServiceCallServiceFilterConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="patch" type="tns:patchDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest PATCH command
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="pausable" type="tns:pausableDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Pausable EIP to support resuming processing from last known offset.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="pgp" type="tns:pgpDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Encrypt and decrypt messages using Java Cryptographic Extension (JCE) and PGP.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="pipeline" type="tns:pipelineDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Routes the message to a sequence of processors.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="policy" type="tns:policyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Defines a policy the route will use
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="pollEnrich" type="tns:pollEnrichDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Enriches messages with data polled from a secondary resource
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="post" type="tns:postDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest POST command
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="process" type="tns:processDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Calls a Camel processor
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="propertiesFunction" type="tns:camelPropertyPlaceholderFunctionDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Function to use with properties placeholder
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="propertiesLocation" type="tns:camelPropertyPlaceholderLocationDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Properties to use with properties placeholder
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="property" type="tns:propertyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A key value pair where the value is a literal value
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="propertyExpression" type="tns:propertyExpressionDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A key value pair where the value is an expression.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="propertyPlaceholder" type="tns:camelPropertyPlaceholderDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Properties placeholder
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="protobuf" type="tns:protobufDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Serialize and deserialize Java objects using Google's Protocol buffers.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="put" type="tns:putDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest PUT command
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="python" type="tns:pythonExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a Python expression.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="random" type="tns:randomLoadBalancerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 The destination endpoints are selected by random.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="recipientList" type="tns:recipientListDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Route messages to a number of dynamically specified recipients
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="redeliveryPolicy" type="tns:redeliveryPolicyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To configure re-delivery for error handling
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="redeliveryPolicyProfile" type="tns:camelRedeliveryPolicyFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configuration of redelivery policy.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="ref" type="tns:refExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Uses an existing expression from the registry.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="refErrorHandler" type="tns:refErrorHandlerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 References to an existing or custom error handler.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="removeHeader" type="tns:removeHeaderDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Removes a named header from the message
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="removeHeaders" type="tns:removeHeadersDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Removes message headers whose name matches a specified pattern
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="removeProperties" type="tns:removePropertiesDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Removes message exchange properties whose name matches a specified pattern
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="removeProperty" type="tns:removePropertyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Removes a named property from the message exchange
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="resequence" type="tns:resequenceDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Resequences (re-order) messages based on an expression
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="resilience4jConfiguration" type="tns:resilience4JConfigurationDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Resilience4j Circuit Breaker EIP configuration
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="responseHeader" type="tns:responseHeaderDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To specify the rest operation response headers.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="responseMessage" type="tns:responseMessageDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To specify the rest operation response messages.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="rest" type="tns:restDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Defines a rest service using the rest-dsl
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="restBinding" type="tns:restBindingDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To configure rest binding
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="restConfiguration" type="tns:restConfigurationDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To configure rest
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="restContext" type="tns:camelRestContextFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configuration of REST services using rest-dsl using XML
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="restContextRef" type="tns:restContextRefDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To refer to an XML file with rest services defined using the rest-dsl
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="restProperty" type="tns:restPropertyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A key value pair
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="rests" type="tns:restsDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A series of rest services defined using the rest-dsl
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="resumable" type="tns:resumableDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Resume EIP to support resuming processing from last known offset.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="rollback" type="tns:rollbackDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Forces a rollback by stopping routing the message
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="roundRobin" type="tns:roundRobinLoadBalancerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-The destination endpoints are selected in a round-robin fashion. This is a well
-known and classic policy, which spreads the load evenly.
-      ]]>
+<![CDATA[
+The destination endpoints are selected in a round-robin fashion. This is a well known and classic policy, which spreads
+the load evenly.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="route" type="tns:routeDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A Camel route
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeBuilder" type="tns:routeBuilderDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To refer to a Java org.apache.camel.builder.RouteBuilder instance to use.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeConfiguration" type="tns:routeConfigurationDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Reusable configuration for Camel route(s).
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeConfigurationContext" type="tns:camelRouteConfigurationContextFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configuration of route configurations using XML
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeConfigurationContextRef" type="tns:routeConfigurationContextRefDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To refer to an XML file with route configuration defined using the xml-dsl
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeConfigurations" type="tns:routeConfigurationsDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A series of route configurations
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeContext" type="tns:camelRouteContextFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configuration of routes using XML
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeContextRef" type="tns:routeContextRefDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To refer to an XML file with routes defined using the xml-dsl
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeController" type="tns:camelRouteControllerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Route controller configuration.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeTemplate" type="tns:routeTemplateDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Defines a route template (parameterized routes)
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeTemplateContext" type="tns:camelRouteTemplateContextFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configuration of route templates using XML
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeTemplateContextRef" type="tns:routeTemplateContextRefDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To refer to an XML file with route templates defined using the xml-dsl
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routeTemplates" type="tns:routeTemplatesDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A series of route templates
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routes" type="tns:routesDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A series of Camel routes
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="routingSlip" type="tns:routingSlipDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Routes a message through a series of steps that are pre-determined (the slip)
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="rss" type="tns:rssDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Transform from ROME SyndFeed Java Objects to XML and vice-versa.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="saga" type="tns:sagaDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Enables Sagas on the route
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="sample" type="tns:samplingDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Extract a sample of the messages passing through a route
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="script" type="tns:scriptDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Executes a script from a language which does not change the message body.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="secureRandomParameters" type="tns:secureRandomParametersFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Cryptographically strong random number generator
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="security" type="tns:securityDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Rest security definition
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="securityDefinitions" type="tns:restSecuritiesDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To configure rest security definitions.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="serviceCall" type="tns:serviceCallDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: To call remote services
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="serviceCallConfiguration" type="tns:serviceCallConfigurationDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: Remote service call configuration
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="serviceChooserConfiguration" type="tns:serviceCallServiceChooserConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="serviceDiscoveryConfiguration" type="tns:serviceCallServiceDiscoveryConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="serviceExpression" type="tns:serviceCallExpressionConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="serviceFilterConfiguration" type="tns:serviceCallServiceFilterConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="setBody" type="tns:setBodyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Sets the contents of the message body
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="setExchangePattern" type="tns:setExchangePatternDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Sets the exchange pattern on the message exchange
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="setHeader" type="tns:setHeaderDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Sets the value of a message header
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="setProperty" type="tns:setPropertyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Sets a named property on the message exchange
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="simple" type="tns:simpleExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a Camel simple expression.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="soap" type="tns:soapDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshal Java objects to SOAP messages and back.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="sort" type="tns:sortDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Sorts the contents of the message
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="spel" type="tns:spELExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates a Spring expression (SpEL).
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="split" type="tns:splitDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Splits a single message into many sub-messages.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="springTransactionErrorHandler" type="tns:springTransactionErrorHandlerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Spring based transactional error handler (requires camel-spring).
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="sslContextParameters" type="tns:sslContextParametersFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Secure socket protocol configuration
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="staticServiceDiscovery" type="tns:staticServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="step" type="tns:stepDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Routes the message to a sequence of processors which is grouped together as one
-logical name
-      ]]>
+<![CDATA[
+Routes the message to a sequence of processors which is grouped together as one logical name
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="sticky" type="tns:stickyLoadBalancerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Sticky load balancing using an expression to calculate a correlation key to
-perform the sticky load balancing.
-      ]]>
+<![CDATA[
+Sticky load balancing using an expression to calculate a correlation key to perform the sticky load balancing.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="stop" type="tns:stopDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Stops the processing of the current message
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="stream-config" type="tns:streamResequencerConfig">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configures stream-processing resequence eip.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="streamCaching" type="tns:camelStreamCachingStrategyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Stream caching configuration.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="swiftMt" type="tns:swiftMtDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Encode and decode SWIFT MT messages.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="swiftMx" type="tns:swiftMxDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Encode and decode SWIFT MX messages.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="syslog" type="tns:syslogDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshall SyslogMessages to RFC3164 and RFC5424 messages and back.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="tarFile" type="tns:tarFileDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Archive files into tarballs or extract files from tarballs.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="template" type="tns:camelProducerTemplateFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configures a ProducerTemplate
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="templateBean" type="tns:routeTemplateBeanDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A route template bean (local bean)
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="templateParameter" type="tns:routeTemplateParameterDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A route template parameter
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="templatedRoute" type="tns:templatedRouteDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Defines a templated route (a route built from a route template)
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="templatedRouteBean" type="tns:templatedRouteBeanDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A bean as input of a route template (local bean)
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="templatedRouteParameter" type="tns:templatedRouteParameterDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 An input parameter of a route template.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="templatedRoutes" type="tns:templatedRoutesDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A series of templated routes
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="threadPool" type="tns:camelThreadPoolFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Configuration of thread pools
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="threadPoolProfile" type="tns:threadPoolProfileDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To configure thread pools
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="threads" type="tns:threadsDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Specifies that all steps after this node are processed asynchronously
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="thrift" type="tns:thriftDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Serialize and deserialize messages using Apache Thrift binary data format.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="throttle" type="tns:throttleDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Controls the rate at which messages are passed to the next node in the route
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="throwException" type="tns:throwExceptionDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Throws an exception
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="tidyMarkup" type="tns:tidyMarkupDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Parse (potentially invalid) HTML into valid HTML or DOM.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="to" type="tns:toDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Sends the message to a static endpoint
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="toD" type="tns:toDynamicDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Sends the message to a dynamic endpoint
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="tokenize" type="tns:tokenizerExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Tokenize text payloads using delimiter patterns.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="topic" type="tns:topicLoadBalancerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Topic which sends to all destinations.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="transacted" type="tns:transactedDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Enables transaction on the route
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="transform" type="tns:transformDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Transforms the message body based on an expression
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="transformers" type="tns:transformersDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To configure transformers.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="typeFilter" type="tns:yamlTypeFilterDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="univocityCsv" type="tns:uniVocityCsvDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Marshal and unmarshal Java objects from and to CSV (Comma Separated Values)
-using UniVocity Parsers.
-      ]]>
+<![CDATA[
+Marshal and unmarshal Java objects from and to CSV (Comma Separated Values) using UniVocity Parsers.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="univocityFixed" type="tns:uniVocityFixedDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Marshal and unmarshal Java objects from and to fixed length records using
-UniVocity Parsers.
-      ]]>
+<![CDATA[
+Marshal and unmarshal Java objects from and to fixed length records using UniVocity Parsers.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="univocityHeader" type="tns:uniVocityHeader">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To configure headers for UniVocity data formats.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="univocityTsv" type="tns:uniVocityTsvDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Marshal and unmarshal Java objects from and to TSV (Tab-Separated Values)
-records using UniVocity Parsers.
-      ]]>
+<![CDATA[
+Marshal and unmarshal Java objects from and to TSV (Tab-Separated Values) records using UniVocity Parsers.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="unmarshal" type="tns:unmarshalDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Converts the message data received from the wire into a format that Apache Camel
-processors can consume
-      ]]>
+<![CDATA[
+Converts the message data received from the wire into a format that Apache Camel processors can consume
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="validate" type="tns:validateDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Validates a message based on an expression
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="validators" type="tns:validatorsDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 To configure validators.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="value" type="tns:valueDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 A single value
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="weighted" type="tns:weightedLoadBalancerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Uses a weighted load distribution ratio for each server with respect to others.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="when" type="tns:whenDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Triggers a route when the expression evaluates to true
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="wireTap" type="tns:wireTapDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Routes a copy of a message (or creates a new message) to a secondary destination
-while continue routing the original message.
-      ]]>
+<![CDATA[
+Routes a copy of a message (or creates a new message) to a secondary destination while continue routing the original
+message.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="xmlSecurity" type="tns:xmlSecurityDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Encrypt and decrypt XML payloads using Apache Santuario.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="xpath" type="tns:xPathExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates an XPath expression against an XML payload.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="xquery" type="tns:xQueryExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Evaluates an XQuery expressions against an XML payload.
-      ]]>
-      </xs:documentation>
-    </xs:annotation>
-  </xs:element>
-    
-  <xs:element name="xstream" type="tns:xStreamDataFormat">
-    <xs:annotation>
-      <xs:documentation xml:lang="en">
-        <![CDATA[
-Marshal and unmarshal POJOs to/from XML using XStream library.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="xtokenize" type="tns:xmlTokenizerExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Tokenize XML payloads.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="yaml" type="tns:yamlDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Marshal and unmarshal Java objects to and from YAML.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="zipDeflater" type="tns:zipDeflaterDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
-Compress and decompress streams using java.util.zip.Deflater and
-java.util.zip.Inflater.
-      ]]>
+<![CDATA[
+Compress and decompress streams using java.util.zip.Deflater and java.util.zip.Inflater.
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="zipFile" type="tns:zipFileDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Compression and decompress streams using java.util.zip.ZipStream.
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:element name="zookeeperServiceDiscovery" type="tns:zooKeeperServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
       <xs:documentation xml:lang="en">
-        <![CDATA[
+<![CDATA[
 Deprecated: null
-      ]]>
+]]>
       </xs:documentation>
     </xs:annotation>
   </xs:element>
-    
   <xs:complexType abstract="true" name="abstractCamelConsumerTemplateFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractCamelFactoryBean">
-                
         <xs:sequence/>
-                
         <xs:attribute name="maximumCacheSize" type="xs:int">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets a custom maximum cache size to use in the backing cache pools.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractCamelFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-                
         <xs:attribute name="camelContextId" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Id of CamelContext to use if there are multiple CamelContexts in the same JVM.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="identifiedType">
-        
     <xs:sequence/>
-        
     <xs:attribute name="id" type="xs:ID">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 The id of this node.
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractCamelContextFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractCamelEndpointFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractCamelFactoryBean">
-                
         <xs:sequence>
-                    
           <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:property"/>
-                  
         </xs:sequence>
-                
         <xs:attribute name="uri" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the URI to use to resolve the endpoint. Notice that additional options can
-be configured using a series of property.
-            ]]>
+<![CDATA[
+Sets the URI to use to resolve the endpoint. Notice that additional options can be configured using a series of
+property.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="propertyDefinition">
-        
     <xs:sequence/>
-        
     <xs:attribute name="key" type="xs:string" use="required">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Property key.
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-        
     <xs:attribute name="value" type="xs:string" use="required">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Property value.
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractCamelFluentProducerTemplateFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractCamelFactoryBean">
-                
         <xs:sequence/>
-                
         <xs:attribute name="defaultEndpoint" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the default endpoint URI used by default for sending message exchanges.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="maximumCacheSize" type="xs:int">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets a custom maximum cache size to use in the backing cache pools.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractCamelProducerTemplateFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractCamelFactoryBean">
-                
         <xs:sequence/>
-                
         <xs:attribute name="defaultEndpoint" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the default endpoint URI used by default for sending message exchanges.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="maximumCacheSize" type="xs:int">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets a custom maximum cache size to use in the backing cache pools.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractCamelRedeliveryPolicyFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractCamelFactoryBean">
-                
         <xs:sequence/>
-                
         <xs:attribute name="maximumRedeliveries" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the maximum number of times a message exchange will be redelivered. Setting
-a negative value will retry forever.
-            ]]>
+<![CDATA[
+Sets the maximum number of times a message exchange will be redelivered. Setting a negative value will retry forever.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="redeliveryDelay" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the maximum redelivery delay. Use -1 if you wish to have no maximum.
-Default value: 1000
-            ]]>
+<![CDATA[
+Sets the maximum redelivery delay. Use -1 if you wish to have no maximum. Default value: 1000
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="asyncDelayedRedelivery" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether asynchronous delayed redelivery is allowed. This is disabled by
-default. When enabled it allows Camel to schedule a future task for delayed
-redelivery which prevents current thread from blocking while waiting. Exchange
-which is transacted will however always use synchronous delayed redelivery
-because the transaction must execute in the same thread context. Default value:
-false
-            ]]>
+<![CDATA[
+Sets whether asynchronous delayed redelivery is allowed. This is disabled by default. When enabled it allows Camel to
+schedule a future task for delayed redelivery which prevents current thread from blocking while waiting. Exchange which
+is transacted will however always use synchronous delayed redelivery because the transaction must execute in the same
+thread context. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="backOffMultiplier" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the multiplier used to increase the delay between redeliveries if
-useExponentialBackOff is enabled. Default value: 2
-            ]]>
+<![CDATA[
+Sets the multiplier used to increase the delay between redeliveries if useExponentialBackOff is enabled. Default value:
+2
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="useExponentialBackOff" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Enables/disables exponential backoff using the backOffMultiplier to increase the
-time between retries. Default value: false
-            ]]>
+<![CDATA[
+Enables/disables exponential backoff using the backOffMultiplier to increase the time between retries. Default value:
+false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="collisionAvoidanceFactor" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the factor used for collision avoidance if enabled via
-useCollisionAvoidance. Default value: 0.15
-            ]]>
+<![CDATA[
+Sets the factor used for collision avoidance if enabled via useCollisionAvoidance. Default value: 0.15
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="useCollisionAvoidance" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Enables/disables collision avoidance which adds some randomization to the
-backoff timings to reduce contention probability. Default value: false
-            ]]>
+<![CDATA[
+Enables/disables collision avoidance which adds some randomization to the backoff timings to reduce contention
+probability. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="maximumRedeliveryDelay" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the maximum redelivery delay. Use -1 if you wish to have no maximum.
-Default value: 60000
-            ]]>
+<![CDATA[
+Sets the maximum redelivery delay. Use -1 if you wish to have no maximum. Default value: 60000
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="retriesExhaustedLogLevel" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the logging level to use for log messages when retries have been exhausted.
-Default value: ERROR
-            ]]>
+<![CDATA[
+Sets the logging level to use for log messages when retries have been exhausted. Default value: ERROR
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="retryAttemptedLogLevel" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the logging level to use for log messages when retries are attempted.
-Default value: DEBUG
-            ]]>
+<![CDATA[
+Sets the logging level to use for log messages when retries are attempted. Default value: DEBUG
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="retryAttemptedLogInterval" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the interval for log messages when retries are attempted. Default value: 0
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logRetryAttempted" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets whether to log retry attempts. Default value: true
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logStackTrace" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets whether stack traces should be logged or not. Default value: true
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logRetryStackTrace" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets whether stack traces should be logged or not. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logHandled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets whether errors should be logged even if its handled. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logNewException" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether errors should be logged when a new exception occurred during
-handling a previous exception. Default value: true
-            ]]>
+<![CDATA[
+Sets whether errors should be logged when a new exception occurred during handling a previous exception. Default value:
+true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logContinued" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets whether errors should be logged even if its continued. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logExhausted" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets whether exhausted exceptions should be logged or not. Default value: true
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logExhaustedMessageHistory" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether to log exhausted errors including message history. Default value:
-false
-            ]]>
+<![CDATA[
+Sets whether to log exhausted errors including message history. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logExhaustedMessageBody" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether exhausted message body/headers should be logged with message
-history included. Default value: false
-            ]]>
+<![CDATA[
+Sets whether exhausted message body/headers should be logged with message history included. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="disableRedelivery" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Disables redelivery by setting maximum redeliveries to 0. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="delayPattern" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets an optional delay pattern to use instead of fixed delay.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="allowRedeliveryWhileStopping" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Controls whether to allow redelivery while stopping/shutting down a route that
-uses error handling. Default value: true
-            ]]>
+<![CDATA[
+Controls whether to allow redelivery while stopping/shutting down a route that uses error handling. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="exchangeFormatterRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the reference of the instance of org.apache.camel.spi.ExchangeFormatter to
-generate the log message from exchange.
-            ]]>
+<![CDATA[
+Sets the reference of the instance of org.apache.camel.spi.ExchangeFormatter to generate the log message from exchange.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractCamelThreadPoolFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractCamelFactoryBean">
-                
         <xs:sequence/>
-                
         <xs:attribute name="poolSize" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the core pool size (threads to keep minimum in pool).
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="maxPoolSize" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the maximum pool size.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="keepAliveTime" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the keep alive time for inactive threads.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="timeUnit" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the time unit used for keep alive time. Default value: SECONDS
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="maxQueueSize" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the maximum number of tasks in the work queue. Use -1 for an unbounded
-queue.
-            ]]>
+<![CDATA[
+Sets the maximum number of tasks in the work queue. Use -1 for an unbounded queue.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="allowCoreThreadTimeOut" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets whether to allow core threads to timeout. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="rejectedPolicy" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the handler for tasks which cannot be executed by the thread pool. Default
-value: CallerRuns
-            ]]>
+<![CDATA[
+Sets the handler for tasks which cannot be executed by the thread pool. Default value: CallerRuns
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="threadName" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 To use a custom thread name / pattern.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="scheduled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Whether to use a scheduled thread pool. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="camelJMXAgentDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-                
         <xs:attribute name="disabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Disable JMI (default false). Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="onlyRegisterProcessorWithCustomId" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Only register processor if a custom id was defined for it. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="mbeanServerDefaultDomain" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-MBean server default domain name (default org.apache.camel). Default value:
-org.apache.camel
-            ]]>
+<![CDATA[
+MBean server default domain name (default org.apache.camel). Default value: org.apache.camel
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="mbeanObjectDomainName" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-MBean object domain name (default org.apache.camel). Default value:
-org.apache.camel
-            ]]>
+<![CDATA[
+MBean object domain name (default org.apache.camel). Default value: org.apache.camel
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="usePlatformMBeanServer" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-A flag that indicates whether the platform mbean server should be used. Default
-value: true
-            ]]>
+<![CDATA[
+A flag that indicates whether the platform mbean server should be used. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="registerAlways" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 A flag that indicates whether to register mbeans always. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="registerNewRoutes" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-A flag that indicates whether to register mbeans when starting new routes.
-Default value: true
-            ]]>
+<![CDATA[
+A flag that indicates whether to register mbeans when starting new routes. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="statisticsLevel" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Level of granularity for performance statistics enabled. Default value: Default
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="mbeansLevel" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the mbeans registration level. The default value is Default. Default value:
-Default
-            ]]>
+<![CDATA[
+Sets the mbeans registration level. The default value is Default. Default value: Default
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="loadStatisticsEnabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 A flag that indicates whether Load statistics is enabled. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="endpointRuntimeStatisticsEnabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-A flag that indicates whether endpoint runtime statistics is enabled. Default
-value: true
-            ]]>
+<![CDATA[
+A flag that indicates whether endpoint runtime statistics is enabled. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="includeHostName" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-A flag that indicates whether to include hostname in JMX MBean names. Default
-value: false
-            ]]>
+<![CDATA[
+A flag that indicates whether to include hostname in JMX MBean names. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="useHostIPAddress" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-A flag that indicates whether to use hostname or IP Address in the service url.
-Default value: false
-            ]]>
+<![CDATA[
+A flag that indicates whether to use hostname or IP Address in the service url. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="mask" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-A flag that indicates whether to remove detected sensitive information (such as
-passwords) from MBean names and attributes. Default value: true
-            ]]>
+<![CDATA[
+A flag that indicates whether to remove detected sensitive information (such as passwords) from MBean names and
+attributes. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="camelPropertyPlaceholderDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence>
-                    
           <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:propertiesFunction"/>
-                    
           <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:propertiesLocation"/>
-                  
         </xs:sequence>
-                
         <xs:attribute name="location" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-A list of locations to load properties. You can use comma to separate multiple
-locations. This option will override any default locations and only use the
-locations from this option.
-            ]]>
+<![CDATA[
+A list of locations to load properties. You can use comma to separate multiple locations. This option will override any
+default locations and only use the locations from this option.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="encoding" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Encoding to use when loading properties file from the file system or classpath.
-If no encoding has been set, then the properties files is loaded using
-ISO-8859-1 encoding (latin-1) as documented by
+<![CDATA[
+Encoding to use when loading properties file from the file system or classpath. If no encoding has been set, then the
+properties files is loaded using ISO-8859-1 encoding (latin-1) as documented by
 java.util.Properties#load(java.io.InputStream).
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="ignoreMissingLocation" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether to silently ignore if a location cannot be located, such as a properties
-file not found. Default value: false
-            ]]>
+<![CDATA[
+Whether to silently ignore if a location cannot be located, such as a properties file not found. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="nestedPlaceholder" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether to support nested property placeholders. A nested placeholder, means
-that a placeholder, has also a placeholder, that should be resolved
-(recursively). Default value: true
-            ]]>
+<![CDATA[
+Whether to support nested property placeholders. A nested placeholder, means that a placeholder, has also a placeholder,
+that should be resolved (recursively). Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="propertiesParserRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Reference to a custom PropertiesParser to be used.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="defaultFallbackEnabled" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-If false, the component does not attempt to find a default for the key by
-looking after the colon separator. Default value: true
-            ]]>
+<![CDATA[
+If false, the component does not attempt to find a default for the key by looking after the colon separator. Default
+value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="camelPropertyPlaceholderFunctionDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-                
         <xs:attribute name="ref" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Reference to the custom properties function to lookup in the registry.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="camelPropertyPlaceholderLocationDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-                
         <xs:attribute name="resolver" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 The resolver to use to locate the location. Default value: classpath
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="path" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Property locations to use.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="optional" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 If the location is optional. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="camelRouteControllerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-                
         <xs:attribute name="supervising" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-To enable using supervising route controller which allows Camel to startup and
-then the controller takes care of starting the routes in a safe manner. This can
-be used when you want to startup Camel despite a route may otherwise fail fast
-during startup and cause Camel to fail to startup as well. By delegating the
-route startup to the supervising route controller then its manages the startup
-using a background thread. The controller allows to be configured with various
+<![CDATA[
+To enable using supervising route controller which allows Camel to startup and then the controller takes care of
+starting the routes in a safe manner. This can be used when you want to startup Camel despite a route may otherwise fail
+fast during startup and cause Camel to fail to startup as well. By delegating the route startup to the supervising route
+controller then its manages the startup using a background thread. The controller allows to be configured with various
 settings to attempt to restart failing routes. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="includeRoutes" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Pattern for filtering routes to be included as supervised. The pattern is
-matching on route id, and endpoint uri for the route. Multiple patterns can be
-separated by comma. For example to include all kafka routes, you can say kafka:.
-And to include routes with specific route ids myRoute,myOtherRoute. The pattern
-supports wildcards and uses the matcher from
+<![CDATA[
+Pattern for filtering routes to be included as supervised. The pattern is matching on route id, and endpoint uri for the
+route. Multiple patterns can be separated by comma. For example to include all kafka routes, you can say kafka:. And to
+include routes with specific route ids myRoute,myOtherRoute. The pattern supports wildcards and uses the matcher from
 org.apache.camel.support.PatternHelper#matchPattern.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="excludeRoutes" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Pattern for filtering routes to be excluded as supervised. The pattern is
-matching on route id, and endpoint uri for the route. Multiple patterns can be
-separated by comma. For example to exclude all JMS routes, you can say jms:. And
-to exclude routes with specific route ids mySpecialRoute,myOtherSpecialRoute.
-The pattern supports wildcards and uses the matcher from
-org.apache.camel.support.PatternHelper#matchPattern.
-            ]]>
+<![CDATA[
+Pattern for filtering routes to be excluded as supervised. The pattern is matching on route id, and endpoint uri for the
+route. Multiple patterns can be separated by comma. For example to exclude all JMS routes, you can say jms:. And to
+exclude routes with specific route ids mySpecialRoute,myOtherSpecialRoute. The pattern supports wildcards and uses the
+matcher from org.apache.camel.support.PatternHelper#matchPattern.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="threadPoolSize" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-The number of threads used by the scheduled thread pool that are used for
-restarting routes. The pool uses 1 thread by default, but you can increase this
-to allow the controller to concurrently attempt to restart multiple routes in
-case more than one route has problems starting. Default value: 1
-            ]]>
+<![CDATA[
+The number of threads used by the scheduled thread pool that are used for restarting routes. The pool uses 1 thread by
+default, but you can increase this to allow the controller to concurrently attempt to restart multiple routes in case
+more than one route has problems starting. Default value: 1
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="initialDelay" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Initial delay in milli seconds before the route controller starts, after
-CamelContext has been started.
-            ]]>
+<![CDATA[
+Initial delay in milli seconds before the route controller starts, after CamelContext has been started.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="backOffDelay" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Backoff delay in millis when restarting a route that failed to startup. Default
-value: 2000
-            ]]>
+<![CDATA[
+Backoff delay in millis when restarting a route that failed to startup. Default value: 2000
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="backOffMaxDelay" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Backoff maximum delay in millis when restarting a route that failed to startup.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="backOffMaxElapsedTime" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Backoff maximum elapsed time in millis, after which the backoff should be
-considered exhausted and no more attempts should be made.
-            ]]>
+<![CDATA[
+Backoff maximum elapsed time in millis, after which the backoff should be considered exhausted and no more attempts
+should be made.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="backOffMaxAttempts" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Backoff maximum number of attempts to restart a route that failed to startup.
-When this threshold has been exceeded then the controller will give up
-attempting to restart the route, and the route will remain as stopped.
-            ]]>
+<![CDATA[
+Backoff maximum number of attempts to restart a route that failed to startup. When this threshold has been exceeded then
+the controller will give up attempting to restart the route, and the route will remain as stopped.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="backOffMultiplier" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Backoff multiplier to use for exponential backoff. This is used to extend the
-delay between restart attempts. Default value: 1.0
-            ]]>
+<![CDATA[
+Backoff multiplier to use for exponential backoff. This is used to extend the delay between restart attempts. Default
+value: 1.0
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="unhealthyOnExhausted" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether to mark the route as unhealthy (down) when all restarting attempts
-(backoff) have failed and the route is not successfully started and the route
-manager is giving up. Setting this to true allows health checks to know about
-this and can report the Camel application as DOWN. Default value: false
-            ]]>
+<![CDATA[
+Whether to mark the route as unhealthy (down) when all restarting attempts (backoff) have failed and the route is not
+successfully started and the route manager is giving up. Setting this to true allows health checks to know about this
+and can report the Camel application as DOWN. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="loggingLevel" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the logging level used for logging route activity (such as starting and
-stopping routes). The default logging level is DEBUG. Default value: DEBUG
-            ]]>
+<![CDATA[
+Sets the logging level used for logging route activity (such as starting and stopping routes). The default logging level
+is DEBUG. Default value: DEBUG
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="camelStreamCachingStrategyDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-                
         <xs:attribute name="enabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether stream caching is enabled or not. While stream types (like
-StreamSource, InputStream and Reader) are commonly used in messaging for
-performance reasons, they also have an important drawback: they can only be read
-once. In order to be able to work with message content multiple times, the
-stream needs to be cached. Streams are cached in memory only (by default). If
-streamCachingSpoolEnabled=true, then, for large stream messages (over 128 KB by
-default) will be cached in a temporary file instead, and Camel will handle
-deleting the temporary file once the cached stream is no longer necessary.
-Default is true. Default value: true
-            ]]>
+<![CDATA[
+Sets whether stream caching is enabled or not. While stream types (like StreamSource, InputStream and Reader) are
+commonly used in messaging for performance reasons, they also have an important drawback: they can only be read once. In
+order to be able to work with message content multiple times, the stream needs to be cached. Streams are cached in
+memory only (by default). If streamCachingSpoolEnabled=true, then, for large stream messages (over 128 KB by default)
+will be cached in a temporary file instead, and Camel will handle deleting the temporary file once the cached stream is
+no longer necessary. Default is true. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="spoolEnabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-To enable stream caching spooling to disk. This means, for large stream messages
-(over 128 KB by default) will be cached in a temporary file instead, and Camel
-will handle deleting the temporary file once the cached stream is no longer
+<![CDATA[
+To enable stream caching spooling to disk. This means, for large stream messages (over 128 KB by default) will be cached
+in a temporary file instead, and Camel will handle deleting the temporary file once the cached stream is no longer
 necessary. Default is false. Default value: false
-            ]]>
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="allowClasses" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+To filter stream caching of a given set of allowed/denied classes. By default, all classes that are java.io.InputStream
+is allowed. Multiple class names can be separated by comma.
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="denyClasses" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+To filter stream caching of a given set of allowed/denied classes. By default, all classes that are java.io.InputStream
+is allowed. Multiple class names can be separated by comma.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="spoolDirectory" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the spool (temporary) directory to use for overflow and spooling to disk.
-If no spool directory has been explicit configured, then a temporary directory
-is created in the java.io.tmpdir directory.
-            ]]>
+<![CDATA[
+Sets the spool (temporary) directory to use for overflow and spooling to disk. If no spool directory has been explicit
+configured, then a temporary directory is created in the java.io.tmpdir directory.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="spoolCipher" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets a cipher name to use when spooling to disk to write with encryption. By
-default the data is not encrypted.
-            ]]>
+<![CDATA[
+Sets a cipher name to use when spooling to disk to write with encryption. By default the data is not encrypted.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="spoolThreshold" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Threshold in bytes when overflow to disk is activated. The default threshold is
-org.apache.camel.StreamCache#DEFAULT_SPOOL_THRESHOLD bytes (eg 128kb). Use -1 to
-disable overflow to disk. Default value: 131072
-            ]]>
+org.apache.camel.StreamCache#DEFAULT_SPOOL_THRESHOLD bytes (eg 128kb). Use -1 to disable overflow to disk. Default
+value: 131072
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="spoolUsedHeapMemoryThreshold" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets a percentage (1-99) of used heap memory threshold to activate spooling to
-disk.
-            ]]>
+<![CDATA[
+Sets a percentage (1-99) of used heap memory threshold to activate spooling to disk.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="spoolUsedHeapMemoryLimit" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets what the upper bounds should be when spoolUsedHeapMemoryThreshold is in
-use.
-            ]]>
+<![CDATA[
+Sets what the upper bounds should be when spoolUsedHeapMemoryThreshold is in use.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="spoolRules" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Reference to one or more custom
-org.apache.camel.spi.StreamCachingStrategy.SpoolRule to use. Multiple rules can
-be separated by comma.
-            ]]>
+<![CDATA[
+Reference to one or more custom org.apache.camel.spi.StreamCachingStrategy.SpoolRule to use. Multiple rules can be
+separated by comma.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="bufferSize" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the buffer size to use when allocating in-memory buffers used for in-memory
-stream caches. The default size is
+<![CDATA[
+Sets the buffer size to use when allocating in-memory buffers used for in-memory stream caches. The default size is
 org.apache.camel.util.IOHelper#DEFAULT_BUFFER_SIZE. Default value: 4096
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="removeSpoolDirectoryWhenStopping" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether to remove the temporary directory when stopping. This option is default
-true. Default value: true
-            ]]>
+<![CDATA[
+Whether to remove the temporary directory when stopping. This option is default true. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="statisticsEnabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets whether statistics is enabled. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="anySpoolRules" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether if just any of the
-org.apache.camel.spi.StreamCachingStrategy.SpoolRule rules returns true then
+<![CDATA[
+Sets whether if just any of the org.apache.camel.spi.StreamCachingStrategy.SpoolRule rules returns true then
 shouldSpoolCache(long) returns true. If this option is false, then all the
-org.apache.camel.spi.StreamCachingStrategy.SpoolRule must return true. The
-default value is false which means that all the rules must return true. Default
-value: false
-            ]]>
+org.apache.camel.spi.StreamCachingStrategy.SpoolRule must return true. The default value is false which means that all
+the rules must return true. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="patternBasedPackageScanFilter">
-        
     <xs:sequence/>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractJsseUtilFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractCamelFactoryBean">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractKeyManagersParametersFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractJsseUtilFactoryBean">
-                
         <xs:sequence/>
-                
         <xs:attribute name="keyPassword" type="xs:string"/>
-                
         <xs:attribute name="provider" type="xs:string"/>
-                
         <xs:attribute name="algorithm" type="xs:string"/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractKeyStoreParametersFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractJsseUtilFactoryBean">
-                
         <xs:sequence/>
-                
         <xs:attribute name="type" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-The optional type of the key store to load. See Appendix A in the Java
-Cryptography Architecture Standard Algorithm Name Documentation for more
-information on standard names.
-            ]]>
+<![CDATA[
+The optional type of the key store to load. See Appendix A in the Java Cryptography Architecture Standard Algorithm Name
+Documentation for more information on standard names.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="password" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 The optional password for reading/opening/verifying the key store.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="provider" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 The optional provider identifier for instantiating the key store.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="resource" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-The optional file path, class path resource, or URL of the resource used to load
-the key store.
-            ]]>
+<![CDATA[
+The optional file path, class path resource, or URL of the resource used to load the key store.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractSecureRandomParametersFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractJsseUtilFactoryBean">
-                
         <xs:sequence/>
-                
         <xs:attribute name="algorithm" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-The Random Number Generator algorithm identifier for the SecureRandom factory
-method used to create the SecureRandom represented by this object's
-configuration. See Appendix A in the Java Cryptography Architecture API
-Specification and Reference guide for information about standard RNG algorithm
-names.
-            ]]>
+<![CDATA[
+The Random Number Generator algorithm identifier for the SecureRandom factory method used to create the SecureRandom
+represented by this object's configuration. See Appendix A in the Java Cryptography Architecture API Specification and
+Reference guide for information about standard RNG algorithm names.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="provider" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-The optional provider identifier for the SecureRandom factory method used to
-create the SecureRandom represented by this object's configuration.
-            ]]>
+<![CDATA[
+The optional provider identifier for the SecureRandom factory method used to create the SecureRandom represented by this
+object's configuration.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="abstractTrustManagersParametersFactoryBean">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:abstractJsseUtilFactoryBean">
-                
         <xs:sequence/>
-                
         <xs:attribute name="provider" type="xs:string"/>
-                
         <xs:attribute name="algorithm" type="xs:string"/>
-                
         <xs:attribute name="trustManager" type="xs:string"/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="cipherSuitesParameters">
-        
     <xs:sequence>
-            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="cipherSuite" nillable="true" type="xs:string"/>
-          
     </xs:sequence>
-      
   </xs:complexType>
-    
   <xs:complexType name="filterParameters">
-        
     <xs:sequence>
-            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="include" nillable="true" type="xs:string"/>
-            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="exclude" nillable="true" type="xs:string"/>
-          
     </xs:sequence>
-      
   </xs:complexType>
-    
   <xs:complexType name="sniHostNames">
-        
     <xs:sequence>
-            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="sniHostName" type="xs:string"/>
-          
     </xs:sequence>
-      
   </xs:complexType>
-    
   <xs:complexType name="secureSocketProtocolsParameters">
-        
     <xs:sequence>
-            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="secureSocketProtocol" nillable="true" type="xs:string"/>
-          
     </xs:sequence>
-      
   </xs:complexType>
-    
   <xs:complexType name="output">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:processorDefinition">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="processorDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:optionalIdentifiedDefinition">
-                
         <xs:sequence/>
-                
         <xs:attribute name="disabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether to disable this EIP from the route during build time. Once an EIP has
-been disabled then it cannot be enabled later at runtime. Default value: false
-            ]]>
+<![CDATA[
+Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled
+later at runtime. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="inheritErrorHandler" type="xs:boolean"/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="optionalIdentifiedDefinition">
-        
-    <xs:sequence>
-            
-      <xs:element minOccurs="0" ref="tns:description"/>
-          
-    </xs:sequence>
-        
+    <xs:sequence/>
     <xs:attribute name="customId" type="xs:boolean"/>
-        
+    <xs:attribute name="description" type="xs:string">
+      <xs:annotation>
+        <xs:documentation xml:lang="en">
+<![CDATA[
+Sets the description of this node.
+]]>
+        </xs:documentation>
+      </xs:annotation>
+    </xs:attribute>
     <xs:attribute name="id" type="xs:string">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Sets the id of this node.
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-      
-  </xs:complexType>
-    
-  <xs:complexType name="descriptionDefinition">
-        
-    <xs:simpleContent>
-            
-      <xs:extension base="xs:string">
-                
-        <xs:attribute name="lang" type="xs:string">
-          <xs:annotation>
-            <xs:documentation xml:lang="en">
-              <![CDATA[
-Deprecated: Language, such as en for english.
-            ]]>
-            </xs:documentation>
-          </xs:annotation>
-        </xs:attribute>
-              
-      </xs:extension>
-          
-    </xs:simpleContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="aggregateDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:output">
-                
         <xs:sequence>
-                    
           <xs:element name="correlationExpression" type="tns:expressionSubElementDefinition">
             <xs:annotation>
               <xs:documentation xml:lang="en">
-                <![CDATA[
-The expression used to calculate the correlation key to use for aggregation. The
-Exchange which has the same correlation key is aggregated together. If the
-correlation key could not be evaluated an Exception is thrown. You can disable
-this by using the ignoreBadCorrelationKeys option.
-              ]]>
+<![CDATA[
+The expression used to calculate the correlation key to use for aggregation. The Exchange which has the same correlation
+key is aggregated together. If the correlation key could not be evaluated an Exception is thrown. You can disable this
+by using the ignoreBadCorrelationKeys option.
+]]>
               </xs:documentation>
             </xs:annotation>
           </xs:element>
-                    
           <xs:element minOccurs="0" name="completionPredicate" type="tns:expressionSubElementDefinition">
             <xs:annotation>
               <xs:documentation xml:lang="en">
-                <![CDATA[
-A Predicate to indicate when an aggregated exchange is complete. If this is not
-specified and the AggregationStrategy object implements Predicate, the
-aggregationStrategy object will be used as the completionPredicate.
-              ]]>
+<![CDATA[
+A Predicate to indicate when an aggregated exchange is complete. If this is not specified and the AggregationStrategy
+object implements Predicate, the aggregationStrategy object will be used as the completionPredicate.
+]]>
               </xs:documentation>
             </xs:annotation>
           </xs:element>
-                    
           <xs:element minOccurs="0" name="completionTimeoutExpression" type="tns:expressionSubElementDefinition">
             <xs:annotation>
               <xs:documentation xml:lang="en">
-                <![CDATA[
-Time in millis that an aggregated exchange should be inactive before its
-complete (timeout). This option can be set as either a fixed value or using an
-Expression which allows you to evaluate a timeout dynamically - will use Long as
-result. If both are set Camel will fallback to use the fixed value if the
-Expression result was null or 0. You cannot use this option together with
-completionInterval, only one of the two can be used. By default the timeout
-checker runs every second, you can use the completionTimeoutCheckerInterval
-option to configure how frequently to run the checker. The timeout is an
-approximation and there is no guarantee that the a timeout is triggered exactly
-after the timeout value. It is not recommended to use very low timeout values or
-checker intervals.
-              ]]>
+<![CDATA[
+Time in millis that an aggregated exchange should be inactive before its complete (timeout). This option can be set as
+either a fixed value or using an Expression which allows you to evaluate a timeout dynamically - will use Long as
+result. If both are set Camel will fallback to use the fixed value if the Expression result was null or 0. You cannot
+use this option together with completionInterval, only one of the two can be used. By default the timeout checker runs
+every second, you can use the completionTimeoutCheckerInterval option to configure how frequently to run the checker.
+The timeout is an approximation and there is no guarantee that the a timeout is triggered exactly after the timeout
+value. It is not recommended to use very low timeout values or checker intervals.
+]]>
               </xs:documentation>
             </xs:annotation>
           </xs:element>
-                    
           <xs:element minOccurs="0" name="completionSizeExpression" type="tns:expressionSubElementDefinition">
             <xs:annotation>
               <xs:documentation xml:lang="en">
-                <![CDATA[
-Number of messages aggregated before the aggregation is complete. This option
-can be set as either a fixed value or using an Expression which allows you to
-evaluate a size dynamically - will use Integer as result. If both are set Camel
+<![CDATA[
+Number of messages aggregated before the aggregation is complete. This option can be set as either a fixed value or
+using an Expression which allows you to evaluate a size dynamically - will use Integer as result. If both are set Camel
 will fallback to use the fixed value if the Expression result was null or 0.
-              ]]>
+]]>
               </xs:documentation>
             </xs:annotation>
           </xs:element>
-                    
           <xs:element minOccurs="0" ref="tns:optimisticLockRetryPolicy"/>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-                
         <xs:attribute name="parallelProcessing" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-When aggregated are completed they are being send out of the aggregator. This
-option indicates whether or not Camel should use a thread pool with multiple
-threads for concurrency. If no custom thread pool has been specified then Camel
+<![CDATA[
+When aggregated are completed they are being send out of the aggregator. This option indicates whether or not Camel
+should use a thread pool with multiple threads for concurrency. If no custom thread pool has been specified then Camel
 creates a default pool with 10 concurrent threads. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="optimisticLocking" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Turns on using optimistic locking, which requires the aggregationRepository
-being used, is supporting this by implementing
-org.apache.camel.spi.OptimisticLockingAggregationRepository . Default value:
-false
-            ]]>
+<![CDATA[
+Turns on using optimistic locking, which requires the aggregationRepository being used, is supporting this by
+implementing org.apache.camel.spi.OptimisticLockingAggregationRepository . Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="executorService" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-If using parallelProcessing you can specify a custom thread pool to be used. In
-fact also if you are not using parallelProcessing this custom thread pool is
-used to send out aggregated exchanges as well.
-            ]]>
+<![CDATA[
+If using parallelProcessing you can specify a custom thread pool to be used. In fact also if you are not using
+parallelProcessing this custom thread pool is used to send out aggregated exchanges as well.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="timeoutCheckerExecutorService" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-If using either of the completionTimeout, completionTimeoutExpression, or
-completionInterval options a background thread is created to check for the
-completion for every aggregator. Set this option to provide a custom thread pool
-to be used rather than creating a new thread for every aggregator.
-            ]]>
+<![CDATA[
+If using either of the completionTimeout, completionTimeoutExpression, or completionInterval options a background thread
+is created to check for the completion for every aggregator. Set this option to provide a custom thread pool to be used
+rather than creating a new thread for every aggregator.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregateController" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-To use a org.apache.camel.processor.aggregate.AggregateController to allow
-external sources to control this aggregator.
-            ]]>
+<![CDATA[
+To use a org.apache.camel.processor.aggregate.AggregateController to allow external sources to control this aggregator.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregationRepository" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-The AggregationRepository to use. Sets the custom aggregate repository to use.
-Will by default use
+<![CDATA[
+The AggregationRepository to use. Sets the custom aggregate repository to use. Will by default use
 org.apache.camel.processor.aggregate.MemoryAggregationRepository.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregationStrategy" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-The AggregationStrategy to use. For example to lookup a bean with the name foo,
-the value is simply just #bean:foo. Configuring an AggregationStrategy is
-required, and is used to merge the incoming Exchange with the existing already
-merged exchanges. At first call the oldExchange parameter is null. On subsequent
-invocations the oldExchange contains the merged exchanges and newExchange is of
-course the new incoming Exchange.
-            ]]>
+<![CDATA[
+The AggregationStrategy to use. For example to lookup a bean with the name foo, the value is simply just #bean:foo.
+Configuring an AggregationStrategy is required, and is used to merge the incoming Exchange with the existing already
+merged exchanges. At first call the oldExchange parameter is null. On subsequent invocations the oldExchange contains
+the merged exchanges and newExchange is of course the new incoming Exchange.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregationStrategyMethodName" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-This option can be used to explicit declare the method name to use, when using
-beans as the AggregationStrategy.
-            ]]>
+<![CDATA[
+This option can be used to explicit declare the method name to use, when using beans as the AggregationStrategy.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregationStrategyMethodAllowNull" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-If this option is false then the aggregate method is not used for the very first
-aggregation. If this option is true then null values is used as the oldExchange
-(at the very first aggregation), when using beans as the AggregationStrategy.
-Default value: false
-            ]]>
+<![CDATA[
+If this option is false then the aggregate method is not used for the very first aggregation. If this option is true
+then null values is used as the oldExchange (at the very first aggregation), when using beans as the
+AggregationStrategy. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="completionSize" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Number of messages aggregated before the aggregation is complete. This option
-can be set as either a fixed value or using an Expression which allows you to
-evaluate a size dynamically - will use Integer as result. If both are set Camel
+<![CDATA[
+Number of messages aggregated before the aggregation is complete. This option can be set as either a fixed value or
+using an Expression which allows you to evaluate a size dynamically - will use Integer as result. If both are set Camel
 will fallback to use the fixed value if the Expression result was null or 0.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="completionInterval" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-A repeating period in millis by which the aggregator will complete all current
-aggregated exchanges. Camel has a background task which is triggered every
-period. You cannot use this option together with completionTimeout, only one of
+<![CDATA[
+A repeating period in millis by which the aggregator will complete all current aggregated exchanges. Camel has a
+background task which is triggered every period. You cannot use this option together with completionTimeout, only one of
 them can be used.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="completionTimeout" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Time in millis that an aggregated exchange should be inactive before its
-complete (timeout). This option can be set as either a fixed value or using an
-Expression which allows you to evaluate a timeout dynamically - will use Long as
-result. If both are set Camel will fallback to use the fixed value if the
-Expression result was null or 0. You cannot use this option together with
-completionInterval, only one of the two can be used. By default the timeout
-checker runs every second, you can use the completionTimeoutCheckerInterval
-option to configure how frequently to run the checker. The timeout is an
-approximation and there is no guarantee that the a timeout is triggered exactly
-after the timeout value. It is not recommended to use very low timeout values or
-checker intervals.
-            ]]>
+<![CDATA[
+Time in millis that an aggregated exchange should be inactive before its complete (timeout). This option can be set as
+either a fixed value or using an Expression which allows you to evaluate a timeout dynamically - will use Long as
+result. If both are set Camel will fallback to use the fixed value if the Expression result was null or 0. You cannot
+use this option together with completionInterval, only one of the two can be used. By default the timeout checker runs
+every second, you can use the completionTimeoutCheckerInterval option to configure how frequently to run the checker.
+The timeout is an approximation and there is no guarantee that the a timeout is triggered exactly after the timeout
+value. It is not recommended to use very low timeout values or checker intervals.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="completionTimeoutCheckerInterval" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Interval in millis that is used by the background task that checks for timeouts
-( org.apache.camel.TimeoutMap ). By default the timeout checker runs every
-second. The timeout is an approximation and there is no guarantee that the a
-timeout is triggered exactly after the timeout value. It is not recommended to
-use very low timeout values or checker intervals. Default value: 1000
-            ]]>
+<![CDATA[
+Interval in millis that is used by the background task that checks for timeouts ( org.apache.camel.TimeoutMap ). By
+default the timeout checker runs every second. The timeout is an approximation and there is no guarantee that the a
+timeout is triggered exactly after the timeout value. It is not recommended to use very low timeout values or checker
+intervals. Default value: 1000
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="completionFromBatchConsumer" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Enables the batch completion mode where we aggregate from a
-org.apache.camel.BatchConsumer and aggregate the total number of exchanges the
-org.apache.camel.BatchConsumer has reported as total by checking the exchange
-property org.apache.camel.Exchange#BATCH_COMPLETE when its complete. This option
-cannot be used together with discardOnAggregationFailure. Default value: false
-            ]]>
+<![CDATA[
+Enables the batch completion mode where we aggregate from a org.apache.camel.BatchConsumer and aggregate the total
+number of exchanges the org.apache.camel.BatchConsumer has reported as total by checking the exchange property
+org.apache.camel.Exchange#BATCH_COMPLETE when its complete. This option cannot be used together with
+discardOnAggregationFailure. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="completionOnNewCorrelationGroup" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Enables completion on all previous groups when a new incoming correlation group.
-This can for example be used to complete groups with same correlation keys when
-they are in consecutive order. Notice when this is enabled then only 1
-correlation group can be in progress as when a new correlation group starts,
-then the previous groups is forced completed. Default value: false
-            ]]>
+<![CDATA[
+Enables completion on all previous groups when a new incoming correlation group. This can for example be used to
+complete groups with same correlation keys when they are in consecutive order. Notice when this is enabled then only 1
+correlation group can be in progress as when a new correlation group starts, then the previous groups is forced
+completed. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="eagerCheckCompletion" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Use eager completion checking which means that the completionPredicate will use
-the incoming Exchange. As opposed to without eager completion checking the
-completionPredicate will use the aggregated Exchange. Default value: false
-            ]]>
+<![CDATA[
+Use eager completion checking which means that the completionPredicate will use the incoming Exchange. As opposed to
+without eager completion checking the completionPredicate will use the aggregated Exchange. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="ignoreInvalidCorrelationKeys" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-If a correlation key cannot be successfully evaluated it will be ignored by
-logging a DEBUG and then just ignore the incoming Exchange. Default value: false
-            ]]>
+<![CDATA[
+If a correlation key cannot be successfully evaluated it will be ignored by logging a DEBUG and then just ignore the
+incoming Exchange. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="closeCorrelationKeyOnCompletion" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Closes a correlation key when its complete. Any late received exchanges which
-has a correlation key that has been closed, it will be defined and a
-ClosedCorrelationKeyException is thrown.
-            ]]>
+<![CDATA[
+Closes a correlation key when its complete. Any late received exchanges which has a correlation key that has been
+closed, it will be defined and a ClosedCorrelationKeyException is thrown.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="discardOnCompletionTimeout" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Discards the aggregated message on completion timeout. This means on timeout the
-aggregated message is dropped and not sent out of the aggregator. Default value:
-false
-            ]]>
+<![CDATA[
+Discards the aggregated message on completion timeout. This means on timeout the aggregated message is dropped and not
+sent out of the aggregator. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="discardOnAggregationFailure" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Discards the aggregated message when aggregation failed (an exception was thrown
-from AggregationStrategy . This means the partly aggregated message is dropped
-and not sent out of the aggregator. This option cannot be used together with
+<![CDATA[
+Discards the aggregated message when aggregation failed (an exception was thrown from AggregationStrategy . This means
+the partly aggregated message is dropped and not sent out of the aggregator. This option cannot be used together with
 completionFromBatchConsumer. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="forceCompletionOnStop" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Indicates to complete all current aggregated exchanges when the context is
-stopped. Default value: false
-            ]]>
+<![CDATA[
+Indicates to complete all current aggregated exchanges when the context is stopped. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="completeAllOnStop" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Indicates to wait to complete all current and partial (pending) aggregated
-exchanges when the context is stopped. This also means that we will wait for all
-pending exchanges which are stored in the aggregation repository to complete so
-the repository is empty before we can stop. You may want to enable this when
-using the memory based aggregation repository that is memory based only, and do
-not store data on disk. When this option is enabled, then the aggregator is
-waiting to complete all those exchanges before its stopped, when stopping
-CamelContext or the route using it. Default value: false
-            ]]>
+<![CDATA[
+Indicates to wait to complete all current and partial (pending) aggregated exchanges when the context is stopped. This
+also means that we will wait for all pending exchanges which are stored in the aggregation repository to complete so the
+repository is empty before we can stop. You may want to enable this when using the memory based aggregation repository
+that is memory based only, and do not store data on disk. When this option is enabled, then the aggregator is waiting to
+complete all those exchanges before its stopped, when stopping CamelContext or the route using it. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="expressionSubElementDefinition">
-        
     <xs:choice>
-            
       <xs:element ref="tns:expressionDefinition"/>
-            
       <xs:element ref="tns:csimple"/>
-            
       <xs:element ref="tns:constant"/>
-            
       <xs:element ref="tns:datasonnet"/>
-            
       <xs:element ref="tns:exchangeProperty"/>
-            
       <xs:element ref="tns:groovy"/>
-            
       <xs:element ref="tns:header"/>
-            
       <xs:element ref="tns:hl7terser"/>
-            
       <xs:element ref="tns:js"/>
-            
       <xs:element ref="tns:joor"/>
-            
       <xs:element ref="tns:jq"/>
-            
       <xs:element ref="tns:jsonpath"/>
-            
       <xs:element ref="tns:language"/>
-            
       <xs:element ref="tns:method"/>
-            
       <xs:element ref="tns:mvel"/>
-            
       <xs:element ref="tns:ognl"/>
-            
       <xs:element ref="tns:python"/>
-            
       <xs:element ref="tns:ref"/>
-            
       <xs:element ref="tns:simple"/>
-            
       <xs:element ref="tns:spel"/>
-            
       <xs:element ref="tns:tokenize"/>
-            
       <xs:element ref="tns:xtokenize"/>
-            
       <xs:element ref="tns:xpath"/>
-            
       <xs:element ref="tns:xquery"/>
-          
     </xs:choice>
-      
   </xs:complexType>
-    
   <xs:complexType name="expression">
-        
     <xs:simpleContent>
-            
       <xs:extension base="xs:string">
-                
         <xs:attribute name="id" type="xs:ID">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the id of this node.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="trim" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether to trim the value to remove leading and trailing whitespaces and line
-breaks. Default value: true
-            ]]>
+<![CDATA[
+Whether to trim the value to remove leading and trailing whitespaces and line breaks. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:simpleContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="optimisticLockRetryPolicyDefinition">
-        
     <xs:sequence/>
-        
     <xs:attribute name="maximumRetries" type="xs:string">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Sets the maximum number of retries.
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-        
     <xs:attribute name="retryDelay" type="xs:string">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Sets the delay in millis between retries. Default value: 50
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-        
     <xs:attribute name="maximumRetryDelay" type="xs:string">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
-Sets the upper value of retry in millis between retries, when using exponential
-or random backoff. Default value: 1000
-        ]]>
+<![CDATA[
+Sets the upper value of retry in millis between retries, when using exponential or random backoff. Default value: 1000
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-        
     <xs:attribute name="exponentialBackOff" type="xs:string">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Enable exponential backoff. Default value: true
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-        
     <xs:attribute name="randomBackOff" type="xs:string">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Enables random backoff. Default value: false
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-      
   </xs:complexType>
-    
   <xs:complexType name="beanDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:noOutputDefinition">
-                
         <xs:sequence/>
-                
         <xs:attribute name="ref" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets a reference to an exiting bean to use, which is looked up from the
-registry.
-            ]]>
+<![CDATA[
+Sets a reference to an exiting bean to use, which is looked up from the registry.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="method" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the method name on the bean to use.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="beanType" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the class name (fully qualified) of the bean to use.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="scope" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Scope of bean. When using singleton scope (default) the bean is created or
-looked up only once and reused for the lifetime of the endpoint. The bean should
-be thread-safe in case concurrent threads is calling the bean at the same time.
-When using request scope the bean is created or looked up once per request
-(exchange). This can be used if you want to store state on a bean while
-processing a request and you want to call the same bean instance multiple times
-while processing the request. The bean does not have to be thread-safe as the
-instance is only called from the same request. When using prototype scope, then
-the bean will be looked up or created per call. However in case of lookup then
-this is delegated to the bean registry such as Spring or CDI (if in use), which
-depends on their configuration can act as either singleton or prototype scope.
-So when using prototype scope then this depends on the bean registry
+<![CDATA[
+Scope of bean. When using singleton scope (default) the bean is created or looked up only once and reused for the
+lifetime of the endpoint. The bean should be thread-safe in case concurrent threads is calling the bean at the same
+time. When using request scope the bean is created or looked up once per request (exchange). This can be used if you
+want to store state on a bean while processing a request and you want to call the same bean instance multiple times
+while processing the request. The bean does not have to be thread-safe as the instance is only called from the same
+request. When using prototype scope, then the bean will be looked up or created per call. However in case of lookup then
+this is delegated to the bean registry such as Spring or CDI (if in use), which depends on their configuration can act
+as either singleton or prototype scope. So when using prototype scope then this depends on the bean registry
 implementation. Default value: Singleton
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="noOutputDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:processorDefinition">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="beanFactoryDefinition">
-        
     <xs:sequence>
-            
       <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:property"/>
-            
+      <xs:element minOccurs="0" name="properties" type="tns:beanPropertiesDefinition">
+        <xs:annotation>
+          <xs:documentation xml:lang="en">
+<![CDATA[
+Optional properties to set on the created local bean.
+]]>
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
       <xs:element minOccurs="0" name="script" type="xs:string">
         <xs:annotation>
           <xs:documentation xml:lang="en">
-            <![CDATA[
-The script to execute that creates the bean when using scripting languages. If
-the script use the prefix resource: such as
-resource:classpath:com/foo/myscript.groovy, resource:file:/var/myscript.groovy,
-then its loaded from the external resource.
-          ]]>
+<![CDATA[
+The script to execute that creates the bean when using scripting languages. If the script use the prefix resource: such
+as resource:classpath:com/foo/myscript.groovy, resource:file:/var/myscript.groovy, then its loaded from the external
+resource.
+]]>
           </xs:documentation>
         </xs:annotation>
       </xs:element>
-          
     </xs:sequence>
-        
     <xs:attribute name="name" type="xs:string" use="required">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Bean name.
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-        
     <xs:attribute name="type" type="xs:string" use="required">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
-What type to use for creating the bean. Can be one of:
-#class,#type,bean,groovy,joor,language,mvel,ognl. #class or #type then the bean
-is created via the fully qualified classname, such as #class:com.foo.MyBean The
-others are scripting languages that gives more power to create the bean with an
-inlined code in the script section, such as using groovy.
-        ]]>
+<![CDATA[
+What type to use for creating the bean. Can be one of: #class,#type,bean,groovy,joor,language,mvel,ognl. #class or #type
+then the bean is created via the fully qualified classname, such as #class:com.foo.MyBean The others are scripting
+languages that gives more power to create the bean with an inlined code in the script section, such as using groovy.
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-        
     <xs:attribute name="beanType" type="xs:string">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
-To set the type (fully qualified class name) of the returned bean created by the
-script. Knowing the type of the bean can be needed when dependency injection by
-type is in use, or when looking in registry via class type.
-        ]]>
+<![CDATA[
+To set the type (fully qualified class name) of the returned bean created by the script. Knowing the type of the bean
+can be needed when dependency injection by type is in use, or when looking in registry via class type.
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-      
   </xs:complexType>
-    
+  <xs:complexType name="beanPropertiesDefinition">
+    <xs:sequence>
+      <xs:element maxOccurs="unbounded" minOccurs="0" name="property" type="tns:beanPropertyDefinition"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="beanPropertyDefinition">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="properties" type="tns:beanPropertiesDefinition"/>
+    </xs:sequence>
+    <xs:attribute name="key" type="xs:string"/>
+    <xs:attribute name="value" type="xs:string"/>
+  </xs:complexType>
   <xs:complexType name="catchDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:output">
-                
         <xs:sequence>
-                    
           <xs:element maxOccurs="unbounded" minOccurs="0" name="exception" type="xs:string">
             <xs:annotation>
               <xs:documentation xml:lang="en">
-                <![CDATA[
+<![CDATA[
 The exception(s) to catch.
-              ]]>
+]]>
               </xs:documentation>
             </xs:annotation>
           </xs:element>
-                    
           <xs:element minOccurs="0" name="onWhen" type="tns:whenDefinition">
             <xs:annotation>
               <xs:documentation xml:lang="en">
-                <![CDATA[
-Sets an additional predicate that should be true before the onCatch is
-triggered. To be used for fine grained controlling whether a thrown exception
-should be intercepted by this exception type or not.
-              ]]>
+<![CDATA[
+Sets an additional predicate that should be true before the onCatch is triggered. To be used for fine grained
+controlling whether a thrown exception should be intercepted by this exception type or not.
+]]>
               </xs:documentation>
             </xs:annotation>
           </xs:element>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="whenDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:processorDefinition">
-                
         <xs:sequence>
-                    
           <xs:choice>
-                        
             <xs:element ref="tns:expressionDefinition"/>
-                        
             <xs:element ref="tns:csimple"/>
-                        
             <xs:element ref="tns:constant"/>
-                        
             <xs:element ref="tns:datasonnet"/>
-                        
             <xs:element ref="tns:exchangeProperty"/>
-                        
             <xs:element ref="tns:groovy"/>
-                        
             <xs:element ref="tns:header"/>
-                        
             <xs:element ref="tns:hl7terser"/>
-                        
             <xs:element ref="tns:js"/>
-                        
             <xs:element ref="tns:joor"/>
-                        
             <xs:element ref="tns:jq"/>
-                        
             <xs:element ref="tns:jsonpath"/>
-                        
             <xs:element ref="tns:language"/>
-                        
             <xs:element ref="tns:method"/>
-                        
             <xs:element ref="tns:mvel"/>
-                        
             <xs:element ref="tns:ognl"/>
-                        
             <xs:element ref="tns:python"/>
-                        
             <xs:element ref="tns:ref"/>
-                        
             <xs:element ref="tns:simple"/>
-                        
             <xs:element ref="tns:spel"/>
-                        
             <xs:element ref="tns:tokenize"/>
-                        
             <xs:element ref="tns:xtokenize"/>
-                        
             <xs:element ref="tns:xpath"/>
-                        
             <xs:element ref="tns:xquery"/>
-                      
           </xs:choice>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="choiceDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:processorDefinition">
-                
         <xs:sequence>
-                    
           <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:when"/>
-                    
           <xs:element minOccurs="0" ref="tns:otherwise"/>
-                  
         </xs:sequence>
-                
         <xs:attribute name="precondition" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Indicates whether this Choice EIP is in precondition mode or not. If so its
-branches (when/otherwise) are evaluated during startup to keep at runtime only
-the branch that matched. Default value: false
-            ]]>
+<![CDATA[
+Indicates whether this Choice EIP is in precondition mode or not. If so its branches (when/otherwise) are evaluated
+during startup to keep at runtime only the branch that matched. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="otherwiseDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:output">
-                
         <xs:sequence>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="circuitBreakerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:output">
-                
         <xs:sequence>
-                    
           <xs:element minOccurs="0" ref="tns:resilience4jConfiguration"/>
-                    
           <xs:element minOccurs="0" ref="tns:faultToleranceConfiguration"/>
-                    
+          <xs:element minOccurs="0" ref="tns:onFallback"/>
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-                
         <xs:attribute name="configuration" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Refers to a circuit breaker configuration (such as resillience4j, or
-microprofile-fault-tolerance) to use for configuring the circuit breaker EIP.
-            ]]>
+<![CDATA[
+Refers to a circuit breaker configuration (such as resillience4j, or microprofile-fault-tolerance) to use for
+configuring the circuit breaker EIP.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="resilience4JConfigurationDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:resilience4JConfigurationCommon">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="resilience4JConfigurationCommon">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
-        <xs:sequence>
-                    
-          <xs:element minOccurs="0" name="bulkheadEnabled" type="xs:string"/>
-                    
-          <xs:element minOccurs="0" name="bulkheadMaxConcurrentCalls" type="xs:string"/>
-                    
-          <xs:element minOccurs="0" name="bulkheadMaxWaitDuration" type="xs:string"/>
-                    
-          <xs:element minOccurs="0" name="timeoutEnabled" type="xs:string"/>
-                    
-          <xs:element minOccurs="0" name="timeoutExecutorService" type="xs:string"/>
-                    
-          <xs:element minOccurs="0" name="timeoutDuration" type="xs:string"/>
-                    
-          <xs:element minOccurs="0" name="timeoutCancelRunningFuture" type="xs:string"/>
-                  
-        </xs:sequence>
-                
+        <xs:sequence/>
         <xs:attribute name="circuitBreaker" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreaker
-instance to lookup and use from the registry. When using this, then any other
-circuit breaker options are not in use.
-            ]]>
+<![CDATA[
+Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreaker instance to lookup and use from the registry.
+When using this, then any other circuit breaker options are not in use.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="config" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreakerConfig
-instance to lookup and use from the registry.
-            ]]>
+<![CDATA[
+Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreakerConfig instance to lookup and use from the
+registry.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="failureRateThreshold" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the failure rate threshold in percentage. If the failure rate is
-equal or greater than the threshold the CircuitBreaker transitions to open and
-starts short-circuiting calls. The threshold must be greater than 0 and not
+<![CDATA[
+Configures the failure rate threshold in percentage. If the failure rate is equal or greater than the threshold the
+CircuitBreaker transitions to open and starts short-circuiting calls. The threshold must be greater than 0 and not
 greater than 100. Default value is 50 percentage. Default value: 50
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="permittedNumberOfCallsInHalfOpenState" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the number of permitted calls when the CircuitBreaker is half open.
-The size must be greater than 0. Default size is 10. Default value: 10
-            ]]>
+<![CDATA[
+Configures the number of permitted calls when the CircuitBreaker is half open. The size must be greater than 0. Default
+size is 10. Default value: 10
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="throwExceptionWhenHalfOpenOrOpenState" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether to throw io.github.resilience4j.circuitbreaker.CallNotPermittedException
-when the call is rejected due circuit breaker is half open or open. Default
-value: false
-            ]]>
+<![CDATA[
+Whether to throw io.github.resilience4j.circuitbreaker.CallNotPermittedException when the call is rejected due circuit
+breaker is half open or open. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="slidingWindowSize" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the size of the sliding window which is used to record the outcome of
-calls when the CircuitBreaker is closed. slidingWindowSize configures the size
-of the sliding window. Sliding window can either be count-based or time-based.
-If slidingWindowType is COUNT_BASED, the last slidingWindowSize calls are
-recorded and aggregated. If slidingWindowType is TIME_BASED, the calls of the
-last slidingWindowSize seconds are recorded and aggregated. The
-slidingWindowSize must be greater than 0. The minimumNumberOfCalls must be
-greater than 0. If the slidingWindowType is COUNT_BASED, the
-minimumNumberOfCalls cannot be greater than slidingWindowSize . If the
-slidingWindowType is TIME_BASED, you can pick whatever you want. Default
-slidingWindowSize is 100. Default value: 100
-            ]]>
+<![CDATA[
+Configures the size of the sliding window which is used to record the outcome of calls when the CircuitBreaker is
+closed. slidingWindowSize configures the size of the sliding window. Sliding window can either be count-based or
+time-based. If slidingWindowType is COUNT_BASED, the last slidingWindowSize calls are recorded and aggregated. If
+slidingWindowType is TIME_BASED, the calls of the last slidingWindowSize seconds are recorded and aggregated. The
+slidingWindowSize must be greater than 0. The minimumNumberOfCalls must be greater than 0. If the slidingWindowType is
+COUNT_BASED, the minimumNumberOfCalls cannot be greater than slidingWindowSize . If the slidingWindowType is TIME_BASED,
+you can pick whatever you want. Default slidingWindowSize is 100. Default value: 100
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="slidingWindowType" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the type of the sliding window which is used to record the outcome of
-calls when the CircuitBreaker is closed. Sliding window can either be
-count-based or time-based. If slidingWindowType is COUNT_BASED, the last
-slidingWindowSize calls are recorded and aggregated. If slidingWindowType is
-TIME_BASED, the calls of the last slidingWindowSize seconds are recorded and
-aggregated. Default slidingWindowType is COUNT_BASED. Default value: COUNT_BASED
-            ]]>
+<![CDATA[
+Configures the type of the sliding window which is used to record the outcome of calls when the CircuitBreaker is
+closed. Sliding window can either be count-based or time-based. If slidingWindowType is COUNT_BASED, the last
+slidingWindowSize calls are recorded and aggregated. If slidingWindowType is TIME_BASED, the calls of the last
+slidingWindowSize seconds are recorded and aggregated. Default slidingWindowType is COUNT_BASED. Default value:
+COUNT_BASED
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="minimumNumberOfCalls" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the minimum number of calls which are required (per sliding window
-period) before the CircuitBreaker can calculate the error rate. For example, if
-minimumNumberOfCalls is 10, then at least 10 calls must be recorded, before the
-failure rate can be calculated. If only 9 calls have been recorded the
-CircuitBreaker will not transition to open even if all 9 calls have failed.
-Default minimumNumberOfCalls is 100. Default value: 100
-            ]]>
+<![CDATA[
+Configures the minimum number of calls which are required (per sliding window period) before the CircuitBreaker can
+calculate the error rate. For example, if minimumNumberOfCalls is 10, then at least 10 calls must be recorded, before
+the failure rate can be calculated. If only 9 calls have been recorded the CircuitBreaker will not transition to open
+even if all 9 calls have failed. Default minimumNumberOfCalls is 100. Default value: 100
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="writableStackTraceEnabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Enables writable stack traces. When set to false, Exception.getStackTrace
-returns a zero length array. This may be used to reduce log spam when the
-circuit breaker is open as the cause of the exceptions is already known (the
-circuit breaker is short-circuiting calls). Default value: true
-            ]]>
+<![CDATA[
+Enables writable stack traces. When set to false, Exception.getStackTrace returns a zero length array. This may be used
+to reduce log spam when the circuit breaker is open as the cause of the exceptions is already known (the circuit breaker
+is short-circuiting calls). Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="waitDurationInOpenState" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the wait duration (in seconds) which specifies how long the
-CircuitBreaker should stay open, before it switches to half open. Default value
-is 60 seconds. Default value: 60
-            ]]>
+<![CDATA[
+Configures the wait duration (in seconds) which specifies how long the CircuitBreaker should stay open, before it
+switches to half open. Default value is 60 seconds. Default value: 60
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="automaticTransitionFromOpenToHalfOpenEnabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Enables automatic transition from OPEN to HALF_OPEN state once the
-waitDurationInOpenState has passed. Default value: false
-            ]]>
+<![CDATA[
+Enables automatic transition from OPEN to HALF_OPEN state once the waitDurationInOpenState has passed. Default value:
+false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="slowCallRateThreshold" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures a threshold in percentage. The CircuitBreaker considers a call as
-slow when the call duration is greater than slowCallDurationThreshold Duration.
-When the percentage of slow calls is equal or greater the threshold, the
-CircuitBreaker transitions to open and starts short-circuiting calls. The
-threshold must be greater than 0 and not greater than 100. Default value is 100
-percentage which means that all recorded calls must be slower than
+<![CDATA[
+Configures a threshold in percentage. The CircuitBreaker considers a call as slow when the call duration is greater than
+slowCallDurationThreshold Duration. When the percentage of slow calls is equal or greater the threshold, the
+CircuitBreaker transitions to open and starts short-circuiting calls. The threshold must be greater than 0 and not
+greater than 100. Default value is 100 percentage which means that all recorded calls must be slower than
 slowCallDurationThreshold. Default value: 100
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="slowCallDurationThreshold" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the duration threshold (seconds) above which calls are considered as
-slow and increase the slow calls percentage. Default value is 60 seconds.
-Default value: 60
-            ]]>
+<![CDATA[
+Configures the duration threshold (seconds) above which calls are considered as slow and increase the slow calls
+percentage. Default value is 60 seconds. Default value: 60
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="bulkheadEnabled" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+Whether bulkhead is enabled or not on the circuit breaker. Default is false. Default value: false
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="bulkheadMaxConcurrentCalls" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+Configures the max amount of concurrent calls the bulkhead will support. Default value: 25
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="bulkheadMaxWaitDuration" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+Configures a maximum amount of time which the calling thread will wait to enter the bulkhead. If bulkhead has space
+available, entry is guaranteed and immediate. If bulkhead is full, calling threads will contest for space, if it becomes
+available. maxWaitDuration can be set to 0. Note: for threads running on an event-loop or equivalent (rx computation
+pool, etc), setting maxWaitDuration to 0 is highly recommended. Blocking an event-loop thread will most likely have a
+negative effect on application throughput. Default value: 0
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="timeoutEnabled" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+Whether timeout is enabled or not on the circuit breaker. Default is false. Default value: false
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="timeoutExecutorService" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+References to a custom thread pool to use when timeout is enabled (uses ForkJoinPool#commonPool() by default).
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="timeoutDuration" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+Configures the thread execution timeout. Default value is 1 second. Default value: 1000
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="timeoutCancelRunningFuture" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+Configures whether cancel is called on the running future. Defaults to true. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="faultToleranceConfigurationDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:faultToleranceConfigurationCommon">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="faultToleranceConfigurationCommon">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-                
         <xs:attribute name="circuitBreaker" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Refers to an existing
-io.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker instance to
-lookup and use from the registry. When using this, then any other circuit
-breaker options are not in use.
-            ]]>
+<![CDATA[
+Refers to an existing io.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker instance to lookup and use from the
+registry. When using this, then any other circuit breaker options are not in use.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="delay" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Control how long the circuit breaker stays open. The default is 5 seconds.
-Default value: 5000
-            ]]>
+<![CDATA[
+Control how long the circuit breaker stays open. The default is 5 seconds. Default value: 5000
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="successThreshold" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Controls the number of trial calls which are allowed when the circuit breaker is
-half-open. Default value: 1
-            ]]>
+<![CDATA[
+Controls the number of trial calls which are allowed when the circuit breaker is half-open. Default value: 1
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="requestVolumeThreshold" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Controls the size of the rolling window used when the circuit breaker is closed.
-Default value: 20
-            ]]>
+<![CDATA[
+Controls the size of the rolling window used when the circuit breaker is closed. Default value: 20
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="failureRatio" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the failure rate threshold in percentage. If the failure rate is
-equal or greater than the threshold the CircuitBreaker transitions to open and
-starts short-circuiting calls. The threshold must be greater than 0 and not
+<![CDATA[
+Configures the failure rate threshold in percentage. If the failure rate is equal or greater than the threshold the
+CircuitBreaker transitions to open and starts short-circuiting calls. The threshold must be greater than 0 and not
 greater than 100. Default value is 50 percentage. Default value: 50
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="timeoutEnabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether timeout is enabled or not on the circuit breaker. Default is false.
-Default value: false
-            ]]>
+<![CDATA[
+Whether timeout is enabled or not on the circuit breaker. Default is false. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="timeoutDuration" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the thread execution timeout. Default value is 1 second. Default
-value: 1000
-            ]]>
+<![CDATA[
+Configures the thread execution timeout. Default value is 1 second. Default value: 1000
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="timeoutPoolSize" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the pool size of the thread pool when timeout is enabled. Default
-value is 10. Default value: 10
-            ]]>
+<![CDATA[
+Configures the pool size of the thread pool when timeout is enabled. Default value is 10. Default value: 10
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="timeoutScheduledExecutorService" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 References to a custom thread pool to use when timeout is enabled.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="bulkheadEnabled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether bulkhead is enabled or not on the circuit breaker. Default is false.
-Default value: false
-            ]]>
+<![CDATA[
+Whether bulkhead is enabled or not on the circuit breaker. Default is false. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="bulkheadMaxConcurrentCalls" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the max amount of concurrent calls the bulkhead will support. Default
-value: 10
-            ]]>
+<![CDATA[
+Configures the max amount of concurrent calls the bulkhead will support. Default value: 10
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="bulkheadWaitingTaskQueue" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Configures the task queue size for holding waiting tasks to be processed by the
-bulkhead. Default value: 10
-            ]]>
+<![CDATA[
+Configures the task queue size for holding waiting tasks to be processed by the bulkhead. Default value: 10
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="bulkheadExecutorService" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 References to a custom thread pool to use when bulkhead is enabled.
-            ]]>
+]]>
+            </xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+  <xs:complexType name="onFallbackDefinition">
+    <xs:complexContent>
+      <xs:extension base="tns:processorDefinition">
+        <xs:sequence>
+          <xs:choice maxOccurs="unbounded" minOccurs="0">
+            <xs:element ref="tns:aggregate"/>
+            <xs:element ref="tns:bean"/>
+            <xs:element ref="tns:doCatch"/>
+            <xs:element ref="tns:when"/>
+            <xs:element ref="tns:choice"/>
+            <xs:element ref="tns:otherwise"/>
+            <xs:element ref="tns:circuitBreaker"/>
+            <xs:element ref="tns:onFallback"/>
+            <xs:element ref="tns:claimCheck"/>
+            <xs:element ref="tns:convertBodyTo"/>
+            <xs:element ref="tns:delay"/>
+            <xs:element ref="tns:dynamicRouter"/>
+            <xs:element ref="tns:enrich"/>
+            <xs:element ref="tns:filter"/>
+            <xs:element ref="tns:doFinally"/>
+            <xs:element ref="tns:idempotentConsumer"/>
+            <xs:element ref="tns:intercept"/>
+            <xs:element ref="tns:interceptFrom"/>
+            <xs:element ref="tns:interceptSendToEndpoint"/>
+            <xs:element ref="tns:kamelet"/>
+            <xs:element ref="tns:loadBalance"/>
+            <xs:element ref="tns:log"/>
+            <xs:element ref="tns:loop"/>
+            <xs:element ref="tns:marshal"/>
+            <xs:element ref="tns:multicast"/>
+            <xs:element ref="tns:onCompletion"/>
+            <xs:element ref="tns:onException"/>
+            <xs:element ref="tns:pausable"/>
+            <xs:element ref="tns:pipeline"/>
+            <xs:element ref="tns:policy"/>
+            <xs:element ref="tns:pollEnrich"/>
+            <xs:element ref="tns:process"/>
+            <xs:element ref="tns:recipientList"/>
+            <xs:element ref="tns:removeHeader"/>
+            <xs:element ref="tns:removeHeaders"/>
+            <xs:element ref="tns:removeProperties"/>
+            <xs:element ref="tns:removeProperty"/>
+            <xs:element ref="tns:resequence"/>
+            <xs:element ref="tns:resumable"/>
+            <xs:element ref="tns:rollback"/>
+            <xs:element ref="tns:route"/>
+            <xs:element ref="tns:routingSlip"/>
+            <xs:element ref="tns:saga"/>
+            <xs:element ref="tns:sample"/>
+            <xs:element ref="tns:script"/>
+            <xs:element ref="tns:setBody"/>
+            <xs:element ref="tns:setExchangePattern"/>
+            <xs:element ref="tns:setHeader"/>
+            <xs:element ref="tns:setProperty"/>
+            <xs:element ref="tns:sort"/>
+            <xs:element ref="tns:split"/>
+            <xs:element ref="tns:step"/>
+            <xs:element ref="tns:stop"/>
+            <xs:element ref="tns:threads"/>
+            <xs:element ref="tns:throttle"/>
+            <xs:element ref="tns:throwException"/>
+            <xs:element ref="tns:to"/>
+            <xs:element ref="tns:toD"/>
+            <xs:element ref="tns:transacted"/>
+            <xs:element ref="tns:transform"/>
+            <xs:element ref="tns:doTry"/>
+            <xs:element ref="tns:unmarshal"/>
+            <xs:element ref="tns:validate"/>
+            <xs:element ref="tns:wireTap"/>
+            <xs:element ref="tns:serviceCall"/>
+          </xs:choice>
+        </xs:sequence>
+        <xs:attribute name="fallbackViaNetwork" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en">
+<![CDATA[
+Whether the fallback goes over the network. If the fallback will go over the network it is another possible point of
+failure. It is important to execute the fallback command on a separate thread-pool, otherwise if the main command were
+to become latent and fill the thread-pool this would prevent the fallback from running if the two commands share the
+same pool. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="claimCheckDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:noOutputDefinition">
-                
         <xs:sequence/>
-                
         <xs:attribute name="operation" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-The claim check operation to use. The following operations are supported: Get -
-Gets (does not remove) the claim check by the given key. GetAndRemove - Gets and
-removes the claim check by the given key. Set - Sets a new (will override if key
-already exists) claim check with the given key. Push - Sets a new claim check on
-the stack (does not use key). Pop - Gets the latest claim check from the stack
-(does not use key).
-            ]]>
+<![CDATA[
+The claim check operation to use. The following operations are supported: Get - Gets (does not remove) the claim check
+by the given key. GetAndRemove - Gets and removes the claim check by the given key. Set - Sets a new (will override if
+key already exists) claim check with the given key. Push - Sets a new claim check on the stack (does not use key). Pop -
+Gets the latest claim check from the stack (does not use key).
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="key" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-To use a specific key for claim check id (for dynamic keys use simple language
-syntax as the key).
-            ]]>
+<![CDATA[
+To use a specific key for claim check id (for dynamic keys use simple language syntax as the key).
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="filter" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Specify a filter to control what data gets merged data back from the claim check
-repository. The following syntax is supported: body - to aggregate the message
-body attachments - to aggregate all the message attachments headers - to
-aggregate all the message headers header:pattern - to aggregate all the message
-headers that matches the pattern. The following pattern rules are applied in
-this order: exact match, returns true wildcard match (pattern ends with a and
-the name starts with the pattern), returns true regular expression match,
-returns true otherwise returns false You can specify multiple rules separated by
-comma. For example, the following includes the message body and all headers
-starting with foo: body,header:foo. The syntax supports the following prefixes
-which can be used to specify include,exclude, or remove - to include (which is
-the default mode) - - to exclude (exclude takes precedence over include) -- - to
-remove (remove takes precedence) For example to exclude a header name foo, and
-remove all headers starting with bar, -header:foo,--headers:bar Note you cannot
-have both include and exclude header:pattern at the same time.
-            ]]>
+<![CDATA[
+Specify a filter to control what data gets merged data back from the claim check repository. The following syntax is
+supported: body - to aggregate the message body attachments - to aggregate all the message attachments headers - to
+aggregate all the message headers header:pattern - to aggregate all the message headers that matches the pattern. The
+following pattern rules are applied in this order: exact match, returns true wildcard match (pattern ends with a and the
+name starts with the pattern), returns true regular expression match, returns true otherwise returns false You can
+specify multiple rules separated by comma. For example, the following includes the message body and all headers starting
+with foo: body,header:foo. The syntax supports the following prefixes which can be used to specify include,exclude, or
+remove - to include (which is the default mode) - - to exclude (exclude takes precedence over include) -- - to remove
+(remove takes precedence) For example to exclude a header name foo, and remove all headers starting with bar,
+-header:foo,--headers:bar Note you cannot have both include and exclude header:pattern at the same time.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregationStrategy" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-To use a custom AggregationStrategy instead of the default implementation.
-Notice you cannot use both custom aggregation strategy and configure data at the
-same time.
-            ]]>
+<![CDATA[
+To use a custom AggregationStrategy instead of the default implementation. Notice you cannot use both custom aggregation
+strategy and configure data at the same time.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregationStrategyMethodName" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-This option can be used to explicit declare the method name to use, when using
-POJOs as the AggregationStrategy.
-            ]]>
+<![CDATA[
+This option can be used to explicit declare the method name to use, when using POJOs as the AggregationStrategy.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType final="extension restriction" name="constants">
-        
     <xs:sequence/>
-      
   </xs:complexType>
-    
   <xs:complexType name="contextScanDefinition">
-        
     <xs:sequence>
-            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="excludes" type="xs:string">
         <xs:annotation>
           <xs:documentation xml:lang="en">
-            <![CDATA[
+<![CDATA[
 Exclude finding route builder from these java package names.
-          ]]>
+]]>
           </xs:documentation>
         </xs:annotation>
       </xs:element>
-            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="includes" type="xs:string">
         <xs:annotation>
           <xs:documentation xml:lang="en">
-            <![CDATA[
+<![CDATA[
 Include finding route builder from these java package names.
-          ]]>
+]]>
           </xs:documentation>
         </xs:annotation>
       </xs:element>
-          
     </xs:sequence>
-        
     <xs:attribute name="includeNonSingletons" type="xs:string">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
-Whether to include non-singleton beans (prototypes) By default only singleton
-beans is included in the context scan. Default value: false
-        ]]>
+<![CDATA[
+Whether to include non-singleton beans (prototypes) By default only singleton beans is included in the context scan.
+Default value: false
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-      
   </xs:complexType>
-    
   <xs:complexType name="convertBodyDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:noOutputDefinition">
-                
         <xs:sequence/>
-                
         <xs:attribute name="type" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 The java type to convert to.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="mandatory" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-When mandatory then the conversion must return a value (cannot be null), if this
-is not possible then NoTypeConversionAvailableException is thrown. Setting this
-to false could mean conversion is not possible and the value is null. Default
-value: true
-            ]]>
+<![CDATA[
+When mandatory then the conversion must return a value (cannot be null), if this is not possible then
+NoTypeConversionAvailableException is thrown. Setting this to false could mean conversion is not possible and the value
+is null. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="charset" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 To use a specific charset when converting.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="dataFormat">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="delayDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:processorDefinition">
-                
         <xs:choice>
-                    
           <xs:element ref="tns:expressionDefinition"/>
-                    
           <xs:element ref="tns:csimple"/>
-                    
           <xs:element ref="tns:constant"/>
-                    
           <xs:element ref="tns:datasonnet"/>
-                    
           <xs:element ref="tns:exchangeProperty"/>
-                    
           <xs:element ref="tns:groovy"/>
-                    
           <xs:element ref="tns:header"/>
-                    
           <xs:element ref="tns:hl7terser"/>
-                    
           <xs:element ref="tns:js"/>
-                    
           <xs:element ref="tns:joor"/>
-                    
           <xs:element ref="tns:jq"/>
-                    
           <xs:element ref="tns:jsonpath"/>
-                    
           <xs:element ref="tns:language"/>
-                    
           <xs:element ref="tns:method"/>
-                    
           <xs:element ref="tns:mvel"/>
-                    
           <xs:element ref="tns:ognl"/>
-                    
           <xs:element ref="tns:python"/>
-                    
           <xs:element ref="tns:ref"/>
-                    
           <xs:element ref="tns:simple"/>
-                    
           <xs:element ref="tns:spel"/>
-                    
           <xs:element ref="tns:tokenize"/>
-                    
           <xs:element ref="tns:xtokenize"/>
-                    
           <xs:element ref="tns:xpath"/>
-                    
           <xs:element ref="tns:xquery"/>
-                  
         </xs:choice>
-                
         <xs:attribute name="asyncDelayed" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Enables asynchronous delay which means the thread will not block while delaying.
-Default value: true
-            ]]>
+<![CDATA[
+Enables asynchronous delay which means the thread will not block while delaying. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="callerRunsWhenRejected" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether or not the caller should run the task when it was rejected by the thread
-pool. Is by default true. Default value: true
-            ]]>
+<![CDATA[
+Whether or not the caller should run the task when it was rejected by the thread pool. Is by default true. Default
+value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="executorService" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 To use a custom Thread Pool if asyncDelay has been enabled.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="dynamicRouterDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:processorDefinition">
-                
         <xs:choice>
-                    
           <xs:element ref="tns:expressionDefinition"/>
-                    
           <xs:element ref="tns:csimple"/>
-                    
           <xs:element ref="tns:constant"/>
-                    
           <xs:element ref="tns:datasonnet"/>
-                    
           <xs:element ref="tns:exchangeProperty"/>
-                    
           <xs:element ref="tns:groovy"/>
-                    
           <xs:element ref="tns:header"/>
-                    
           <xs:element ref="tns:hl7terser"/>
-                    
           <xs:element ref="tns:js"/>
-                    
           <xs:element ref="tns:joor"/>
-                    
           <xs:element ref="tns:jq"/>
-                    
           <xs:element ref="tns:jsonpath"/>
-                    
           <xs:element ref="tns:language"/>
-                    
           <xs:element ref="tns:method"/>
-                    
           <xs:element ref="tns:mvel"/>
-                    
           <xs:element ref="tns:ognl"/>
-                    
           <xs:element ref="tns:python"/>
-                    
           <xs:element ref="tns:ref"/>
-                    
           <xs:element ref="tns:simple"/>
-                    
           <xs:element ref="tns:spel"/>
-                    
           <xs:element ref="tns:tokenize"/>
-                    
           <xs:element ref="tns:xtokenize"/>
-                    
           <xs:element ref="tns:xpath"/>
-                    
           <xs:element ref="tns:xquery"/>
-                  
         </xs:choice>
-                
         <xs:attribute name="uriDelimiter" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the uri delimiter to use. Default value: ,
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="ignoreInvalidEndpoints" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Ignore the invalidate endpoint exception when try to create a producer with that
-endpoint. Default value: false
-            ]]>
+<![CDATA[
+Ignore the invalidate endpoint exception when try to create a producer with that endpoint. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="cacheSize" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is
-used to cache and reuse producers when using this dynamic router, when uris are
-reused. Beware that when using dynamic endpoints then it affects how well the
-cache can be utilized. If each dynamic endpoint is unique then its best to turn
-of caching by setting this to -1, which allows Camel to not cache both the
-producers and endpoints; they are regarded as prototype scoped and will be
-stopped and discarded after use. This reduces memory usage as otherwise
-producers/endpoints are stored in memory in the caches. However if there are a
-high degree of dynamic endpoints that have been used before, then it can benefit
-to use the cache to reuse both producers and endpoints and therefore the cache
-size can be set accordingly or rely on the default size (1000). If there is a
-mix of unique and used before dynamic endpoints, then setting a reasonable cache
-size can help reduce memory usage to avoid storing too many non frequent used
-producers.
-            ]]>
+<![CDATA[
+Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is used to cache and reuse producers when
+using this dynamic router, when uris are reused. Beware that when using dynamic endpoints then it affects how well the
+cache can be utilized. If each dynamic endpoint is unique then its best to turn off caching by setting this to -1, which
+allows Camel to not cache both the producers and endpoints; they are regarded as prototype scoped and will be stopped
+and discarded after use. This reduces memory usage as otherwise producers/endpoints are stored in memory in the caches.
+However if there are a high degree of dynamic endpoints that have been used before, then it can benefit to use the cache
+to reuse both producers and endpoints and therefore the cache size can be set accordingly or rely on the default size
+(1000). If there is a mix of unique and used before dynamic endpoints, then setting a reasonable cache size can help
+reduce memory usage to avoid storing too many non frequent used producers.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="enrichDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:processorDefinition">
-                
         <xs:choice>
-                    
           <xs:element ref="tns:expressionDefinition"/>
-                    
           <xs:element ref="tns:csimple"/>
-                    
           <xs:element ref="tns:constant"/>
-                    
           <xs:element ref="tns:datasonnet"/>
-                    
           <xs:element ref="tns:exchangeProperty"/>
-                    
           <xs:element ref="tns:groovy"/>
-                    
           <xs:element ref="tns:header"/>
-                    
           <xs:element ref="tns:hl7terser"/>
-                    
           <xs:element ref="tns:js"/>
-                    
           <xs:element ref="tns:joor"/>
-                    
           <xs:element ref="tns:jq"/>
-                    
           <xs:element ref="tns:jsonpath"/>
-                    
           <xs:element ref="tns:language"/>
-                    
           <xs:element ref="tns:method"/>
-                    
           <xs:element ref="tns:mvel"/>
-                    
           <xs:element ref="tns:ognl"/>
-                    
           <xs:element ref="tns:python"/>
-                    
           <xs:element ref="tns:ref"/>
-                    
           <xs:element ref="tns:simple"/>
-                    
           <xs:element ref="tns:spel"/>
-                    
           <xs:element ref="tns:tokenize"/>
-                    
           <xs:element ref="tns:xtokenize"/>
-                    
           <xs:element ref="tns:xpath"/>
-                    
           <xs:element ref="tns:xquery"/>
-                  
         </xs:choice>
-                
         <xs:attribute name="aggregationStrategy" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the AggregationStrategy to be used to merge the reply from the external
-service, into a single outgoing message. By default Camel will use the reply
-from the external service as outgoing message.
-            ]]>
+<![CDATA[
+Sets the AggregationStrategy to be used to merge the reply from the external service, into a single outgoing message. By
+default Camel will use the reply from the external service as outgoing message.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregationStrategyMethodName" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-This option can be used to explicit declare the method name to use, when using
-POJOs as the AggregationStrategy.
-            ]]>
+<![CDATA[
+This option can be used to explicit declare the method name to use, when using POJOs as the AggregationStrategy.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregationStrategyMethodAllowNull" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-If this option is false then the aggregate method is not used if there was no
-data to enrich. If this option is true then null values is used as the
-oldExchange (when no data to enrich), when using POJOs as the
-AggregationStrategy.
-            ]]>
+<![CDATA[
+If this option is false then the aggregate method is not used if there was no data to enrich. If this option is true
+then null values is used as the oldExchange (when no data to enrich), when using POJOs as the AggregationStrategy.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="aggregateOnException" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-If this option is false then the aggregate method is not used if there was an
-exception thrown while trying to retrieve the data to enrich from the resource.
-Setting this option to true allows end users to control what to do if there was
-an exception in the aggregate method. For example to suppress the exception or
-set a custom message body etc. Default value: false
-            ]]>
+<![CDATA[
+If this option is false then the aggregate method is not used if there was an exception thrown while trying to retrieve
+the data to enrich from the resource. Setting this option to true allows end users to control what to do if there was an
+exception in the aggregate method. For example to suppress the exception or set a custom message body etc. Default
+value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="shareUnitOfWork" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Shares the org.apache.camel.spi.UnitOfWork with the parent and the resource
-exchange. Enrich will by default not share unit of work between the parent
-exchange and the resource exchange. This means the resource exchange has its own
+<![CDATA[
+Shares the org.apache.camel.spi.UnitOfWork with the parent and the resource exchange. Enrich will by default not share
+unit of work between the parent exchange and the resource exchange. This means the resource exchange has its own
 individual unit of work. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="cacheSize" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is
-used to cache and reuse producer when uris are reused. Beware that when using
-dynamic endpoints then it affects how well the cache can be utilized. If each
-dynamic endpoint is unique then its best to turn of caching by setting this to
--1, which allows Camel to not cache both the producers and endpoints; they are
-regarded as prototype scoped and will be stopped and discarded after use. This
-reduces memory usage as otherwise producers/endpoints are stored in memory in
-the caches. However if there are a high degree of dynamic endpoints that have
-been used before, then it can benefit to use the cache to reuse both producers
-and endpoints and therefore the cache size can be set accordingly or rely on the
-default size (1000). If there is a mix of unique and used before dynamic
-endpoints, then setting a reasonable cache size can help reduce memory usage to
-avoid storing too many non frequent used producers.
-            ]]>
+<![CDATA[
+Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is used to cache and reuse producer when uris
+are reused. Beware that when using dynamic endpoints then it affects how well the cache can be utilized. If each dynamic
+endpoint is unique then its best to turn off caching by setting this to -1, which allows Camel to not cache both the
+producers and endpoints; they are regarded as prototype scoped and will be stopped and discarded after use. This reduces
+memory usage as otherwise producers/endpoints are stored in memory in the caches. However if there are a high degree of
+dynamic endpoints that have been used before, then it can benefit to use the cache to reuse both producers and endpoints
+and therefore the cache size can be set accordingly or rely on the default size (1000). If there is a mix of unique and
+used before dynamic endpoints, then setting a reasonable cache size can help reduce memory usage to avoid storing too
+many non frequent used producers.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="ignoreInvalidEndpoint" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Ignore the invalidate endpoint exception when try to create a producer with that
-endpoint. Default value: false
-            ]]>
+<![CDATA[
+Ignore the invalidate endpoint exception when try to create a producer with that endpoint. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="allowOptimisedComponents" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether to allow components to optimise enricher if they are
-org.apache.camel.spi.SendDynamicAware . Default value: true
-            ]]>
+<![CDATA[
+Whether to allow components to optimise enricher if they are org.apache.camel.spi.SendDynamicAware . Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="errorHandlerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence>
-                    
           <xs:choice minOccurs="0">
-                        
             <xs:element ref="tns:deadLetterChannel"/>
-                        
             <xs:element ref="tns:defaultErrorHandler"/>
-                        
             <xs:element ref="tns:noErrorHandler"/>
-                        
             <xs:element ref="tns:jtaTransactionErrorHandler"/>
-                        
             <xs:element ref="tns:springTransactionErrorHandler"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="deadLetterChannelDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:defaultErrorHandlerDefinition">
-                
         <xs:sequence/>
-                
         <xs:attribute name="deadLetterUri" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 The dead letter endpoint uri for the Dead Letter error handler.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="deadLetterHandleNewException" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Whether the dead letter channel should handle (and ignore) any new exception
-that may been thrown during sending the message to the dead letter endpoint. The
-default value is true which means any such kind of exception is handled and
-ignored. Set this to false to let the exception be propagated back on the
-org.apache.camel.Exchange . This can be used in situations where you use
-transactions, and want to use Camel's dead letter channel to deal with
-exceptions during routing, but if the dead letter channel itself fails because
-of a new exception being thrown, then by setting this to false the new
-exceptions is propagated back and set on the org.apache.camel.Exchange , which
-allows the transaction to detect the exception, and rollback. Default value:
-true
-            ]]>
+<![CDATA[
+Whether the dead letter channel should handle (and ignore) any new exception that may been thrown during sending the
+message to the dead letter endpoint. The default value is true which means any such kind of exception is handled and
+ignored. Set this to false to let the exception be propagated back on the org.apache.camel.Exchange . This can be used
+in situations where you use transactions, and want to use Camel's dead letter channel to deal with exceptions during
+routing, but if the dead letter channel itself fails because of a new exception being thrown, then by setting this to
+false the new exceptions is propagated back and set on the org.apache.camel.Exchange , which allows the transaction to
+detect the exception, and rollback. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="defaultErrorHandlerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:baseErrorHandlerDefinition">
-                
         <xs:sequence>
-                    
           <xs:element minOccurs="0" ref="tns:redeliveryPolicy"/>
-                  
         </xs:sequence>
-                
         <xs:attribute name="loggerRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 References to a logger to use as logger for the error handler.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="level" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Logging level to use when using the logging error handler type. Default value:
-ERROR
-            ]]>
+<![CDATA[
+Logging level to use when using the logging error handler type. Default value: ERROR
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logName" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Name of the logger to use for the logging error handler.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="useOriginalMessage" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Will use the original input org.apache.camel.Message (original body and headers)
-when an org.apache.camel.Exchange is moved to the dead letter queue. Notice:
-this only applies when all redeliveries attempt have failed and the
-org.apache.camel.Exchange is doomed for failure. Instead of using the current
-inprogress org.apache.camel.Exchange IN message we use the original IN message
-instead. This allows you to store the original input in the dead letter queue
-instead of the inprogress snapshot of the IN message. For instance if you route
-transform the IN body during routing and then failed. With the original exchange
-store in the dead letter queue it might be easier to manually re submit the
-org.apache.camel.Exchange again as the IN message is the same as when Camel
-received it. So you should be able to send the org.apache.camel.Exchange to the
-same input. The difference between useOriginalMessage and useOriginalBody is
-that the former includes both the original body and headers, where as the latter
-only includes the original body. You can use the latter to enrich the message
-with custom headers and include the original message body. The former wont let
-you do this, as its using the original message body and headers as they are. You
-cannot enable both useOriginalMessage and useOriginalBody. Important: The
-original input means the input message that are bounded by the current
-org.apache.camel.spi.UnitOfWork . An unit of work typically spans one route, or
-multiple routes if they are connected using internal endpoints such as direct or
-seda. When messages is passed via external endpoints such as JMS or HTTP then
-the consumer will create a new unit of work, with the message it received as
-input as the original input. Also some EIP patterns such as splitter, multicast,
-will create a new unit of work boundary for the messages in their sub-route (eg
-the splitted message); however these EIPs have an option named shareUnitOfWork
-which allows to combine with the parent unit of work in regard to error handling
-and therefore use the parent original message. By default this feature is off.
-Default value: false
-            ]]>
+<![CDATA[
+Will use the original input org.apache.camel.Message (original body and headers) when an org.apache.camel.Exchange is
+moved to the dead letter queue. Notice: this only applies when all redeliveries attempt have failed and the
+org.apache.camel.Exchange is doomed for failure. Instead of using the current inprogress org.apache.camel.Exchange IN
+message we use the original IN message instead. This allows you to store the original input in the dead letter queue
+instead of the inprogress snapshot of the IN message. For instance if you route transform the IN body during routing and
+then failed. With the original exchange store in the dead letter queue it might be easier to manually re submit the
+org.apache.camel.Exchange again as the IN message is the same as when Camel received it. So you should be able to send
+the org.apache.camel.Exchange to the same input. The difference between useOriginalMessage and useOriginalBody is that
+the former includes both the original body and headers, where as the latter only includes the original body. You can use
+the latter to enrich the message with custom headers and include the original message body. The former wont let you do
+this, as its using the original message body and headers as they are. You cannot enable both useOriginalMessage and
+useOriginalBody. The original input message is defensively copied, and the copied message body is converted to
+org.apache.camel.StreamCache if possible (stream caching is enabled, can be disabled globally or on the original route),
+to ensure the body can be read when the original message is being used later. If the body is converted to
+org.apache.camel.StreamCache then the message body on the current org.apache.camel.Exchange is replaced with the
+org.apache.camel.StreamCache body. If the body is not converted to org.apache.camel.StreamCache then the body will not
+be able to re-read when accessed later. Important: The original input means the input message that are bounded by the
+current org.apache.camel.spi.UnitOfWork . An unit of work typically spans one route, or multiple routes if they are
+connected using internal endpoints such as direct or seda. When messages is passed via external endpoints such as JMS or
+HTTP then the consumer will create a new unit of work, with the message it received as input as the original input. Also
+some EIP patterns such as splitter, multicast, will create a new unit of work boundary for the messages in their
+sub-route (eg the splitted message); however these EIPs have an option named shareUnitOfWork which allows to combine
+with the parent unit of work in regard to error handling and therefore use the parent original message. By default this
+feature is off. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="useOriginalBody" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Will use the original input org.apache.camel.Message body (original body only)
-when an org.apache.camel.Exchange is moved to the dead letter queue. Notice:
-this only applies when all redeliveries attempt have failed and the
-org.apache.camel.Exchange is doomed for failure. Instead of using the current
-inprogress org.apache.camel.Exchange IN message we use the original IN message
-instead. This allows you to store the original input in the dead letter queue
-instead of the inprogress snapshot of the IN message. For instance if you route
-transform the IN body during routing and then failed. With the original exchange
-store in the dead letter queue it might be easier to manually re submit the
-org.apache.camel.Exchange again as the IN message is the same as when Camel
-received it. So you should be able to send the org.apache.camel.Exchange to the
-same input. The difference between useOriginalMessage and useOriginalBody is
-that the former includes both the original body and headers, where as the latter
-only includes the original body. You can use the latter to enrich the message
-with custom headers and include the original message body. The former wont let
-you do this, as its using the original message body and headers as they are. You
-cannot enable both useOriginalMessage and useOriginalBody. Important: The
-original input means the input message that are bounded by the current
-org.apache.camel.spi.UnitOfWork . An unit of work typically spans one route, or
-multiple routes if they are connected using internal endpoints such as direct or
-seda. When messages is passed via external endpoints such as JMS or HTTP then
-the consumer will create a new unit of work, with the message it received as
-input as the original input. Also some EIP patterns such as splitter, multicast,
-will create a new unit of work boundary for the messages in their sub-route (eg
-the splitted message); however these EIPs have an option named shareUnitOfWork
-which allows to combine with the parent unit of work in regard to error handling
-and therefore use the parent original message. By default this feature is off.
-Default value: false
-            ]]>
+<![CDATA[
+Will use the original input org.apache.camel.Message body (original body only) when an org.apache.camel.Exchange is
+moved to the dead letter queue. Notice: this only applies when all redeliveries attempt have failed and the
+org.apache.camel.Exchange is doomed for failure. Instead of using the current inprogress org.apache.camel.Exchange IN
+message we use the original IN message instead. This allows you to store the original input in the dead letter queue
+instead of the inprogress snapshot of the IN message. For instance if you route transform the IN body during routing and
+then failed. With the original exchange store in the dead letter queue it might be easier to manually re submit the
+org.apache.camel.Exchange again as the IN message is the same as when Camel received it. So you should be able to send
+the org.apache.camel.Exchange to the same input. The difference between useOriginalMessage and useOriginalBody is that
+the former includes both the original body and headers, where as the latter only includes the original body. You can use
+the latter to enrich the message with custom headers and include the original message body. The former wont let you do
+this, as its using the original message body and headers as they are. You cannot enable both useOriginalMessage and
+useOriginalBody. The original input message is defensively copied, and the copied message body is converted to
+org.apache.camel.StreamCache if possible (stream caching is enabled, can be disabled globally or on the original route),
+to ensure the body can be read when the original message is being used later. If the body is converted to
+org.apache.camel.StreamCache then the message body on the current org.apache.camel.Exchange is replaced with the
+org.apache.camel.StreamCache body. If the body is not converted to org.apache.camel.StreamCache then the body will not
+be able to re-read when accessed later. Important: The original input means the input message that are bounded by the
+current org.apache.camel.spi.UnitOfWork . An unit of work typically spans one route, or multiple routes if they are
+connected using internal endpoints such as direct or seda. When messages is passed via external endpoints such as JMS or
+HTTP then the consumer will create a new unit of work, with the message it received as input as the original input. Also
+some EIP patterns such as splitter, multicast, will create a new unit of work boundary for the messages in their
+sub-route (eg the splitted message); however these EIPs have an option named shareUnitOfWork which allows to combine
+with the parent unit of work in regard to error handling and therefore use the parent original message. By default this
+feature is off. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="onRedeliveryRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets a reference to a processor that should be processed before a redelivery
-attempt. Can be used to change the org.apache.camel.Exchange before its being
-redelivered.
-            ]]>
+<![CDATA[
+Sets a reference to a processor that should be processed before a redelivery attempt. Can be used to change the
+org.apache.camel.Exchange before its being redelivered.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="onExceptionOccurredRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets a reference to a processor that should be processed just after an exception
-occurred. Can be used to perform custom logging about the occurred exception at
-the exact time it happened. Important: Any exception thrown from this processor
+<![CDATA[
+Sets a reference to a processor that should be processed just after an exception occurred. Can be used to perform custom
+logging about the occurred exception at the exact time it happened. Important: Any exception thrown from this processor
 will be ignored.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="onPrepareFailureRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets a reference to a processor to prepare the org.apache.camel.Exchange before
-handled by the failure processor / dead letter channel. This allows for example
-to enrich the message before sending to a dead letter queue.
-            ]]>
+<![CDATA[
+Sets a reference to a processor to prepare the org.apache.camel.Exchange before handled by the failure processor / dead
+letter channel. This allows for example to enrich the message before sending to a dead letter queue.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="retryWhileRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets a retry while predicate. Will continue retrying until the predicate
-evaluates to false.
-            ]]>
+<![CDATA[
+Sets a retry while predicate. Will continue retrying until the predicate evaluates to false.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="redeliveryPolicyRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets a reference to a RedeliveryPolicy to be used for redelivery settings.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="executorServiceRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets a reference to a thread pool to be used by the error handler.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="baseErrorHandlerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="redeliveryPolicyDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:identifiedType">
-                
         <xs:sequence/>
-                
         <xs:attribute name="maximumRedeliveries" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the maximum redeliveries x = redeliver at most x times 0 = no redeliveries
--1 = redeliver forever.
-            ]]>
+<![CDATA[
+Sets the maximum redeliveries x = redeliver at most x times 0 = no redeliveries -1 = redeliver forever.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="redeliveryDelay" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the initial redelivery delay. Default value: 1000
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="asyncDelayedRedelivery" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Allow asynchronous delayed redelivery. The route, in particular the consumer's
-component, must support the Asynchronous Routing Engine (e.g. seda). Default
-value: false
-            ]]>
+<![CDATA[
+Allow asynchronous delayed redelivery. The route, in particular the consumer's component, must support the Asynchronous
+Routing Engine (e.g. seda). Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="backOffMultiplier" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the back off multiplier. Default value: 2.0
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="useExponentialBackOff" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Turn on exponential backk off. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="collisionAvoidanceFactor" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the collision avoidance factor. Default value: 0.15
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="useCollisionAvoidance" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Turn on collision avoidance. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="maximumRedeliveryDelay" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the maximum delay between redelivery. Default value: 60000
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="retriesExhaustedLogLevel" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the logging level to use when retries have been exhausted. Default value:
-ERROR
-            ]]>
+<![CDATA[
+Sets the logging level to use when retries have been exhausted. Default value: ERROR
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="retryAttemptedLogLevel" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the logging level to use for logging retry attempts. Default value: DEBUG
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="retryAttemptedLogInterval" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the interval to use for logging retry attempts. Default value: 1
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logRetryAttempted" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether retry attempts should be logged or not. Can be used to include or
-reduce verbose. Default value: true
-            ]]>
+<![CDATA[
+Sets whether retry attempts should be logged or not. Can be used to include or reduce verbose. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logStackTrace" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether stack traces should be logged. Can be used to include or reduce
-verbose. Default value: true
-            ]]>
+<![CDATA[
+Sets whether stack traces should be logged. Can be used to include or reduce verbose. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logRetryStackTrace" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether stack traces should be logged when an retry attempt failed. Can be
-used to include or reduce verbose. Default value: false
-            ]]>
+<![CDATA[
+Sets whether stack traces should be logged when an retry attempt failed. Can be used to include or reduce verbose.
+Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logHandled" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether handled exceptions should be logged or not. Can be used to include
-or reduce verbose. Default value: false
-            ]]>
+<![CDATA[
+Sets whether handled exceptions should be logged or not. Can be used to include or reduce verbose. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logNewException" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether new exceptions should be logged or not. Can be used to include or
-reduce verbose. A new exception is an exception that was thrown while handling a
-previous exception. Default value: true
-            ]]>
+<![CDATA[
+Sets whether new exceptions should be logged or not. Can be used to include or reduce verbose. A new exception is an
+exception that was thrown while handling a previous exception. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logContinued" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether continued exceptions should be logged or not. Can be used to
-include or reduce verbose. Default value: false
-            ]]>
+<![CDATA[
+Sets whether continued exceptions should be logged or not. Can be used to include or reduce verbose. Default value:
+false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logExhausted" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether exhausted exceptions should be logged or not. Can be used to
-include or reduce verbose. Default value: true
-            ]]>
+<![CDATA[
+Sets whether exhausted exceptions should be logged or not. Can be used to include or reduce verbose. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logExhaustedMessageHistory" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether exhausted exceptions should be logged including message history or
-not (supports property placeholders). Can be used to include or reduce verbose.
-Default value: false
-            ]]>
+<![CDATA[
+Sets whether exhausted exceptions should be logged including message history or not (supports property placeholders).
+Can be used to include or reduce verbose. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="logExhaustedMessageBody" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether exhausted message body should be logged including message history
-or not (supports property placeholders). Can be used to include or reduce
-verbose. Requires logExhaustedMessageHistory to be enabled. Default value: false
-            ]]>
+<![CDATA[
+Sets whether exhausted message body should be logged including message history or not (supports property placeholders).
+Can be used to include or reduce verbose. Requires logExhaustedMessageHistory to be enabled. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="disableRedelivery" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Disables redelivery (same as setting maximum redeliveries to 0). Default value:
-false
-            ]]>
+<![CDATA[
+Disables redelivery (same as setting maximum redeliveries to 0). Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="delayPattern" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the delay pattern with delay intervals.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="allowRedeliveryWhileStopping" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Controls whether to allow redelivery while stopping/shutting down a route that
-uses error handling. Default value: true
-            ]]>
+<![CDATA[
+Controls whether to allow redelivery while stopping/shutting down a route that uses error handling. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="exchangeFormatterRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the reference of the instance of org.apache.camel.spi.ExchangeFormatter to
-generate the log message from exchange.
-            ]]>
+<![CDATA[
+Sets the reference of the instance of org.apache.camel.spi.ExchangeFormatter to generate the log message from exchange.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="noErrorHandlerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:baseErrorHandlerDefinition">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="jtaTransactionErrorHandlerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:transactionErrorHandlerDefinition">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType abstract="true" name="transactionErrorHandlerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:defaultErrorHandlerDefinition">
-                
         <xs:sequence/>
-                
         <xs:attribute name="transactedPolicyRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-The transacted policy to use that is configured for either Spring or JTA based
-transactions. If no policy has been configured then Camel will attempt to
-auto-discover.
-            ]]>
+<![CDATA[
+The transacted policy to use that is configured for either Spring or JTA based transactions. If no policy has been
+configured then Camel will attempt to auto-discover.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="rollbackLoggingLevel" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the logging level to use for logging transactional rollback. This option is
-default WARN. Default value: WARN
-            ]]>
+<![CDATA[
+Sets the logging level to use for logging transactional rollback. This option is default WARN. Default value: WARN
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="springTransactionErrorHandlerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:transactionErrorHandlerDefinition">
-                
         <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="filterDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:processorDefinition">
-                
         <xs:sequence>
-                    
           <xs:choice>
-                        
             <xs:element ref="tns:expressionDefinition"/>
-                        
             <xs:element ref="tns:csimple"/>
-                        
             <xs:element ref="tns:constant"/>
-                        
             <xs:element ref="tns:datasonnet"/>
-                        
             <xs:element ref="tns:exchangeProperty"/>
-                        
             <xs:element ref="tns:groovy"/>
-                        
             <xs:element ref="tns:header"/>
-                        
             <xs:element ref="tns:hl7terser"/>
-                        
             <xs:element ref="tns:js"/>
-                        
             <xs:element ref="tns:joor"/>
-                        
             <xs:element ref="tns:jq"/>
-                        
             <xs:element ref="tns:jsonpath"/>
-                        
             <xs:element ref="tns:language"/>
-                        
             <xs:element ref="tns:method"/>
-                        
             <xs:element ref="tns:mvel"/>
-                        
             <xs:element ref="tns:ognl"/>
-                        
             <xs:element ref="tns:python"/>
-                        
             <xs:element ref="tns:ref"/>
-                        
             <xs:element ref="tns:simple"/>
-                        
             <xs:element ref="tns:spel"/>
-                        
             <xs:element ref="tns:tokenize"/>
-                        
             <xs:element ref="tns:xtokenize"/>
-                        
             <xs:element ref="tns:xpath"/>
-                        
             <xs:element ref="tns:xquery"/>
-                      
           </xs:choice>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-                
         <xs:attribute name="statusPropertyName" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Name of exchange property to use for storing the status of the filtering.
-Setting this allows to know if the filter predicate evaluated as true or false.
-            ]]>
+<![CDATA[
+Name of exchange property to use for storing the status of the filtering. Setting this allows to know if the filter
+predicate evaluated as true or false.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="finallyDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:output">
-                
         <xs:sequence>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="fromDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:optionalIdentifiedDefinition">
-                
         <xs:sequence/>
-                
         <xs:attribute name="uri" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the URI of the endpoint to use.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="globalOptionDefinition">
-        
     <xs:sequence/>
-        
     <xs:attribute name="key" type="xs:string" use="required">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Global option key.
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-        
     <xs:attribute name="value" type="xs:string" use="required">
       <xs:annotation>
         <xs:documentation xml:lang="en">
-          <![CDATA[
+<![CDATA[
 Global option value.
-        ]]>
+]]>
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
-      
   </xs:complexType>
-    
   <xs:complexType name="globalOptionsDefinition">
-        
     <xs:sequence>
-            
       <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:globalOption"/>
-          
     </xs:sequence>
-      
   </xs:complexType>
-    
   <xs:complexType name="idempotentConsumerDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:processorDefinition">
-                
         <xs:sequence>
-                    
           <xs:choice>
-                        
             <xs:element ref="tns:expressionDefinition"/>
-                        
             <xs:element ref="tns:csimple"/>
-                        
             <xs:element ref="tns:constant"/>
-                        
             <xs:element ref="tns:datasonnet"/>
-                        
             <xs:element ref="tns:exchangeProperty"/>
-                        
             <xs:element ref="tns:groovy"/>
-                        
             <xs:element ref="tns:header"/>
-                        
             <xs:element ref="tns:hl7terser"/>
-                        
             <xs:element ref="tns:js"/>
-                        
             <xs:element ref="tns:joor"/>
-                        
             <xs:element ref="tns:jq"/>
-                        
             <xs:element ref="tns:jsonpath"/>
-                        
             <xs:element ref="tns:language"/>
-                        
             <xs:element ref="tns:method"/>
-                        
             <xs:element ref="tns:mvel"/>
-                        
             <xs:element ref="tns:ognl"/>
-                        
             <xs:element ref="tns:python"/>
-                        
             <xs:element ref="tns:ref"/>
-                        
             <xs:element ref="tns:simple"/>
-                        
             <xs:element ref="tns:spel"/>
-                        
             <xs:element ref="tns:tokenize"/>
-                        
             <xs:element ref="tns:xtokenize"/>
-                        
             <xs:element ref="tns:xpath"/>
-                        
             <xs:element ref="tns:xquery"/>
-                      
           </xs:choice>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-                
         <xs:attribute name="idempotentRepository" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Sets the reference name of the message id repository.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="eager" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether to eagerly add the key to the idempotent repository or wait until
-the exchange is complete. Eager is default enabled. Default value: true
-            ]]>
+<![CDATA[
+Sets whether to eagerly add the key to the idempotent repository or wait until the exchange is complete. Eager is
+default enabled. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="completionEager" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether to complete the idempotent consumer eager or when the exchange is
-done. If this option is true to complete eager, then the idempotent consumer
-will trigger its completion when the exchange reached the end of the block of
-the idempotent consumer pattern. So if the exchange is continued routed after
-the block ends, then whatever happens there does not affect the state. If this
-option is false (default) to not complete eager, then the idempotent consumer
-will complete when the exchange is done being routed. So if the exchange is
-continued routed after the block ends, then whatever happens there also affect
-the state. For example if the exchange failed due to an exception, then the
-state of the idempotent consumer will be a rollback. Default value: false
-            ]]>
+<![CDATA[
+Sets whether to complete the idempotent consumer eager or when the exchange is done. If this option is true to complete
+eager, then the idempotent consumer will trigger its completion when the exchange reached the end of the block of the
+idempotent consumer pattern. So if the exchange is continued routed after the block ends, then whatever happens there
+does not affect the state. If this option is false (default) to not complete eager, then the idempotent consumer will
+complete when the exchange is done being routed. So if the exchange is continued routed after the block ends, then
+whatever happens there also affect the state. For example if the exchange failed due to an exception, then the state of
+the idempotent consumer will be a rollback. Default value: false
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="skipDuplicate" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether to skip duplicates or not. The default behavior is to skip
-duplicates. A duplicate message would have the Exchange property
-org.apache.camel.Exchange#DUPLICATE_MESSAGE set to a Boolean#TRUE value. A none
-duplicate message will not have this property set. Default value: true
-            ]]>
+<![CDATA[
+Sets whether to skip duplicates or not. The default behavior is to skip duplicates. A duplicate message would have the
+Exchange property org.apache.camel.Exchange#DUPLICATE_MESSAGE set to a Boolean#TRUE value. A none duplicate message will
+not have this property set. Default value: true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="removeOnFailure" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets whether to remove or keep the key on failure. The default behavior is to
-remove the key on failure. Default value: true
-            ]]>
-            </xs:documentation>
-          </xs:annotation>
-        </xs:attribute>
-              
-      </xs:extension>
-          
-    </xs:complexContent>
-      
-  </xs:complexType>
-    
-  <xs:complexType name="inOnlyDefinition">
-        
-    <xs:complexContent>
-            
-      <xs:extension base="tns:sendDefinition">
-                
-        <xs:sequence/>
-              
-      </xs:extension>
-          
-    </xs:complexContent>
-      
-  </xs:complexType>
-    
-  <xs:complexType abstract="true" name="sendDefinition">
-        
-    <xs:complexContent>
-            
-      <xs:extension base="tns:noOutputDefinition">
-                
-        <xs:sequence/>
-                
-        <xs:attribute name="uri" type="xs:string">
-          <xs:annotation>
-            <xs:documentation xml:lang="en">
-              <![CDATA[
-Sets the uri of the endpoint to send to.
-            ]]>
+<![CDATA[
+Sets whether to remove or keep the key on failure. The default behavior is to remove the key on failure. Default value:
+true
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
-      </xs:extension>
-          
-    </xs:complexContent>
-      
-  </xs:complexType>
-    
-  <xs:complexType name="inOutDefinition">
-        
-    <xs:complexContent>
-            
-      <xs:extension base="tns:sendDefinition">
-                
-        <xs:sequence/>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="inputTypeDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:optionalIdentifiedDefinition">
-                
         <xs:sequence/>
-                
         <xs:attribute name="urn" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 The input type URN.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="validate" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Whether if validation is required for this input type. Default value: false
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="interceptDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:output">
-                
         <xs:sequence>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="interceptFromDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:interceptDefinition">
-                
         <xs:sequence/>
-                
         <xs:attribute name="uri" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-Intercept incoming messages from the uri or uri pattern. If this option is not
-configured, then all incoming messages is intercepted.
-            ]]>
+<![CDATA[
+Intercept incoming messages from the uri or uri pattern. If this option is not configured, then all incoming messages is
+intercepted.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="interceptSendToEndpointDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:output">
-                
         <xs:sequence>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
             <xs:element ref="tns:when"/>
-                        
             <xs:element ref="tns:choice"/>
-                        
             <xs:element ref="tns:otherwise"/>
-                        
             <xs:element ref="tns:circuitBreaker"/>
-                        
+            <xs:element ref="tns:onFallback"/>
             <xs:element ref="tns:claimCheck"/>
-                        
             <xs:element ref="tns:convertBodyTo"/>
-                        
             <xs:element ref="tns:delay"/>
-                        
             <xs:element ref="tns:dynamicRouter"/>
-                        
             <xs:element ref="tns:enrich"/>
-                        
             <xs:element ref="tns:filter"/>
-                        
             <xs:element ref="tns:doFinally"/>
-                        
             <xs:element ref="tns:idempotentConsumer"/>
-                        
-            <xs:element ref="tns:inOnly"/>
-                        
-            <xs:element ref="tns:inOut"/>
-                        
             <xs:element ref="tns:intercept"/>
-                        
             <xs:element ref="tns:interceptFrom"/>
-                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
-                        
             <xs:element ref="tns:kamelet"/>
-                        
             <xs:element ref="tns:loadBalance"/>
-                        
             <xs:element ref="tns:log"/>
-                        
             <xs:element ref="tns:loop"/>
-                        
             <xs:element ref="tns:marshal"/>
-                        
             <xs:element ref="tns:multicast"/>
-                        
             <xs:element ref="tns:onCompletion"/>
-                        
             <xs:element ref="tns:onException"/>
-                        
-            <xs:element ref="tns:onFallback"/>
-                        
             <xs:element ref="tns:pausable"/>
-                        
             <xs:element ref="tns:pipeline"/>
-                        
             <xs:element ref="tns:policy"/>
-                        
             <xs:element ref="tns:pollEnrich"/>
-                        
             <xs:element ref="tns:process"/>
-                        
             <xs:element ref="tns:recipientList"/>
-                        
             <xs:element ref="tns:removeHeader"/>
-                        
             <xs:element ref="tns:removeHeaders"/>
-                        
             <xs:element ref="tns:removeProperties"/>
-                        
             <xs:element ref="tns:removeProperty"/>
-                        
             <xs:element ref="tns:resequence"/>
-                        
             <xs:element ref="tns:resumable"/>
-                        
             <xs:element ref="tns:rollback"/>
-                        
             <xs:element ref="tns:route"/>
-                        
             <xs:element ref="tns:routingSlip"/>
-                        
             <xs:element ref="tns:saga"/>
-                        
             <xs:element ref="tns:sample"/>
-                        
             <xs:element ref="tns:script"/>
-                        
             <xs:element ref="tns:setBody"/>
-                        
             <xs:element ref="tns:setExchangePattern"/>
-                        
             <xs:element ref="tns:setHeader"/>
-                        
             <xs:element ref="tns:setProperty"/>
-                        
             <xs:element ref="tns:sort"/>
-                        
             <xs:element ref="tns:split"/>
-                        
             <xs:element ref="tns:step"/>
-                        
             <xs:element ref="tns:stop"/>
-                        
             <xs:element ref="tns:threads"/>
-                        
             <xs:element ref="tns:throttle"/>
-                        
             <xs:element ref="tns:throwException"/>
-                        
             <xs:element ref="tns:to"/>
-                        
             <xs:element ref="tns:toD"/>
-                        
             <xs:element ref="tns:transacted"/>
-                        
             <xs:element ref="tns:transform"/>
-                        
             <xs:element ref="tns:doTry"/>
-                        
             <xs:element ref="tns:unmarshal"/>
-                        
             <xs:element ref="tns:validate"/>
-                        
             <xs:element ref="tns:wireTap"/>
-                        
             <xs:element ref="tns:serviceCall"/>
-                      
           </xs:choice>
-                  
         </xs:sequence>
-                
         <xs:attribute name="uri" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
+<![CDATA[
 Intercept sending to the uri or uri pattern.
-            ]]>
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="skipSendToOriginalEndpoint" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-If set to true then the message is not sent to the original endpoint. By default
-(false) the message is both intercepted and then sent to the original endpoint.
-            ]]>
+<![CDATA[
+If set to true then the message is not sent to the original endpoint. By default (false) the message is both intercepted
+and then sent to the original endpoint.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-                
         <xs:attribute name="afterUri" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en">
-              <![CDATA[
-After sending to the endpoint then send the message to this uri which allows to
-process its result.
-            ]]>
+<![CDATA[
+After sending to the endpoint then send the message to this uri which allows to process its result.
+]]>
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
-              
       </xs:extension>
-          
     </xs:complexContent>
-      
   </xs:complexType>
-    
   <xs:complexType name="kameletDefinition">
-        
     <xs:complexContent>
-            
       <xs:extension base="tns:output">
-                
         <xs:sequence>
-                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
-                        
             <xs:element ref="tns:aggregate"/>
-                        
             <xs:element ref="tns:bean"/>
-                        
             <xs:element ref="tns:doCatch"/>
-                        
... 20019 lines suppressed ...