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 2018/03/16 09:17:33 UTC

svn commit: r1026848 [3/3] - in /websites/production/camel/content/schema: blueprint/camel-blueprint.xsd spring/camel-spring.xsd

Modified: websites/production/camel/content/schema/spring/camel-spring.xsd
==============================================================================
--- websites/production/camel/content/schema/spring/camel-spring.xsd (original)
+++ websites/production/camel/content/schema/spring/camel-spring.xsd Fri Mar 16 09:17:32 2018
@@ -16,10 +16,20 @@ Does processing before and/or after the
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="asn1" type="tns:asn1DataFormat">
+    <xs:annotation>
+      <xs:documentation xml:lang="en"><![CDATA[
+The ASN.1 data format is used for file transfer with telecommunications
+protocols.
+      ]]></xs:documentation>
+    </xs:annotation>
+  </xs:element>
+
   <xs:element name="avro" type="tns:avroDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Avro data format
+The Avro data format is used for serialization and deserialization of messages
+using Apache Avro binary dataformat.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -27,7 +37,7 @@ Avro data format
   <xs:element name="barcode" type="tns:barcodeDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Barcode data format
+The Barcode data format is used for creating barccode images (such as QR-Code)
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -35,7 +45,7 @@ Barcode data format
   <xs:element name="base64" type="tns:base64DataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Base64 data format
+The Base64 data format is used for base64 encoding and decoding.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -68,7 +78,8 @@ BeanPostProcessor to post process beans.
   <xs:element name="beanio" type="tns:beanioDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-BeanIO data format
+The BeanIO data format is used for working with flat payloads (such as CSV,
+delimited, or fixed length formats).
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -76,19 +87,25 @@ BeanIO data format
   <xs:element name="bindy" type="tns:bindyDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Bindy data format
+The Bindy data format is used for working with 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:element name="boon" type="tns:boonDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Boon data format
+Boon data format is used for unmarshal a JSon payload to POJO or to marshal POJO
+back to JSon payload.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="cachingServiceDiscovery" type="tns:cachingServiceCallServiceDiscoveryConfiguration"/>
+
   <xs:element name="camelContext" type="tns:camelContextFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -100,7 +117,8 @@ CamelContext using XML configuration.
   <xs:element name="castor" type="tns:castorDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Castor data format
+Castor data format is used for unmarshal a XML payload to POJO or to marshal
+POJO back to XML payload.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -121,22 +139,25 @@ Circuit break load balancer
     </xs:annotation>
   </xs:element>
 
-  <xs:element name="constant" type="tns:constantExpression">
+  <xs:element name="claimCheck" type="tns:claimCheckDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For expressions and predicates using a constant
+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="consulConfiguration" type="tns:consulConfigurationDefinition">
+  <xs:element name="constant" type="tns:constantExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Consul remote service call configuration
+To use a constant value in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="consulServiceDiscovery" type="tns:consulServiceCallServiceDiscoveryConfiguration"/>
+
   <xs:element name="consumerTemplate" type="tns:camelConsumerTemplateFactoryBean">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -165,7 +186,8 @@ Converts the message body to another typ
   <xs:element name="crypto" type="tns:cryptoDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Crypto data format
+Crypto data format is used for encrypting and decrypting of messages using Java
+Cryptographic Extension.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -173,7 +195,7 @@ Crypto data format
   <xs:element name="csv" type="tns:csvDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-CSV data format
+The CSV data format is used for handling CSV payloads.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -181,7 +203,8 @@ CSV data format
   <xs:element name="customDataFormat" type="tns:customDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Custom data format
+To use a custom data format implementation that does not come out of the box
+from Apache Camel.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -194,6 +217,8 @@ Custom load balancer
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="customServiceFilter" type="tns:customServiceCallServiceFilterConfiguration"/>
+
   <xs:element name="dataFormats" type="tns:dataFormatsDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -202,6 +227,8 @@ To configure data formats
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="defaultLoadBalancer" type="tns:defaultServiceCallServiceLoadBalancerConfiguration"/>
+
   <xs:element name="delay" type="tns:delayDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -226,18 +253,12 @@ To provide comments about the node.
     </xs:annotation>
   </xs:element>
 
-  <xs:element name="dnsConfiguration" type="tns:dnsConfigurationDefinition">
-    <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
-DNS remote service call configuration
-      ]]></xs:documentation>
-    </xs:annotation>
-  </xs:element>
+  <xs:element name="dnsServiceDiscovery" type="tns:dnsServiceCallServiceDiscoveryConfiguration"/>
 
   <xs:element name="doCatch" type="tns:catchDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Catches exceptions as part of a try catch finally block
+Catches exceptions as part of a try, catch, finally block
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -245,7 +266,7 @@ Catches exceptions as part of a try catc
   <xs:element name="doFinally" type="tns:finallyDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Path traversed when a try catch finally block exits
+Path traversed when a try, catch, finally block exits
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -253,7 +274,7 @@ Path traversed when a try catch finally
   <xs:element name="doTry" type="tns:tryDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Marks the beginning of a try catch finally block
+Marks the beginning of a try, catch, finally block
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -269,7 +290,7 @@ Routes messages based on dynamic rules
   <xs:element name="el" type="tns:elExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For EL expressions and predicates
+To use EL scripts in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -298,18 +319,12 @@ Error handler settings
     </xs:annotation>
   </xs:element>
 
-  <xs:element name="etcdConfiguration" type="tns:etcdConfigurationDefinition">
-    <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
-Etcd remote service call configuration
-      ]]></xs:documentation>
-    </xs:annotation>
-  </xs:element>
+  <xs:element name="etcdServiceDiscovery" type="tns:etcdServiceCallServiceDiscoveryConfiguration"/>
 
   <xs:element name="exchangeProperty" type="tns:exchangePropertyExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-An expression which extracts the named exchange property
+To use a Camel Exchange property in expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -341,6 +356,24 @@ Failover load balancer
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="fhirJson" type="tns:fhirJsonDataFormat">
+    <xs:annotation>
+      <xs:documentation xml:lang="en"><![CDATA[
+The FHIR JSon data format is used to marshall/unmarshall to/from 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[
+The FHIR XML data format is used to marshall/unmarshall from/to 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[
@@ -352,7 +385,8 @@ Filter out messages based using a predic
   <xs:element name="flatpack" type="tns:flatpackDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Flatpack data format
+The Flatpack data format is used for working with flat payloads (such as CSV,
+delimited, or fixed length formats).
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -381,10 +415,28 @@ Rest GET command
     </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.
+      ]]></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.
+      ]]></xs:documentation>
+    </xs:annotation>
+  </xs:element>
+
   <xs:element name="groovy" type="tns:groovyExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For Groovy expressions and predicates
+To use Groovy scripts in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -392,7 +444,8 @@ For Groovy expressions and predicates
   <xs:element name="gzip" type="tns:gzipDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-GZip compression data format
+The GZip data format is a message compression and de-compression format (which
+works with the popular gzip/gunzip tools).
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -408,15 +461,18 @@ Rest HEAD command
   <xs:element name="header" type="tns:headerExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-An expression which extracts the named exchange header
+To use a Camel Message header in expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="healthyServiceFilter" type="tns:healthyServiceCallServiceFilterConfiguration"/>
+
   <xs:element name="hessian" type="tns:hessianDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Hessian data format
+Hessian data format is used for marshalling and unmarshalling messages using
+Cauchos Hessian format.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -424,7 +480,8 @@ Hessian data format
   <xs:element name="hl7" type="tns:hl7DataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-HL7 data format
+The HL7 data format can be used to marshal or unmarshal HL7 (Health Care) model
+objects.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -448,7 +505,7 @@ Hystrix Circuit Breaker EIP configuratio
   <xs:element name="ical" type="tns:icalDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-iCal data format
+The iCal dataformat is used for working with iCalendar messages.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -477,6 +534,16 @@ Marks the exchange pattern for the route
     </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.
+      ]]></xs:documentation>
+    </xs:annotation>
+  </xs:element>
+
   <xs:element name="intercept" type="tns:interceptDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -504,7 +571,8 @@ Intercepts messages being sent to an end
   <xs:element name="jacksonxml" type="tns:jacksonXMLDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Jackson XML data format
+JacksonXML data format is used for unmarshal a XML payload to POJO or to marshal
+POJO back to XML payload.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -512,7 +580,7 @@ Jackson XML data format
   <xs:element name="javaScript" type="tns:javaScriptExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For JavaScript expressions and predicates
+To use JavaScript in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -520,7 +588,8 @@ For JavaScript expressions and predicate
   <xs:element name="jaxb" type="tns:jaxbDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-JAXB data format
+JAXB data format uses the JAXB2 XML marshalling standard to unmarshal an XML
+payload into Java objects or to marshal Java objects into an XML payload.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -528,7 +597,8 @@ JAXB data format
   <xs:element name="jibx" type="tns:jibxDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-JiBX data format
+JiBX data format is used for unmarshal a XML payload to POJO or to marshal POJO
+back to XML payload.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -544,7 +614,8 @@ JMX configuration.
   <xs:element name="json" type="tns:jsonDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-JSon data format
+JSon data format is used for unmarshal a JSon payload to POJO or to marshal POJO
+back to JSon payload.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -552,7 +623,7 @@ JSon data format
   <xs:element name="jsonpath" type="tns:jsonPathExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For JSonPath expressions and predicates
+To use JsonPath in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -560,26 +631,19 @@ For JSonPath expressions and predicates
   <xs:element name="jxpath" type="tns:jxPathExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For JXPath expressions and predicates
+To use JXPath in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
 
   <xs:element name="keyStoreParameters" type="tns:keyStoreParametersFactoryBean"/>
 
-  <xs:element name="kubernetesConfiguration" type="tns:kubernetesConfigurationDefinition">
-    <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
-Kubernetes remote service call configuration
-      ]]></xs:documentation>
-    </xs:annotation>
-  </xs:element>
+  <xs:element name="kubernetesServiceDiscovery" type="tns:kubernetesServiceCallServiceDiscoveryConfiguration"/>
 
   <xs:element name="language" type="tns:languageExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Represents a parameterised language expression which can support any language at
-runtime using the language attribute.
+To use the specified language in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -592,6 +656,8 @@ Balances message processing among a numb
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="loadBalancerConfiguration" type="tns:serviceCallServiceLoadBalancerConfiguration"/>
+
   <xs:element name="log" type="tns:logDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -611,7 +677,8 @@ Processes a message multiple times
   <xs:element name="lzf" type="tns:lzfDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-LZF compression data format
+The LZF data format is a message compression and de-compression format (uses the
+LZF deflate algorithm).
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -628,7 +695,7 @@ component
   <xs:element name="method" type="tns:methodCallExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For expressions and predicates using a java bean (aka method call)
+To use a Java bean (aka method call) in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -636,11 +703,17 @@ For expressions and predicates using a j
   <xs:element name="mime-multipart" type="tns:mimeMultipartDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-MIME Multipart data format
+The MIME Multipart data format can marshal a Camel message with attachments into
+a Camel message having a MIME-Multipart message as message body (and no
+attachments), and vise-versa when unmarshalling.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="multiServiceDiscovery" type="tns:aggregatingServiceCallServiceDiscoveryConfiguration"/>
+
+  <xs:element name="multiServiceFilter" type="tns:chainedServiceCallServiceFilterConfiguration"/>
+
   <xs:element name="multicast" type="tns:multicastDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -652,7 +725,7 @@ Routes the same message to multiple path
   <xs:element name="mvel" type="tns:mvelExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For MVEL expressions and predicates
+To use MVEL scripts in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -660,7 +733,7 @@ For MVEL expressions and predicates
   <xs:element name="ognl" type="tns:ognlExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For OGNL expressions and predicates
+To use OGNL scripts in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -713,6 +786,16 @@ Route to be executed when all other choi
     </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.
+      ]]></xs:documentation>
+    </xs:annotation>
+  </xs:element>
+
   <xs:element name="packageScan" type="tns:packageScanDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -729,6 +812,8 @@ To specify the rest operation parameters
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="passThroughServiceFilter" type="tns:passThroughServiceCallServiceFilterConfiguration"/>
+
   <xs:element name="patch" type="tns:patchVerbDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -740,7 +825,8 @@ Rest PATCH command
   <xs:element name="pgp" type="tns:pgpDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-PGP data format
+PGP data format is used for encrypting and decrypting of messages using Java
+Cryptographic Extension and PGP.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -748,7 +834,7 @@ PGP data format
   <xs:element name="php" type="tns:phpExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For PHP expressions and predicates
+To use PHP scripts in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -788,7 +874,7 @@ Rest POST command
   <xs:element name="process" type="tns:processDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Calls a Camel processor.
+Calls a Camel processor
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -809,6 +895,14 @@ Function to use with properties placehol
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="propertiesLocation" type="tns:camelPropertyPlaceholderLocationDefinition">
+    <xs:annotation>
+      <xs:documentation xml:lang="en"><![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[
@@ -828,7 +922,8 @@ Properties placeholder
   <xs:element name="protobuf" type="tns:protobufDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Google protobuf data format
+The Protobuf data format is used for serializing between Java objects and the
+Google Protobuf protocol.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -852,7 +947,7 @@ Rest PUT command
   <xs:element name="python" type="tns:pythonExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For Python expressions and predicates
+To use Python scripts in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -892,7 +987,8 @@ Configuration of redelivery policy.
   <xs:element name="ref" type="tns:refExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For using a custom expression
+Reference to an existing Camel expression or predicate, which is looked up from
+the Camel registry.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1009,13 +1105,7 @@ A series of rest services defined using
     </xs:annotation>
   </xs:element>
 
-  <xs:element name="ribbonConfiguration" type="tns:ribbonConfigurationDefinition">
-    <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
-Ribbon remote service call configuration
-      ]]></xs:documentation>
-    </xs:annotation>
-  </xs:element>
+  <xs:element name="ribbonLoadBalancer" type="tns:ribbonServiceCallServiceLoadBalancerConfiguration"/>
 
   <xs:element name="rollback" type="tns:rollbackDefinition">
     <xs:annotation>
@@ -1084,7 +1174,8 @@ Routes a message through a series of ste
   <xs:element name="rss" type="tns:rssDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-RSS data format
+RSS data format is used for working with RSS sync feed Java Objects and
+transforming to XML and vice-versa.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1092,7 +1183,15 @@ RSS data format
   <xs:element name="ruby" type="tns:rubyExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For Ruby expressions and predicates
+To use Ruby scripts in Camel expressions or predicates.
+      ]]></xs:documentation>
+    </xs:annotation>
+  </xs:element>
+
+  <xs:element name="saga" type="tns:sagaDefinition">
+    <xs:annotation>
+      <xs:documentation xml:lang="en"><![CDATA[
+Enables sagas on the route
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1118,7 +1217,8 @@ Executes a script from a language which
   <xs:element name="secureXML" type="tns:xmlSecurityDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-XML-Security data format
+The XML Security data format facilitates encryption and decryption of XML
+payloads.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1126,7 +1226,9 @@ XML-Security data format
   <xs:element name="serialization" type="tns:serializationDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Java Object Serialization data format
+Serialization is a data format which uses the standard Java Serialization
+mechanism to unmarshal a binary payload into Java objects or to marshal Java
+objects into a binary blob.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1134,12 +1236,26 @@ Java Object Serialization data format
   <xs:element name="serviceCall" type="tns:serviceCallDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Remote service call
+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[
+Remote service call configuration
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
 
-  <xs:element name="serviceCallConfiguration" type="tns:serviceCallConfigurationDefinition"/>
+  <xs:element name="serviceChooserConfiguration" type="tns:serviceCallServiceChooserConfiguration"/>
+
+  <xs:element name="serviceDiscoveryConfiguration" type="tns:serviceCallServiceDiscoveryConfiguration"/>
+
+  <xs:element name="serviceExpression" type="tns:serviceCallExpressionConfiguration"/>
+
+  <xs:element name="serviceFilterConfiguration" type="tns:serviceCallServiceFilterConfiguration"/>
 
   <xs:element name="setBody" type="tns:setBodyDefinition">
     <xs:annotation>
@@ -1192,7 +1308,7 @@ Sets a named property on the message exc
   <xs:element name="simple" type="tns:simpleExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For expressions and predicates using the simple language
+To use Camels built-in Simple language in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1200,7 +1316,8 @@ For expressions and predicates using the
   <xs:element name="soapjaxb" type="tns:soapJaxbDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-SOAP data format
+SOAP is a data format which uses JAXB2 and JAX-WS annotations to marshal and
+unmarshal SOAP payloads.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1216,7 +1333,7 @@ Sorts the contents of the message
   <xs:element name="spel" type="tns:spELExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For Spring Expression Language (SpEL) expressions and predicates
+To use Spring Expression Language (SpEL) in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1232,13 +1349,15 @@ Splits a single message into many sub-me
   <xs:element name="sql" type="tns:sqlExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For SQL expressions and predicates
+To use SQL (on Java beans) in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
 
   <xs:element name="sslContextParameters" type="tns:sslContextParametersFactoryBean"/>
 
+  <xs:element name="staticServiceDiscovery" type="tns:staticServiceCallServiceDiscoveryConfiguration"/>
+
   <xs:element name="sticky" type="tns:stickyLoadBalancerDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -1274,7 +1393,7 @@ Stream caching configuration.
   <xs:element name="string" type="tns:stringDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-String (text based) data format
+String data format is a textual based format that supports character encoding.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1282,7 +1401,8 @@ String (text based) data format
   <xs:element name="syslog" type="tns:syslogDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Syslog data format
+The Syslog dataformat is used for working with RFC3164 and RFC5424 messages
+(logging and monitoring).
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1290,7 +1410,8 @@ Syslog data format
   <xs:element name="tarfile" type="tns:tarFileDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-TAR file data format
+The Tar File data format is a message compression and de-compression format of
+tar files.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1306,7 +1427,7 @@ Configures a ProducerTemplate
   <xs:element name="terser" type="tns:terserExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For HL7 terser expressions and predicates
+To use HL7 terser scripts in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1335,6 +1456,15 @@ Specifies that all steps after this node
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="thrift" type="tns:thriftDataFormat">
+    <xs:annotation>
+      <xs:documentation xml:lang="en"><![CDATA[
+The Thrift data format is used for serialization and deserialization of messages
+using Apache Thrift binary dataformat.
+      ]]></xs:documentation>
+    </xs:annotation>
+  </xs:element>
+
   <xs:element name="throttle" type="tns:throttleDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -1354,7 +1484,8 @@ Throws an exception
   <xs:element name="tidyMarkup" type="tns:tidyMarkupDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Tidymark (wellformed HTML) data format
+TidyMarkup data format is used for parsing HTML and return it as pretty
+well-formed HTML.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1378,7 +1509,8 @@ Sends the message to a dynamic endpoint
   <xs:element name="tokenize" type="tns:tokenizerExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For expressions and predicates using a body or header tokenizer
+To use Camel message body or header with a tokenizer in Camel expressions or
+predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1407,12 +1539,21 @@ Transforms the message body based on an
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="transformers" type="tns:transformersDefinition">
+    <xs:annotation>
+      <xs:documentation xml:lang="en"><![CDATA[
+To configure transformers.
+      ]]></xs:documentation>
+    </xs:annotation>
+  </xs:element>
+
   <xs:element name="typeFilter" type="tns:yamlTypeFilterDefinition"/>
 
   <xs:element name="univocity-csv" type="tns:uniVocityCsvDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-UniVocity CSV data format
+The uniVocity CSV data format is used for working with CSV (Comma Separated
+Values) flat payloads.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1420,7 +1561,8 @@ UniVocity CSV data format
   <xs:element name="univocity-fixed" type="tns:uniVocityFixedWidthDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-UniVocity fixed-width data format
+The uniVocity Fixed Length data format is used for working with fixed length
+flat payloads.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1436,7 +1578,8 @@ To configure headers for UniVocity data
   <xs:element name="univocity-tsv" type="tns:uniVocityTsvDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-UniVocity TSV data format
+The uniVocity TSV data format is used for working with TSV (Tabular Separated
+Values) flat payloads.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1458,6 +1601,14 @@ Validates a message based on an expressi
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="validators" type="tns:validatorsDefinition">
+    <xs:annotation>
+      <xs:documentation xml:lang="en"><![CDATA[
+To configure validators.
+      ]]></xs:documentation>
+    </xs:annotation>
+  </xs:element>
+
   <xs:element name="verb" type="tns:verbDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
@@ -1485,8 +1636,8 @@ Triggers a route when an expression eval
   <xs:element name="whenSkipSendToEndpoint" type="tns:whenSkipSendToEndpointDefinition">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Predicate to determine if the message should be sent or not to the endpoint when
-using interceptSentToEndpoint.
+Predicate to determine if the message should be sent or not to the endpoint,
+when using interceptSentToEndpoint.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1503,7 +1654,8 @@ while continue routing the original mess
   <xs:element name="xmlBeans" type="tns:xmlBeansDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-XMLBeans data format
+XML Beans data format is used for unmarshal a XML payload to POJO or to marshal
+POJO back to XML payload.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1511,7 +1663,8 @@ XMLBeans data format
   <xs:element name="xmljson" type="tns:xmlJsonDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-XML-JSon data format
+XML JSon data format can convert from XML to JSON and vice-versa directly,
+without stepping through intermediate POJOs.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1519,7 +1672,7 @@ XML-JSon data format
   <xs:element name="xmlrpc" type="tns:xmlRpcDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-XML-RPC data format
+The XML RPC data format is used for working with the XML RPC protocol.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1527,7 +1680,7 @@ XML-RPC data format
   <xs:element name="xpath" type="tns:xPathExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For XPath expressions and predicates
+To use XPath (XML) in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1535,7 +1688,7 @@ For XPath expressions and predicates
   <xs:element name="xquery" type="tns:xQueryExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For XQuery expressions and predicates
+To use XQuery (XML) in Camel expressions or predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1543,7 +1696,8 @@ For XQuery expressions and predicates
   <xs:element name="xstream" type="tns:xStreamDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-XStream data format
+XSTream data format is used for unmarshal a XML payload to POJO or to marshal
+POJO back to XML payload.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1551,7 +1705,8 @@ XStream data format
   <xs:element name="xtokenize" type="tns:xmlTokenizerExpression">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-For expressions and predicates using a body or header tokenizer
+To use Camel message body or header with a XML tokenizer in Camel expressions or
+predicates.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1559,7 +1714,7 @@ For expressions and predicates using a b
   <xs:element name="yaml" type="tns:yamlDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-YAML data format
+YAML is a data format to marshal and unmarshal Java objects to and from YAML.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1567,7 +1722,8 @@ YAML data format
   <xs:element name="zip" type="tns:zipDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Zip compression data format (not for zip files)
+Zip Deflate Compression data format is a message compression and de-compression
+format (not zip files).
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
@@ -1575,11 +1731,14 @@ Zip compression data format (not for zip
   <xs:element name="zipFile" type="tns:zipFileDataFormat">
     <xs:annotation>
       <xs:documentation xml:lang="en"><![CDATA[
-Zip-file data format
+The Zip File data format is a message compression and de-compression format of
+zip files.
       ]]></xs:documentation>
     </xs:annotation>
   </xs:element>
 
+  <xs:element name="zookeeperServiceDiscovery" type="tns:zooKeeperServiceCallServiceDiscoveryConfiguration"/>
+
   <xs:complexType abstract="true" name="abstractCamelConsumerTemplateFactoryBean">
     <xs:complexContent>
       <xs:extension base="tns:abstractCamelFactoryBean">
@@ -1638,7 +1797,7 @@ Sets the value of the id property.
         <xs:attribute name="singleton" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Not in use. Default value: false
+Deprecated: Not in use. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -1653,7 +1812,7 @@ be configured using a series of property
         <xs:attribute name="pattern" type="tns:exchangePattern">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Sets the exchange pattern of the endpoint
+Deprecated: Sets the exchange pattern of the endpoint
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -1750,7 +1909,7 @@ Sets whether asynchronous delayed redeli
 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:
+because the transaction must execute in the same thread context. Default value:
 false
             ]]></xs:documentation>
           </xs:annotation>
@@ -1775,7 +1934,7 @@ time between retries. Default value: fal
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
 Sets the factor used for collision avoidance if enabled via
-useCollisionAvoidance.. Default value: 0.15
+useCollisionAvoidance. Default value: 0.15
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -1798,15 +1957,15 @@ Default value: 60000
         <xs:attribute name="retriesExhaustedLogLevel" type="tns:loggingLevel">
           <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
+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="tns:loggingLevel">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Sets the logging level to use for log messages when retries are attempted..
+Sets the logging level to use for log messages when retries are attempted.
 Default value: DEBUG
             ]]></xs:documentation>
           </xs:annotation>
@@ -1839,6 +1998,14 @@ Sets whether errors should be logged eve
             ]]></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
+            ]]></xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
         <xs:attribute name="logContinued" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
@@ -1861,10 +2028,18 @@ 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
+            ]]></xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
         <xs:attribute name="disableRedelivery" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Disables redelivery by setting maximum redeliveries to 0.. Default value: false
+Disables redelivery by setting maximum redeliveries to 0. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -1879,7 +2054,7 @@ Sets an optional delay pattern to use in
           <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
+uses error handling. Default value: true
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -1945,7 +2120,7 @@ Sets whether to allow core threads to ti
         <xs:attribute name="rejectedPolicy" type="tns:threadPoolRejectedPolicy">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Sets the handler for tasks which cannot be executed by the thread pool.. Default
+Sets the handler for tasks which cannot be executed by the thread pool. Default
 value: CallerRuns
             ]]></xs:documentation>
           </xs:annotation>
@@ -1982,7 +2157,7 @@ Disable JMI (default false). Default val
         <xs:attribute name="onlyRegisterProcessorWithCustomId" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Only register processor if a custom id was defined for it.. Default value: false
+Only register processor if a custom id was defined for it. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2078,7 +2253,7 @@ value: true
         <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
+A flag that indicates whether to include hostname in JMX MBean names. Default
 value: false
             ]]></xs:documentation>
           </xs:annotation>
@@ -2086,7 +2261,7 @@ value: false
         <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..
+A flag that indicates whether to use hostname or IP Address in the service url.
 Default value: false
             ]]></xs:documentation>
           </xs:annotation>
@@ -2095,7 +2270,7 @@ Default value: false
           <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
+passwords) from MBean names and attributes. Default value: true
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2108,8 +2283,9 @@ passwords) from MBean names and attribut
       <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" use="required">
+        <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
@@ -2122,8 +2298,8 @@ locations from this option.
           <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 link
+If no encoding has been set, then the properties files is loaded using
+ISO-8859-1 encoding (latin-1) as documented by link
 java.util.Propertiesload(java.io.InputStream)
             ]]></xs:documentation>
           </xs:annotation>
@@ -2131,7 +2307,7 @@ java.util.Propertiesload(java.io.InputSt
         <xs:attribute name="cache" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Whether or not to cache loaded properties. The default value is true.. Default
+Whether or not to cache loaded properties. The default value is true. Default
 value: true
             ]]></xs:documentation>
           </xs:annotation>
@@ -2139,8 +2315,8 @@ value: true
         <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
+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>
@@ -2175,9 +2351,17 @@ Optional suffix appended to property nam
         <xs:attribute name="fallbackToUnaugmentedProperty" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-If true first attempt resolution of property name augmented with propertyPrefix
+If true, first attempt resolution of property name augmented with propertyPrefix
 and propertySuffix before falling back the plain property name specified. If
-false only the augmented property name is searched.. Default value: true
+false, only the augmented property name is searched. Default value: true
+            ]]></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
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2216,6 +2400,35 @@ Reference to the custom properties funct
     </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[
+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[
+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[
+If the location is optional. Default value: false
+            ]]></xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
   <xs:complexType name="camelProxyFactoryDefinition">
     <xs:complexContent>
       <xs:extension base="tns:identifiedType">
@@ -2231,8 +2444,8 @@ the interface.
         <xs:attribute name="serviceRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-The camel endpoint reference used to send the message to when calling the
-service from the interface.
+Deprecated: The camel endpoint reference used to send the message to when
+calling the service from the interface.
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2246,7 +2459,7 @@ Java interfaces to use as facade for the
         <xs:attribute name="camelContextId" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-The id of the CamelContext to use if there is multiple CamelContext in the same
+The id of the CamelContext to use, if there is multiple CamelContext in the same
 JVM.
             ]]></xs:documentation>
           </xs:annotation>
@@ -2254,10 +2467,10 @@ JVM.
         <xs:attribute name="binding" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Camel parameter binding is enabled by default which will use binding information
-from the method signature parameters to bind to the Exchange/Message with the
-following annotations. If disabled then a
-org.apache.camel.component.bean.CamelInvocationHandler is used.. Default value:
+Camel parameter binding is enabled by default, which will use binding
+information from the method signature parameters to bind to the Exchange/Message
+with the following annotations. If disabled then a
+org.apache.camel.component.bean.CamelInvocationHandler is used. Default value:
 true
             ]]></xs:documentation>
           </xs:annotation>
@@ -2294,7 +2507,7 @@ Java interfaces to use as facade for the
         <xs:attribute name="camelContextId" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-The id of the CamelContext to use if there is multiple CamelContext in the same
+The id of the CamelContext to use, if there is multiple CamelContext in the same
 JVM.
             ]]></xs:documentation>
           </xs:annotation>
@@ -2311,7 +2524,7 @@ JVM.
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
 Sets whether the stream caching is enabled. Notice: This cannot be changed at
-runtime.. Default value: false
+runtime. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2319,8 +2532,8 @@ runtime.. Default value: false
           <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.
+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>
@@ -2395,9 +2608,9 @@ Sets whether statistics is enabled.
             <xs:documentation xml:lang="en"><![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
+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
+default value is false which means that all the rules must return true. Default
 value: false
             ]]></xs:documentation>
           </xs:annotation>
@@ -2503,7 +2716,7 @@ Endpoint to call in AOP before.
             <xs:documentation xml:lang="en"><![CDATA[
 Endpoint to call in AOP after. The difference between after and afterFinally is
 that afterFinally is invoked from a finally block so it will always be invoked
-no matter what eg also in case of an exception occur.
+no matter what, eg also in case of an exception occur.
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2512,7 +2725,7 @@ no matter what eg also in case of an exc
             <xs:documentation xml:lang="en"><![CDATA[
 Endpoint to call in AOP after finally. The difference between after and
 afterFinally is that afterFinally is invoked from a finally block so it will
-always be invoked no matter what eg also in case of an exception occur.
+always be invoked no matter what, eg also in case of an exception occur.
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2533,6 +2746,7 @@ always be invoked no matter what eg also
             <xs:element ref="tns:when"/>
             <xs:element ref="tns:choice"/>
             <xs:element ref="tns:otherwise"/>
+            <xs:element ref="tns:claimCheck"/>
             <xs:element ref="tns:convertBodyTo"/>
             <xs:element ref="tns:delay"/>
             <xs:element ref="tns:dynamicRouter"/>
@@ -2567,6 +2781,7 @@ always be invoked no matter what eg also
             <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"/>
@@ -2591,7 +2806,6 @@ always be invoked no matter what eg also
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
             <xs:element ref="tns:wireTap"/>
             <xs:element ref="tns:serviceCall"/>
-            <xs:element ref="tns:restBinding"/>
           </xs:choice>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="skip"/>
@@ -2629,35 +2843,35 @@ Sets the id of this node
         <xs:attribute name="lang" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Language such as en for english.
+Language, such as en for english.
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="layoutX" type="xs:double">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Layout position X
+Deprecated: Layout position X
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="layoutY" type="xs:double">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Layout position Y
+Deprecated: Layout position Y
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="layoutWidth" type="xs:double">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Layout width
+Deprecated: Layout width
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="layoutHeight" type="xs:double">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Layout height
+Deprecated: Layout height
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2682,6 +2896,7 @@ Layout height
             <xs:element ref="tns:when"/>
             <xs:element ref="tns:choice"/>
             <xs:element ref="tns:otherwise"/>
+            <xs:element ref="tns:claimCheck"/>
             <xs:element ref="tns:convertBodyTo"/>
             <xs:element ref="tns:delay"/>
             <xs:element ref="tns:dynamicRouter"/>
@@ -2716,6 +2931,7 @@ Layout height
             <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"/>
@@ -2740,7 +2956,6 @@ Layout height
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
             <xs:element ref="tns:wireTap"/>
             <xs:element ref="tns:serviceCall"/>
-            <xs:element ref="tns:restBinding"/>
           </xs:choice>
         </xs:sequence>
         <xs:attribute name="parallelProcessing" type="xs:boolean">
@@ -2749,16 +2964,16 @@ Layout height
 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
+creates a default pool with 10 concurrent threads. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="optimisticLocking" type="xs:boolean">
           <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:
+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>
@@ -2775,7 +2990,7 @@ used to send out aggregated exchanges as
         <xs:attribute name="timeoutCheckerExecutorServiceRef" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-If using either of the completionTimeout completionTimeoutExpression or
+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.
@@ -2794,7 +3009,7 @@ org.apache.camel.processor.aggregate.Mem
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
 A reference to lookup the AggregationStrategy in the Registry. Configuring an
-AggregationStrategy is required and is used to merge the incoming Exchange with
+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.
@@ -2804,7 +3019,7 @@ and newExchange is of course the new inc
         <xs:attribute name="strategyMethodName" 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
+This option can be used to explicit declare the method name to use, when using
 POJOs as the AggregationStrategy.
             ]]></xs:documentation>
           </xs:annotation>
@@ -2814,7 +3029,7 @@ POJOs as the AggregationStrategy.
             <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 POJOs as the AggregationStrategy..
+(at the very first aggregation), when using POJOs as the AggregationStrategy.
 Default value: false
             ]]></xs:documentation>
           </xs:annotation>
@@ -2822,25 +3037,48 @@ Default value: false
         <xs:attribute name="completionSize" type="xs:int">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Sets the completion size which is the number of aggregated exchanges which would
-cause the aggregate to consider the group as complete and send out the
-aggregated exchange.
+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:long">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Sets the completion interval which would cause the aggregate to consider the
-group as complete and send out the aggregated exchange.
+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:long">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Sets the completion timeout which would cause the aggregate to consider the
-group as complete and send out the aggregated exchange.
+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:long">
+          <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
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2850,17 +3088,28 @@ group as complete and send out the aggre
 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 link org.apache.camel.ExchangeBATCH_COMPLETE when its complete..
-Default value: false
+property link org.apache.camel.ExchangeBATCH_COMPLETE when its complete. Default
+value: false
+            ]]></xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="completionOnNewCorrelationGroup" type="xs:boolean">
+          <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
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="groupExchanges" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Enables grouped exchanges so the aggregator will group all aggregated exchanges
-into a single combined Exchange holding all the aggregated exchanges in a
-java.util.List.. Default value: false
+Deprecated: Enables grouped exchanges, so the aggregator will group all
+aggregated exchanges into a single combined Exchange holding all the aggregated
+exchanges in a java.util.List. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2869,7 +3118,7 @@ java.util.List.. Default value: false
             <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
+completionPredicate will use the aggregated Exchange. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2877,8 +3126,7 @@ completionPredicate will use the aggrega
           <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
+logging a DEBUG and then just ignore the incoming Exchange. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2886,7 +3134,7 @@ false
           <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
+has a correlation key that has been closed, it will be defined and a
 ClosedCorrelationKeyException is thrown.
             ]]></xs:documentation>
           </xs:annotation>
@@ -2895,8 +3143,8 @@ ClosedCorrelationKeyException is thrown.
           <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
+aggregated message is dropped and not sent out of the aggregator. Default value:
+false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -2915,10 +3163,10 @@ Indicates to wait to complete all curren
 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
+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>
@@ -3006,7 +3254,7 @@ Sets the delay in millis between retries
     <xs:attribute name="maximumRetryDelay" type="xs:long">
       <xs:annotation>
         <xs:documentation xml:lang="en"><![CDATA[
-Sets the upper value of retry in millis between retries when using exponential
+Sets the upper value of retry in millis between retries, when using exponential
 or random backoff. Default value: 1000
         ]]></xs:documentation>
       </xs:annotation>
@@ -3055,7 +3303,7 @@ Sets the Class of the bean
         <xs:attribute name="cache" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Caches the bean lookup to avoid lookup up bean on every usage.. Default value:
+Caches the bean lookup, to avoid lookup up bean on every usage. Default value:
 true
             ]]></xs:documentation>
           </xs:annotation>
@@ -3063,7 +3311,7 @@ true
         <xs:attribute name="multiParameterArray" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Whether the message body is an array type.. Default value: false
+Deprecated: Whether the message body is an array type. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3096,6 +3344,7 @@ Whether the message body is an array typ
             <xs:element ref="tns:when"/>
             <xs:element ref="tns:choice"/>
             <xs:element ref="tns:otherwise"/>
+            <xs:element ref="tns:claimCheck"/>
             <xs:element ref="tns:convertBodyTo"/>
             <xs:element ref="tns:delay"/>
             <xs:element ref="tns:dynamicRouter"/>
@@ -3130,6 +3379,7 @@ Whether the message body is an array typ
             <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"/>
@@ -3154,7 +3404,6 @@ Whether the message body is an array typ
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
             <xs:element ref="tns:wireTap"/>
             <xs:element ref="tns:serviceCall"/>
-            <xs:element ref="tns:restBinding"/>
           </xs:choice>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="skip"/>
@@ -3210,6 +3459,7 @@ Whether the message body is an array typ
             <xs:element ref="tns:when"/>
             <xs:element ref="tns:choice"/>
             <xs:element ref="tns:otherwise"/>
+            <xs:element ref="tns:claimCheck"/>
             <xs:element ref="tns:convertBodyTo"/>
             <xs:element ref="tns:delay"/>
             <xs:element ref="tns:dynamicRouter"/>
@@ -3244,6 +3494,7 @@ Whether the message body is an array typ
             <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"/>
@@ -3268,7 +3519,6 @@ Whether the message body is an array typ
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
             <xs:element ref="tns:wireTap"/>
             <xs:element ref="tns:serviceCall"/>
-            <xs:element ref="tns:restBinding"/>
           </xs:choice>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="skip"/>
@@ -3300,6 +3550,70 @@ Whether the message body is an array typ
     </xs:complexContent>
   </xs:complexType>
 
+  <xs:complexType name="claimCheckDefinition">
+    <xs:complexContent>
+      <xs:extension base="tns:noOutputDefinition">
+        <xs:sequence/>
+        <xs:attribute name="operation" type="tns:claimCheckOperation" use="required">
+          <xs:annotation>
+            <xs:documentation xml:lang="en"><![CDATA[
+The claim check operation to use. The following operations is supported: Get -
+Gets (does not remove) the claim check by the given key. GetAndRemove - Gets and
+remove 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.
+            ]]></xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="filter" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en"><![CDATA[
+Specified a filter to control what data gets merging 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 pattern syntax is documented by: link
+EndpointHelpermatchPattern(String, String). You can specify multiple rules
+separated by comma. For example to include 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="strategyRef" 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.
+            ]]></xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="strategyMethodName" 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.
+            ]]></xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
+        <xs:anyAttribute namespace="##other" processContents="skip"/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
   <xs:complexType final="extension restriction" name="constants">
     <xs:sequence/>
   </xs:complexType>
@@ -3346,6 +3660,16 @@ To use a specific charset when convertin
     <xs:complexContent>
       <xs:extension base="tns:identifiedType">
         <xs:sequence/>
+        <xs:attribute name="contentTypeHeader" type="xs:boolean">
+          <xs:annotation>
+            <xs:documentation xml:lang="en"><![CDATA[
+Whether the data format should set the Content-Type header with the type from
+the data format if the data format is capable of doing so. For example
+application/xml for data formats marshalling to XML, or application/json for
+data formats marshalling to JSon etc. Default value: false
+            ]]></xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
         <xs:anyAttribute namespace="##other" processContents="skip"/>
       </xs:extension>
     </xs:complexContent>
@@ -3365,8 +3689,8 @@ Refers to a custom Thread Pool if asyncD
         <xs:attribute name="asyncDelayed" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Enables asynchronous delay which means the thread will noy block while
-delaying.. Default value: false
+Enables asynchronous delay which means the thread will noy block while delaying.
+Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3406,7 +3730,7 @@ endpoint. Default value: false
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
 Sets the maximum size used by the org.apache.camel.impl.ProducerCache which is
-used to cache and reuse producers when using this recipient list when uris are
+used to cache and reuse producers when using this dynamic router, when uris are
 reused.
             ]]></xs:documentation>
           </xs:annotation>
@@ -3433,15 +3757,15 @@ reused.
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
 Refers to an 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.
+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="strategyMethodName" 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
+This option can be used to explicit declare the method name to use, when using
 POJOs as the AggregationStrategy.
             ]]></xs:documentation>
           </xs:annotation>
@@ -3451,8 +3775,8 @@ POJOs as the AggregationStrategy.
             <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.. Default value: false
+oldExchange (when no data to enrich), when using POJOs as the
+AggregationStrategy. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3463,7 +3787,7 @@ If this option is false then the aggrega
 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
+set a custom message body etc. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3473,7 +3797,7 @@ set a custom message body etc.. Default
 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
+individual unit of work. Default value: false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3534,8 +3858,8 @@ Sets the URI of the endpoint to use
         <xs:attribute name="ref" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Sets the name of the endpoint within the registry (such as the Spring
-ApplicationContext or JNDI) to use
+Deprecated: Sets the name of the endpoint within the registry (such as the
+Spring ApplicationContext or JNDI) to use
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3543,14 +3867,38 @@ ApplicationContext or JNDI) to use
     </xs:complexContent>
   </xs:complexType>
 
-  <xs:complexType name="hystrixConfigurationDefinition">
+  <xs:complexType name="globalOptionDefinition">
+    <xs:sequence/>
+    <xs:attribute name="key" type="xs:string" use="required">
+      <xs:annotation>
+        <xs:documentation xml:lang="en"><![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[
+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="hystrixConfigurationCommon">
     <xs:complexContent>
       <xs:extension base="tns:identifiedType">
         <xs:sequence/>
         <xs:attribute name="groupKey" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Sets the group key to use. The default value is CamelHystrix.. Default value:
+Sets the group key to use. The default value is CamelHystrix. Default value:
 CamelHystrix
             ]]></xs:documentation>
           </xs:annotation>
@@ -3559,7 +3907,7 @@ CamelHystrix
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
 Sets the thread pool key to use. Will by default use the same value as groupKey
-has been configured to use.. Default value: CamelHystrix
+has been configured to use. Default value: CamelHystrix
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3569,8 +3917,8 @@ has been configured to use.. Default val
 Whether to use a HystrixCircuitBreaker or not. If false no circuit-breaker logic
 will be used and all requests permitted. This is similar in effect to
 circuitBreakerForceClosed() except that continues tracking metrics and knowing
-whether it should be open/closed this property results in not even instantiating
-a circuit-breaker.. Default value: true
+whether it should be open/closed, this property results in not even
+instantiating a circuit-breaker. Default value: true
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3581,7 +3929,7 @@ Error percentage threshold (as whole num
 circuit breaker will trip open and reject requests. It will stay tripped for the
 duration defined in circuitBreakerSleepWindowInMilliseconds; The error
 percentage this is compared against comes from
-HystrixCommandMetrics.getHealthCounts().. Default value: 50
+HystrixCommandMetrics.getHealthCounts(). Default value: 50
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3591,15 +3939,15 @@ HystrixCommandMetrics.getHealthCounts().
 If true the HystrixCircuitBreakerallowRequest() will always return true to allow
 requests regardless of the error percentage from
 HystrixCommandMetrics.getHealthCounts(). The circuitBreakerForceOpen() property
-takes precedence so if it set to true this property does nothing.. Default
-value: true
+takes precedence so if it set to true this property does nothing. Default value:
+false
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="circuitBreakerForceOpen" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-If true the HystrixCircuitBreaker.allowRequest() will always return false
+If true the HystrixCircuitBreaker.allowRequest() will always return false,
 causing the circuit to be open (tripped) and reject all requests. This property
 takes precedence over circuitBreakerForceClosed();. Default value: false
             ]]></xs:documentation>
@@ -3611,7 +3959,7 @@ takes precedence over circuitBreakerForc
 Minimum number of requests in the
 metricsRollingStatisticalWindowInMilliseconds() that must exist before the
 HystrixCircuitBreaker will trip. If below this number the circuit will not trip
-regardless of error percentage.. Default value: 20
+regardless of error percentage. Default value: 20
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3619,7 +3967,7 @@ regardless of error percentage.. Default
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
 The time in milliseconds after a HystrixCircuitBreaker trips open that it should
-wait before trying requests again.. Default value: 5000
+wait before trying requests again. Default value: 5000
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3628,7 +3976,7 @@ wait before trying requests again.. Defa
             <xs:documentation xml:lang="en"><![CDATA[
 Number of concurrent requests permitted to HystrixCommand.run(). Requests beyond
 the concurrent limit will be rejected. Applicable only when
-executionIsolationStrategy == SEMAPHORE.. Default value: 20
+executionIsolationStrategy == SEMAPHORE. Default value: 20
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3638,7 +3986,7 @@ executionIsolationStrategy == SEMAPHORE.
 What isolation strategy HystrixCommand.run() will be executed with. If THREAD
 then it will be executed on a separate thread and concurrent requests limited by
 the number of threads in the thread-pool. If SEMAPHORE then it will be executed
-on the calling thread and concurrent requests limited by the semaphore count..
+on the calling thread and concurrent requests limited by the semaphore count.
 Default value: THREAD
             ]]></xs:documentation>
           </xs:annotation>
@@ -3648,7 +3996,7 @@ Default value: THREAD
             <xs:documentation xml:lang="en"><![CDATA[
 Whether the execution thread should attempt an interrupt (using link
 Futurecancel) when a thread times out. Applicable only when
-executionIsolationStrategy() == THREAD.. Default value: true
+executionIsolationStrategy() == THREAD. Default value: true
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3657,9 +4005,9 @@ executionIsolationStrategy() == THREAD..
             <xs:documentation xml:lang="en"><![CDATA[
 Time in milliseconds at which point the command will timeout and halt execution.
 If link executionIsolationThreadInterruptOnTimeout == true and the command is
-thread-isolated the executing thread will be interrupted. If the command is
-semaphore-isolated and a HystrixObservableCommand that command will get
-unsubscribed.. Default value: 1000
+thread-isolated, the executing thread will be interrupted. If the command is
+semaphore-isolated and a HystrixObservableCommand, that command will get
+unsubscribed. Default value: 1000
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3675,14 +4023,14 @@ Whether the timeout mechanism is enabled
             <xs:documentation xml:lang="en"><![CDATA[
 Number of concurrent requests permitted to HystrixCommand.getFallback().
 Requests beyond the concurrent limit will fail-fast and not attempt retrieving a
-fallback.. Default value: 10
+fallback. Default value: 10
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="fallbackEnabled" type="xs:boolean">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Whether HystrixCommand.getFallback() should be attempted when failure occurs..
+Whether HystrixCommand.getFallback() should be attempted when failure occurs.
 Default value: true
             ]]></xs:documentation>
           </xs:annotation>
@@ -3694,7 +4042,7 @@ Time in milliseconds to wait between all
 calculate success and error percentages and affect
 HystrixCircuitBreaker.isOpen() status. On high-volume circuits the continual
 calculation of error percentage can become CPU intensive thus this controls how
-often it is calculated.. Default value: 500
+often it is calculated. Default value: 500
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3702,7 +4050,7 @@ often it is calculated.. Default value:
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
 Maximum number of values stored in each bucket of the rolling percentile. This
-is passed into HystrixRollingPercentile inside HystrixCommandMetrics.. Default
+is passed into HystrixRollingPercentile inside HystrixCommandMetrics. Default
 value: 10
             ]]></xs:documentation>
           </xs:annotation>
@@ -3711,7 +4059,7 @@ value: 10
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
 Whether percentile metrics should be captured using HystrixRollingPercentile
-inside HystrixCommandMetrics.. Default value: true

[... 5982 lines stripped ...]