You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2009/09/28 21:30:29 UTC

svn commit: r819684 - in /incubator/uima/uima-as/trunk/uima-as-docbooks/src: docbook/uima_async_scaleout/async.camel.driver.xml olink/uima_async_scaleout/htmlsingle-target.db olink/uima_async_scaleout/pdf-target.db

Author: schor
Date: Mon Sep 28 19:30:29 2009
New Revision: 819684

URL: http://svn.apache.org/viewvc?rev=819684&view=rev
Log:
UIMA-1578 Reviewed uima-as camel integration doc, minor changes.

Modified:
    incubator/uima/uima-as/trunk/uima-as-docbooks/src/docbook/uima_async_scaleout/async.camel.driver.xml
    incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/htmlsingle-target.db
    incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/pdf-target.db

Modified: incubator/uima/uima-as/trunk/uima-as-docbooks/src/docbook/uima_async_scaleout/async.camel.driver.xml
URL: http://svn.apache.org/viewvc/incubator/uima/uima-as/trunk/uima-as-docbooks/src/docbook/uima_async_scaleout/async.camel.driver.xml?rev=819684&r1=819683&r2=819684&view=diff
==============================================================================
--- incubator/uima/uima-as/trunk/uima-as-docbooks/src/docbook/uima_async_scaleout/async.camel.driver.xml (original)
+++ incubator/uima/uima-as/trunk/uima-as-docbooks/src/docbook/uima_async_scaleout/async.camel.driver.xml Mon Sep 28 19:30:29 2009
@@ -27,7 +27,8 @@
   <section id="ugr.async.camel.driver.component.overview">
     <title>Overview</title>
     <para>
-    Apache Camel is an integration framework based on the Enterprise Integration Patterns
+    <ulink url="http://camel.apache.org">Apache Camel</ulink>is an integration framework based on 
+    <ulink url="http://camel.apache.org/enterprise-integration-patterns.html">Enterprise Integration Patterns</ulink>
     which uses routes for rule-based message routing and mediation. The camel project
     has a large number of components which provide access to a wide variety of
     technologies and are the building blocks of the routes. The Asynchronous Scaleout Camel Driver
@@ -52,10 +53,10 @@
     documentation.
     </para>
     <para>
-    The camel driver expects a string message body, if it is not of the type string
+    The camel driver expects a string message body; if it is not of the type string
     it might be automatically converted by camel type converters. The string message
-    body is set as document text on the CAS. In an Analysis Engine which receives such a
-    CAS CAS.getDocumentText() should be called ot retrieve the string.
+    body is set as the CAS's document text. An Analysis Engine calls
+    CAS CAS.getDocumentText() to retrieve the string.
     </para>
   </section>
   <section id="ugr.async.camel.driver.uri.format">
@@ -63,7 +64,7 @@
     <para>The Asynchronous Scaleout Camel Driver is configured with a configuration string. The 
     configuration string must contain the broker location and name of the JMS queue used to
     communicate with UIMA AS. It has the following format
-    <programlisting>uimadriver:brokerURL?queue=nameofqueue&casPoolSize=n</programlisting>
+    <programlisting>uimadriver:brokerURL?queue=nameofqueue&amp;casPoolSize=n</programlisting>
     which could for example be specified as
     <programlisting>uimadriver:tcp://localhost:61616?queue=TextAnalysisQueue</programlisting>.
     The casPoolSize parameter is optional but if it is present n must be an integer
@@ -73,13 +74,13 @@
   <section id="ugr.async.camel.driver.sample">
     <title>Sample</title>
     <para>Camel enables a developer to create quickly all kinds of applications out of
-    existing and custom components. The sample demonstrates how UIMA AS can now be integrated
-    with other technologies. Readers which are not familiar with camel should read
+    existing and custom components. The sample demonstrates how UIMA AS is integrated
+    with other technologies. Readers who are new to camel should read
     the <ulink url="http://camel.apache.org/book-getting-started.html">Getting Started</ulink>
     chapter in the camel documentation.</para>
     <para> 
-    First a simple sample. A user wants to test a UIMA AS processing pipeline, for
-    the test a set of test documents should be processed. The plain text test documents
+    First a simple sample: A user wants to test a UIMA AS processing pipeline, sending it
+    a set of test documents to process. The plain text test documents
     are located in a folder "/test-data". A camel route for this defined with
     <ulink url="http://camel.apache.org/dsl.html">Java DSL</ulink> could look like this:
     <programlisting>
@@ -89,11 +90,11 @@
     In the route above the file component sends a message for every file to the
     uimadriver component. The message contains a reference to the file but not the
     content of the file itself. The uimadriver component expects a message with string body as input.
-    An internal camel type converter will read in the bytes of the file, decodes them
-    into characters with the default platform encoding and then creates a string object
-    which is passed to the uimadriver component. The uimadriver will then put the 
-    string into a CAS and sends it via the UIMA AS Client API to a processing pipeline,
-    results from the returned CAS cannot be retrieved in a camel route.
+    An internal camel type converter will read in the bytes of the file, decode them
+    into characters with the default platform encoding and then create a string object
+    which is passed to the uimadriver component. The uimadriver then puts the 
+    string into a CAS and sends it via the UIMA AS Client API to a processing pipeline.
+    Note that results from the returned CAS cannot be retrieved in a camel route.
     </para>
     <para>
     A more complex sample. A web site has an area where people can upload pictures. 
@@ -114,11 +115,11 @@
     an image.
     </para>
     <para>
-    To unload the human controllers a system should automatically classify the pictures and
-    only assign questionable cases to human controllers. The automatic classification is
+    To lessen the workload on the human reviewers, a system should automatically classify the pictures and
+    only assign questionable cases to human reviewers. The automatic classification is
     done by an UIMA Analysis Engine. The AE can mark an image with one of three classes
     appropriate, non-appropriate and unknown. In the case of unknown the AE is not confident
-    enough which of the first two classes is correct. To be scalable the processing pipeline is hosted
+    enough which of the first two classes is correct. To be scalable, the processing pipeline is hosted
     by UIMA AS and contains three AEs, one to fetch the image from
     the database, a classification AE and an AE to write the class of the image back to the database.
     The first AE is typical a cas multiplier and receives a CAS which only contains the string identifier
@@ -140,6 +141,10 @@
     The class is retrieved with the custom class-retriever component and written to a message header
     field, only if the class is unknown the image is assigned for human classification.
     </para>
+    
+    <para>Note: instead of using a CAS multiplier, a more straight-forward approach would use just one CAS, 
+      having 2 views: one view would contain the string identifier of the image, and the other view would 
+      have the image to be analyzed (or a reference to it in the DB).</para>
   </section>
   <section id="ugr.async.camel.driver.implementation">
   <title>Implementation</title>
@@ -150,7 +155,7 @@
   <code>org.apache.uima.camel.UimaAsProducer</code> class. The <code>UimaAsProducer.process</code> method gets
   the string body of the message, wraps it in a CAS object and sends it to UIMA AS.
   Since the producer is asynchronous the camel message is registered with the reference id of
-  the sent CAS in an intermediate map, when the CAS comes back from UIMA AS the camel message is looked up
+  the sent CAS in an intermediate map, when the CAS comes back from UIMA AS, the camel message is looked up
   with the reference id of the CAS and the processing of the camel message is completed. 
   For further details please read the <code>UimaAsProducer</code> implementation code.
   </para>

Modified: incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/htmlsingle-target.db
URL: http://svn.apache.org/viewvc/incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/htmlsingle-target.db?rev=819684&r1=819683&r2=819684&view=diff
==============================================================================
--- incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/htmlsingle-target.db (original)
+++ incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/htmlsingle-target.db Mon Sep 28 19:30:29 2009
@@ -1 +1 @@
-<div element="book" href="#d0e2" number="" lang="en"><ttl>UIMA Asynchronous Scaleout</ttl><xreftext>UIMA Asynchronous Scaleout</xreftext><div element="chapter" href="#ugr.async.ov" number="1" targetptr="ugr.async.ov"><ttl>Overview - Asynchronous Scaleout</ttl><xreftext>Chapter 1, <i xmlns:xlink="http://www.w3.org/1999/xlink">Overview - Asynchronous Scaleout</i></xreftext><div element="section" href="#ugr.async.ov.terminology" number="1.1" targetptr="ugr.async.ov.terminology"><ttl>Terminology</ttl><xreftext>Section 1.1, “Terminology”</xreftext></div><div element="section" href="#ugr.async.ov.as_vs_cpm" number="1.2" targetptr="ugr.async.ov.as_vs_cpm"><ttl>AS versus CPM</ttl><xreftext>Section 1.2, “AS versus CPM”</xreftext></div><div element="section" href="#ugr.async.ov.design_goals" number="1.3" targetptr="ugr.async.ov.design_goals"><ttl>Design goals for Asynchronous Scaleout</ttl><xreftext>Section 1.3, “Design goals for Asynchronous Scale
 out”</xreftext></div><div element="section" href="#ugr.async.ov.concepts" number="1.4" targetptr="ugr.async.ov.concepts"><ttl>AS Concepts</ttl><xreftext>Section 1.4, “AS Concepts”</xreftext><div element="section" href="#ugr.async.ov.concepts.threading" number="1.4.1" targetptr="ugr.async.ov.concepts.threading"><ttl>User written components and multi-threading</ttl><xreftext>Section 1.4.1, “Threading”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.wrapping" number="1.4.2" targetptr="ugr.async.ov.concepts.wrapping"><ttl>AS Component wrapping</ttl><xreftext>Section 1.4.2, “AS Component wrapping”</xreftext><obj element="figure" href="#ugr.async.ov.fig.wrapAE" number="1.1" targetptr="ugr.async.ov.fig.wrapAE"><ttl>AS Primitive Wrapper</ttl><xreftext>Figure 1.1, “AS Primitive Wrapper”</xreftext></obj><obj element="figure" href="#ugr.async.ov.fig.wrapAAE" number="1.2" targetptr="ugr.async.ov.fig.wrapAAE"><t
 tl>AS Aggregate wrapper</ttl><xreftext>Figure 1.2, “AS Aggregate wrapper”</xreftext></obj></div><div element="section" href="#ugr.async.ov.concepts.deploying" number="1.4.3" targetptr="ugr.async.ov.concepts.deploying"><ttl>Deployment alternatives</ttl><xreftext>Section 1.4.3, “Deployment alternatives”</xreftext><div element="section" href="#ugr.async.ov.concepts.deploying.multiples" number="1.4.3.1" targetptr="ugr.async.ov.concepts.deploying.multiples"><ttl>Configuring multiple instances of components</ttl><xreftext>Section 1.4.3.1, “Multiple Instances”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.deploying.queues" number="1.4.3.2" targetptr="ugr.async.ov.concepts.deploying.queues"><ttl>Queues</ttl><xreftext>Section 1.4.3.2, “Queues”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.deployment_descriptors" number="1.4.3.3" targetptr="ugr.async.ov.concepts.deployment_descriptors"><ttl
 >Deployment Descriptors</ttl><xreftext>Section 1.4.3.3, “Deployment Descriptors”</xreftext><div element="section" href="#ugr.async.ov.concepts.deployment_descriptors.aggregate" number="" targetptr="ugr.async.ov.concepts.deployment_descriptors.aggregate"><ttl>Deploying UIMA aggregates</ttl><xreftext>the section called “Deploying UIMA aggregates”</xreftext></div></div></div><div element="section" href="#ugr.async.ov.concepts.first_limits" number="1.4.4" targetptr="ugr.async.ov.concepts.first_limits"><ttl>Current design limitations</ttl><xreftext>Section 1.4.4, “Limits”</xreftext><div element="section" href="#ugr.async.ov.concepts.first_limits.sofa_mapping" number="1.4.4.1" targetptr="ugr.async.ov.concepts.first_limits.sofa_mapping"><ttl>Sofa Mapping limits</ttl><xreftext>Section 1.4.4.1, “Sofa Mapping limits”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.first_limits.parameter_overriding" number="1.4.4.2" t
 argetptr="ugr.async.ov.concepts.first_limits.parameter_overriding"><ttl>Parameter Overriding limits</ttl><xreftext>Section 1.4.4.2, “Parameter Overriding limits”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.first_limits.resource_sharing" number="1.4.4.3" targetptr="ugr.async.ov.concepts.first_limits.resource_sharing"><ttl>Resource Sharing limits</ttl><xreftext>Section 1.4.4.3, “Resource Sharing limits”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.first_limits.compatibility" number="1.4.5" targetptr="ugr.async.ov.concepts.first_limits.compatibility"><ttl>Compatibility with earlier version of remoting and scaleout</ttl><xreftext>Section 1.4.5, “Compatibility”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.application" number="1.5" targetptr="ugr.async.ov.concepts.application"><ttl>Application Concepts</ttl><xreftext>Section 1.5, “Application Conceptsâ�
 �</xreftext><div element="section" href="#ugr.async.ov.concepts.application.api" number="1.5.1" targetptr="ugr.async.ov.concepts.application.api"><ttl>Application API</ttl><xreftext>Section 1.5.1, “Application API”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.collection_process_complete" number="1.5.2" targetptr="ugr.async.ov.concepts.collection_process_complete"><ttl>Collection Process Complete</ttl><xreftext>Section 1.5.2, “Collection Process Complete”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.mc" number="1.6" targetptr="ugr.async.ov.concepts.mc"><ttl>Monitoring and Controlling an AS application</ttl><xreftext>Section 1.6, “Monitoring &amp; Controlling”</xreftext><div element="section" href="#ugr.async.ov.concepts.mc.what" number="1.6.1" targetptr="ugr.async.ov.concepts.mc.what"><ttl>Instrumentation provided</ttl><xreftext>Section 1.6.1, “Instrumentation provided”</
 xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.jms_descriptor" number="1.7" targetptr="ugr.async.ov.concepts.jms_descriptor"><ttl>JMS Service Descriptor</ttl><xreftext>Section 1.7, “JMS Service Descriptor”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.collection_reader" number="1.8" targetptr="ugr.async.ov.concepts.collection_reader"><ttl>Collection Reader support</ttl><xreftext>Section 1.8, “Collection Reader support”</xreftext></div></div><div element="chapter" href="#ugr.async.eh" number="2" targetptr="ugr.async.eh"><ttl>Error Handling for Asynchronous Scaleout</ttl><xreftext>Chapter 2, <i xmlns:xlink="http://www.w3.org/1999/xlink">Error Handling for Asynchronous Scaleout</i></xreftext><div element="section" href="#ugr.async.eh.basic" number="2.1" targetptr="ugr.async.eh.basic"><ttl>Basic concepts</ttl><xreftext>Section 2.1, “Basic concepts”</xreftext></div><div element="section" hre
 f="#ugr.async.eh.incoming_commands" number="2.2" targetptr="ugr.async.eh.incoming_commands"><ttl>Associating Errors with incoming commands</ttl><xreftext>Section 2.2, “Associating Errors with incoming commands”</xreftext><div element="section" href="#ugr.asynch.eh.cas_multipliers" number="2.2.1" targetptr="ugr.asynch.eh.cas_multipliers"><ttl>Error handling for CASes generated in an Aggregate by CAS Multipliers</ttl><xreftext>Section 2.2.1, “Error handling - CAS Multipliers”</xreftext></div></div><div element="section" href="#ugr.async.eh.error_handling_overview" number="2.3" targetptr="ugr.async.eh.error_handling_overview"><ttl>Error handling overview</ttl><xreftext>Section 2.3, “Error handling overview”</xreftext><obj element="figure" href="#ugr.async.eh.fig.basic_eh_chain" number="2.1" targetptr="ugr.async.eh.fig.basic_eh_chain"><ttl>Basic error handling chain for AS Aggregates for errors from delegates</ttl><xreftext>Figure 2.1, �
 �€œBasic error handling chain for AS Aggregates for errors from delegates”</xreftext></obj><obj element="figure" href="#ugr.async.eh.fig.basic_eh_chain_prim" number="2.2" targetptr="ugr.async.eh.fig.basic_eh_chain_prim"><ttl>Basic error handling chain for AS Primitives</ttl><xreftext>Figure 2.2, “Basic error handling chain for AS Primitives”</xreftext></obj></div><div element="section" href="#ugr.async.eh.error_results" number="2.4" targetptr="ugr.async.eh.error_results"><ttl>Error results</ttl><xreftext>Section 2.4, “Error results”</xreftext></div><div element="section" href="#ugr.async.eh.aggregate_managed" number="2.5" targetptr="ugr.async.eh.aggregate_managed"><ttl>Error Recovery actions</ttl><xreftext>Section 2.5, “Error Recovery actions”</xreftext><div element="section" href="#ugr.async.eh.aggregate_managed.actions" number="2.5.1" targetptr="ugr.async.eh.aggregate_managed.actions"><ttl>Aggregate Error Actions</ttl><xreftext
 >Section 2.5.1, “Aggregate Error Actions”</xreftext><div element="section" href="#ugr.async.eh.aggregate_managed.actions.retry" number="2.5.1.1" targetptr="ugr.async.eh.aggregate_managed.actions.retry"><ttl>Retry</ttl><xreftext>Section 2.5.1.1, “Retry”</xreftext></div><div element="section" href="#ugr.async.eh.aggregate_disable" number="2.5.1.2" targetptr="ugr.async.eh.aggregate_disable"><ttl>Disable Action</ttl><xreftext>Section 2.5.1.2, “Disable Action”</xreftext><obj element="figure" href="#ugr.async.eh.fig.disable" number="2.3" targetptr="ugr.async.eh.fig.disable"><ttl>Disable action</ttl><xreftext>Figure 2.3, “Disable action”</xreftext></obj></div><div element="section" href="#ugr.async.eh.aggregate_managed.actions.continue" number="2.5.1.3" targetptr="ugr.async.eh.aggregate_managed.actions.continue"><ttl>Continue Option on Delegate Process CAS Failures</ttl><xreftext>Section 2.5.1.3, “Continue Option on Delega
 te Process CAS Failures”</xreftext></div></div></div><div element="section" href="#ugr.async.eh.errors_passed_up.thresholds" number="2.6" targetptr="ugr.async.eh.errors_passed_up.thresholds"><ttl>Thresholds for Terminate and Disable</ttl><xreftext>Section 2.6, “Thresholds for Terminate and Disable”</xreftext></div><div element="section" href="#ugr.async.eh.terminate" number="2.7" targetptr="ugr.async.eh.terminate"><ttl>Terminate Action</ttl><xreftext>Section 2.7, “Terminate Action”</xreftext><obj element="figure" href="#ugr.async.eh.fig.terminate" number="2.4" targetptr="ugr.async.eh.fig.terminate"><ttl>Terminate action</ttl><xreftext>Figure 2.4, “Terminate action”</xreftext></obj></div><div element="section" href="#ugr.async.eh.commands_allowed_actions" number="2.8" targetptr="ugr.async.eh.commands_allowed_actions"><ttl>Commands and allowed actions</ttl><xreftext>Section 2.8, “Commands and allowed actions”</xreftext><
 obj element="table" href="#ugr.async.eh.table.error_actions_by_command" number="2.1" targetptr="ugr.async.eh.table.error_actions_by_command"><ttl>Error actions by command type</ttl><xreftext>Table 2.1, “Error actions by command type”</xreftext></obj></div></div><div element="chapter" href="#ugr.ref.async.deploy" number="3" targetptr="ugr.ref.async.deploy"><ttl>Asynchronous Scaleout Deployment Descriptor</ttl><xreftext>Chapter 3, <i xmlns:xlink="http://www.w3.org/1999/xlink">Asynchronous Scaleout Deployment Descriptor</i></xreftext><div element="section" href="#ugr.ref.async.deploy.descriptor_organization" number="3.1" targetptr="ugr.ref.async.deploy.descriptor_organization"><ttl>Descriptor Organization</ttl><xreftext>Section 3.1, “Descriptor Organization”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor" number="3.2" targetptr="ugr.ref.async.deploy.descriptor"><ttl>Deployment Descriptor</ttl><xreftext>Section 3.2, 
 “Deployment Descriptor”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.caspool" number="3.3" targetptr="ugr.ref.async.deploy.descriptor.caspool"><ttl>CAS Pool</ttl><xreftext>Section 3.3, “CAS Pool”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.service" number="3.4" targetptr="ugr.ref.async.deploy.descriptor.service"><ttl>Service</ttl><xreftext>Section 3.4, “Service”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.custom" number="3.5" targetptr="ugr.ref.async.deploy.descriptor.custom"><ttl>Customizing the deployment</ttl><xreftext>Section 3.5, “Customizing the deployment”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.input_queue" number="3.6" targetptr="ugr.ref.async.deploy.descriptor.input_queue"><ttl>Input Queue</ttl><xreftext>Section 3.6, “Input Queue”</xreftext></div><div element="section
 " href="#ugr.ref.async.deploy.descriptor.top_descriptor" number="3.7" targetptr="ugr.ref.async.deploy.descriptor.top_descriptor"><ttl>Top level Analysis Engine descriptor</ttl><xreftext>Section 3.7, “Top Level AE Descriptor”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.environment_variables" number="3.8" targetptr="ugr.ref.async.deploy.descriptor.environment_variables"><ttl>Setting Environment Variables</ttl><xreftext>Section 3.8, “Setting Environment Variables”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.ae" number="3.9" targetptr="ugr.ref.async.deploy.descriptor.ae"><ttl>Analysis Engine</ttl><xreftext>Section 3.9, “Analysis Engine”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.errorconfig" number="3.10" targetptr="ugr.ref.async.deploy.descriptor.errorconfig"><ttl>Error Configuration descriptors</ttl><xreftext>Section 3.10, “Error
  Configuration descriptors”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.errorconfig.defaults" number="3.11" targetptr="ugr.ref.async.deploy.descriptor.errorconfig.defaults"><ttl>Error Configuration defaults</ttl><xreftext>Section 3.11, “Error Configuration defaults”</xreftext></div></div><div element="chapter" href="#ugr.ref.async.api" number="4" targetptr="ugr.ref.async.api"><ttl>Asynchronous Scaleout Application Interface</ttl><xreftext>Chapter 4, <i xmlns:xlink="http://www.w3.org/1999/xlink">Asynchronous Scaleout Application Interface</i></xreftext><div element="section" href="#ugr.ref.async.api.organization" number="4.1" targetptr="ugr.ref.async.api.organization"><ttl>Asynchronous API Overview</ttl><xreftext>Section 4.1, “Asynchronous API Overview”</xreftext></div><div element="section" href="#ugr.ref.async.api.descriptor" number="4.2" targetptr="ugr.ref.async.api.descriptor"><ttl>The UimaAsynchronousEng
 ine Interface</ttl><xreftext>Section 4.2, “The UimaAsynchronousEngine Interface”</xreftext></div><div element="section" href="#ugr.ref.async.context.map" number="4.3" targetptr="ugr.ref.async.context.map"><ttl>Application Context Map</ttl><xreftext>Section 4.3, “Application Context Map”</xreftext></div><div element="section" href="#ugr.ref.async.callback.listener" number="4.4" targetptr="ugr.ref.async.callback.listener"><ttl>Status Callback Listener</ttl><xreftext>Section 4.4, “Status Callback Listener”</xreftext></div><div element="section" href="#ugr.ref.async.error.status" number="4.5" targetptr="ugr.ref.async.error.status"><ttl>Error Results</ttl><xreftext>Section 4.5, “Error Results”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage" number="4.6" targetptr="ugr.ref.async.api.usage"><ttl>Asynchronous API Usage Scenarios</ttl><xreftext>Section 4.6, “Asynchronous API Usage Scenarios”</xref
 text><div element="section" href="#ugr.ref.async.api.usage_initialize" number="4.6.1" targetptr="ugr.ref.async.api.usage_initialize"><ttl>Instantiating a Client API Object</ttl><xreftext>Section 4.6.1, “Instantiating a Client API Object”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_callservice" number="4.6.2" targetptr="ugr.ref.async.api.usage_callservice"><ttl>Calling an Existing Service</ttl><xreftext>Section 4.6.2, “Calling an Existing Service”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_getresults" number="4.6.3" targetptr="ugr.ref.async.api.usage_getresults"><ttl>Retrieving Asynchronous Results</ttl><xreftext>Section 4.6.3, “Retrieving Asynchronous Results”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_deployservice" number="4.6.4" targetptr="ugr.ref.async.api.usage_deployservice"><ttl>Deploying a Service with the Client API</ttl><xreftext>Section 4.6.4, 
 “Deploying a Service with the Client API”</xreftext></div></div><div element="section" href="#ugr.ref.async.api.usage_undeployservice" number="4.7" targetptr="ugr.ref.async.api.usage_undeployservice"><ttl>Undeploying a Service with the Client API</ttl><xreftext>Section 4.7, “Undeploying a Service with the Client API”</xreftext></div><div element="section" href="#ugr.ref.async.api.sample.code" number="4.8" targetptr="ugr.ref.async.api.sample.code"><ttl>Sample Code</ttl><xreftext>Section 4.8, “Sample Code”</xreftext></div></div><div element="chapter" href="#ugr.async.camel.driver" number="5" targetptr="ugr.async.camel.driver"><ttl>Asynchronous Scaleout Camel Driver</ttl><xreftext>Chapter 5, <i xmlns:xlink="http://www.w3.org/1999/xlink">Asynchronous Scaleout Camel Driver</i></xreftext><div element="section" href="#ugr.async.camel.driver.component" number="5.1" targetptr="ugr.async.camel.driver.component"><ttl>Overview</ttl><xreftext>Sectio
 n 5.1, “Overview”</xreftext></div><div element="section" href="#ugr.async.camel.driver.uri.format" number="5.2" targetptr="ugr.async.camel.driver.uri.format"><ttl>URI Format</ttl><xreftext>Section 5.2, “URI Format”</xreftext></div></div></div>
\ No newline at end of file
+<div element="book" href="#d0e2" number="" lang="en"><ttl>UIMA Asynchronous Scaleout</ttl><xreftext>UIMA Asynchronous Scaleout</xreftext><div element="chapter" href="#ugr.async.ov" number="1" targetptr="ugr.async.ov"><ttl>Overview - Asynchronous Scaleout</ttl><xreftext>Chapter 1, <i xmlns:xlink="http://www.w3.org/1999/xlink">Overview - Asynchronous Scaleout</i></xreftext><div element="section" href="#ugr.async.ov.terminology" number="1.1" targetptr="ugr.async.ov.terminology"><ttl>Terminology</ttl><xreftext>Section 1.1, “Terminology”</xreftext></div><div element="section" href="#ugr.async.ov.as_vs_cpm" number="1.2" targetptr="ugr.async.ov.as_vs_cpm"><ttl>AS versus CPM</ttl><xreftext>Section 1.2, “AS versus CPM”</xreftext></div><div element="section" href="#ugr.async.ov.design_goals" number="1.3" targetptr="ugr.async.ov.design_goals"><ttl>Design goals for Asynchronous Scaleout</ttl><xreftext>Section 1.3, “Design goals for Asynchronous Scale
 out”</xreftext></div><div element="section" href="#ugr.async.ov.concepts" number="1.4" targetptr="ugr.async.ov.concepts"><ttl>AS Concepts</ttl><xreftext>Section 1.4, “AS Concepts”</xreftext><div element="section" href="#ugr.async.ov.concepts.threading" number="1.4.1" targetptr="ugr.async.ov.concepts.threading"><ttl>User written components and multi-threading</ttl><xreftext>Section 1.4.1, “Threading”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.wrapping" number="1.4.2" targetptr="ugr.async.ov.concepts.wrapping"><ttl>AS Component wrapping</ttl><xreftext>Section 1.4.2, “AS Component wrapping”</xreftext><obj element="figure" href="#ugr.async.ov.fig.wrapAE" number="1.1" targetptr="ugr.async.ov.fig.wrapAE"><ttl>AS Primitive Wrapper</ttl><xreftext>Figure 1.1, “AS Primitive Wrapper”</xreftext></obj><obj element="figure" href="#ugr.async.ov.fig.wrapAAE" number="1.2" targetptr="ugr.async.ov.fig.wrapAAE"><t
 tl>AS Aggregate wrapper</ttl><xreftext>Figure 1.2, “AS Aggregate wrapper”</xreftext></obj></div><div element="section" href="#ugr.async.ov.concepts.deploying" number="1.4.3" targetptr="ugr.async.ov.concepts.deploying"><ttl>Deployment alternatives</ttl><xreftext>Section 1.4.3, “Deployment alternatives”</xreftext><div element="section" href="#ugr.async.ov.concepts.deploying.multiples" number="1.4.3.1" targetptr="ugr.async.ov.concepts.deploying.multiples"><ttl>Configuring multiple instances of components</ttl><xreftext>Section 1.4.3.1, “Multiple Instances”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.deploying.queues" number="1.4.3.2" targetptr="ugr.async.ov.concepts.deploying.queues"><ttl>Queues</ttl><xreftext>Section 1.4.3.2, “Queues”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.deployment_descriptors" number="1.4.3.3" targetptr="ugr.async.ov.concepts.deployment_descriptors"><ttl
 >Deployment Descriptors</ttl><xreftext>Section 1.4.3.3, “Deployment Descriptors”</xreftext><div element="section" href="#ugr.async.ov.concepts.deployment_descriptors.aggregate" number="" targetptr="ugr.async.ov.concepts.deployment_descriptors.aggregate"><ttl>Deploying UIMA aggregates</ttl><xreftext>the section called “Deploying UIMA aggregates”</xreftext></div></div></div><div element="section" href="#ugr.async.ov.concepts.first_limits" number="1.4.4" targetptr="ugr.async.ov.concepts.first_limits"><ttl>Current design limitations</ttl><xreftext>Section 1.4.4, “Limits”</xreftext><div element="section" href="#ugr.async.ov.concepts.first_limits.sofa_mapping" number="1.4.4.1" targetptr="ugr.async.ov.concepts.first_limits.sofa_mapping"><ttl>Sofa Mapping limits</ttl><xreftext>Section 1.4.4.1, “Sofa Mapping limits”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.first_limits.parameter_overriding" number="1.4.4.2" t
 argetptr="ugr.async.ov.concepts.first_limits.parameter_overriding"><ttl>Parameter Overriding limits</ttl><xreftext>Section 1.4.4.2, “Parameter Overriding limits”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.first_limits.resource_sharing" number="1.4.4.3" targetptr="ugr.async.ov.concepts.first_limits.resource_sharing"><ttl>Resource Sharing limits</ttl><xreftext>Section 1.4.4.3, “Resource Sharing limits”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.first_limits.compatibility" number="1.4.5" targetptr="ugr.async.ov.concepts.first_limits.compatibility"><ttl>Compatibility with earlier version of remoting and scaleout</ttl><xreftext>Section 1.4.5, “Compatibility”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.application" number="1.5" targetptr="ugr.async.ov.concepts.application"><ttl>Application Concepts</ttl><xreftext>Section 1.5, “Application Conceptsâ�
 �</xreftext><div element="section" href="#ugr.async.ov.concepts.application.api" number="1.5.1" targetptr="ugr.async.ov.concepts.application.api"><ttl>Application API</ttl><xreftext>Section 1.5.1, “Application API”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.collection_process_complete" number="1.5.2" targetptr="ugr.async.ov.concepts.collection_process_complete"><ttl>Collection Process Complete</ttl><xreftext>Section 1.5.2, “Collection Process Complete”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.mc" number="1.6" targetptr="ugr.async.ov.concepts.mc"><ttl>Monitoring and Controlling an AS application</ttl><xreftext>Section 1.6, “Monitoring &amp; Controlling”</xreftext><div element="section" href="#ugr.async.ov.concepts.mc.what" number="1.6.1" targetptr="ugr.async.ov.concepts.mc.what"><ttl>Instrumentation provided</ttl><xreftext>Section 1.6.1, “Instrumentation provided”</
 xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.jms_descriptor" number="1.7" targetptr="ugr.async.ov.concepts.jms_descriptor"><ttl>JMS Service Descriptor</ttl><xreftext>Section 1.7, “JMS Service Descriptor”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.collection_reader" number="1.8" targetptr="ugr.async.ov.concepts.collection_reader"><ttl>Collection Reader support</ttl><xreftext>Section 1.8, “Collection Reader support”</xreftext></div></div><div element="chapter" href="#ugr.async.eh" number="2" targetptr="ugr.async.eh"><ttl>Error Handling for Asynchronous Scaleout</ttl><xreftext>Chapter 2, <i xmlns:xlink="http://www.w3.org/1999/xlink">Error Handling for Asynchronous Scaleout</i></xreftext><div element="section" href="#ugr.async.eh.basic" number="2.1" targetptr="ugr.async.eh.basic"><ttl>Basic concepts</ttl><xreftext>Section 2.1, “Basic concepts”</xreftext></div><div element="section" hre
 f="#ugr.async.eh.incoming_commands" number="2.2" targetptr="ugr.async.eh.incoming_commands"><ttl>Associating Errors with incoming commands</ttl><xreftext>Section 2.2, “Associating Errors with incoming commands”</xreftext><div element="section" href="#ugr.asynch.eh.cas_multipliers" number="2.2.1" targetptr="ugr.asynch.eh.cas_multipliers"><ttl>Error handling for CASes generated in an Aggregate by CAS Multipliers</ttl><xreftext>Section 2.2.1, “Error handling - CAS Multipliers”</xreftext></div></div><div element="section" href="#ugr.async.eh.error_handling_overview" number="2.3" targetptr="ugr.async.eh.error_handling_overview"><ttl>Error handling overview</ttl><xreftext>Section 2.3, “Error handling overview”</xreftext><obj element="figure" href="#ugr.async.eh.fig.basic_eh_chain" number="2.1" targetptr="ugr.async.eh.fig.basic_eh_chain"><ttl>Basic error handling chain for AS Aggregates for errors from delegates</ttl><xreftext>Figure 2.1, �
 �€œBasic error handling chain for AS Aggregates for errors from delegates”</xreftext></obj><obj element="figure" href="#ugr.async.eh.fig.basic_eh_chain_prim" number="2.2" targetptr="ugr.async.eh.fig.basic_eh_chain_prim"><ttl>Basic error handling chain for AS Primitives</ttl><xreftext>Figure 2.2, “Basic error handling chain for AS Primitives”</xreftext></obj></div><div element="section" href="#ugr.async.eh.error_results" number="2.4" targetptr="ugr.async.eh.error_results"><ttl>Error results</ttl><xreftext>Section 2.4, “Error results”</xreftext></div><div element="section" href="#ugr.async.eh.aggregate_managed" number="2.5" targetptr="ugr.async.eh.aggregate_managed"><ttl>Error Recovery actions</ttl><xreftext>Section 2.5, “Error Recovery actions”</xreftext><div element="section" href="#ugr.async.eh.aggregate_managed.actions" number="2.5.1" targetptr="ugr.async.eh.aggregate_managed.actions"><ttl>Aggregate Error Actions</ttl><xreftext
 >Section 2.5.1, “Aggregate Error Actions”</xreftext><div element="section" href="#ugr.async.eh.aggregate_managed.actions.retry" number="2.5.1.1" targetptr="ugr.async.eh.aggregate_managed.actions.retry"><ttl>Retry</ttl><xreftext>Section 2.5.1.1, “Retry”</xreftext></div><div element="section" href="#ugr.async.eh.aggregate_disable" number="2.5.1.2" targetptr="ugr.async.eh.aggregate_disable"><ttl>Disable Action</ttl><xreftext>Section 2.5.1.2, “Disable Action”</xreftext><obj element="figure" href="#ugr.async.eh.fig.disable" number="2.3" targetptr="ugr.async.eh.fig.disable"><ttl>Disable action</ttl><xreftext>Figure 2.3, “Disable action”</xreftext></obj></div><div element="section" href="#ugr.async.eh.aggregate_managed.actions.continue" number="2.5.1.3" targetptr="ugr.async.eh.aggregate_managed.actions.continue"><ttl>Continue Option on Delegate Process CAS Failures</ttl><xreftext>Section 2.5.1.3, “Continue Option on Delega
 te Process CAS Failures”</xreftext></div></div></div><div element="section" href="#ugr.async.eh.errors_passed_up.thresholds" number="2.6" targetptr="ugr.async.eh.errors_passed_up.thresholds"><ttl>Thresholds for Terminate and Disable</ttl><xreftext>Section 2.6, “Thresholds for Terminate and Disable”</xreftext></div><div element="section" href="#ugr.async.eh.terminate" number="2.7" targetptr="ugr.async.eh.terminate"><ttl>Terminate Action</ttl><xreftext>Section 2.7, “Terminate Action”</xreftext><obj element="figure" href="#ugr.async.eh.fig.terminate" number="2.4" targetptr="ugr.async.eh.fig.terminate"><ttl>Terminate action</ttl><xreftext>Figure 2.4, “Terminate action”</xreftext></obj></div><div element="section" href="#ugr.async.eh.commands_allowed_actions" number="2.8" targetptr="ugr.async.eh.commands_allowed_actions"><ttl>Commands and allowed actions</ttl><xreftext>Section 2.8, “Commands and allowed actions”</xreftext><
 obj element="table" href="#ugr.async.eh.table.error_actions_by_command" number="2.1" targetptr="ugr.async.eh.table.error_actions_by_command"><ttl>Error actions by command type</ttl><xreftext>Table 2.1, “Error actions by command type”</xreftext></obj></div></div><div element="chapter" href="#ugr.ref.async.deploy" number="3" targetptr="ugr.ref.async.deploy"><ttl>Asynchronous Scaleout Deployment Descriptor</ttl><xreftext>Chapter 3, <i xmlns:xlink="http://www.w3.org/1999/xlink">Asynchronous Scaleout Deployment Descriptor</i></xreftext><div element="section" href="#ugr.ref.async.deploy.descriptor_organization" number="3.1" targetptr="ugr.ref.async.deploy.descriptor_organization"><ttl>Descriptor Organization</ttl><xreftext>Section 3.1, “Descriptor Organization”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor" number="3.2" targetptr="ugr.ref.async.deploy.descriptor"><ttl>Deployment Descriptor</ttl><xreftext>Section 3.2, 
 “Deployment Descriptor”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.caspool" number="3.3" targetptr="ugr.ref.async.deploy.descriptor.caspool"><ttl>CAS Pool</ttl><xreftext>Section 3.3, “CAS Pool”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.service" number="3.4" targetptr="ugr.ref.async.deploy.descriptor.service"><ttl>Service</ttl><xreftext>Section 3.4, “Service”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.custom" number="3.5" targetptr="ugr.ref.async.deploy.descriptor.custom"><ttl>Customizing the deployment</ttl><xreftext>Section 3.5, “Customizing the deployment”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.input_queue" number="3.6" targetptr="ugr.ref.async.deploy.descriptor.input_queue"><ttl>Input Queue</ttl><xreftext>Section 3.6, “Input Queue”</xreftext></div><div element="section
 " href="#ugr.ref.async.deploy.descriptor.top_descriptor" number="3.7" targetptr="ugr.ref.async.deploy.descriptor.top_descriptor"><ttl>Top level Analysis Engine descriptor</ttl><xreftext>Section 3.7, “Top Level AE Descriptor”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.environment_variables" number="3.8" targetptr="ugr.ref.async.deploy.descriptor.environment_variables"><ttl>Setting Environment Variables</ttl><xreftext>Section 3.8, “Setting Environment Variables”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.ae" number="3.9" targetptr="ugr.ref.async.deploy.descriptor.ae"><ttl>Analysis Engine</ttl><xreftext>Section 3.9, “Analysis Engine”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.errorconfig" number="3.10" targetptr="ugr.ref.async.deploy.descriptor.errorconfig"><ttl>Error Configuration descriptors</ttl><xreftext>Section 3.10, “Error
  Configuration descriptors”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.errorconfig.defaults" number="3.11" targetptr="ugr.ref.async.deploy.descriptor.errorconfig.defaults"><ttl>Error Configuration defaults</ttl><xreftext>Section 3.11, “Error Configuration defaults”</xreftext></div></div><div element="chapter" href="#ugr.ref.async.api" number="4" targetptr="ugr.ref.async.api"><ttl>Asynchronous Scaleout Application Interface</ttl><xreftext>Chapter 4, <i xmlns:xlink="http://www.w3.org/1999/xlink">Asynchronous Scaleout Application Interface</i></xreftext><div element="section" href="#ugr.ref.async.api.organization" number="4.1" targetptr="ugr.ref.async.api.organization"><ttl>Asynchronous API Overview</ttl><xreftext>Section 4.1, “Asynchronous API Overview”</xreftext></div><div element="section" href="#ugr.ref.async.api.descriptor" number="4.2" targetptr="ugr.ref.async.api.descriptor"><ttl>The UimaAsynchronousEng
 ine Interface</ttl><xreftext>Section 4.2, “The UimaAsynchronousEngine Interface”</xreftext></div><div element="section" href="#ugr.ref.async.context.map" number="4.3" targetptr="ugr.ref.async.context.map"><ttl>Application Context Map</ttl><xreftext>Section 4.3, “Application Context Map”</xreftext></div><div element="section" href="#ugr.ref.async.callback.listener" number="4.4" targetptr="ugr.ref.async.callback.listener"><ttl>Status Callback Listener</ttl><xreftext>Section 4.4, “Status Callback Listener”</xreftext></div><div element="section" href="#ugr.ref.async.error.status" number="4.5" targetptr="ugr.ref.async.error.status"><ttl>Error Results</ttl><xreftext>Section 4.5, “Error Results”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage" number="4.6" targetptr="ugr.ref.async.api.usage"><ttl>Asynchronous API Usage Scenarios</ttl><xreftext>Section 4.6, “Asynchronous API Usage Scenarios”</xref
 text><div element="section" href="#ugr.ref.async.api.usage_initialize" number="4.6.1" targetptr="ugr.ref.async.api.usage_initialize"><ttl>Instantiating a Client API Object</ttl><xreftext>Section 4.6.1, “Instantiating a Client API Object”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_callservice" number="4.6.2" targetptr="ugr.ref.async.api.usage_callservice"><ttl>Calling an Existing Service</ttl><xreftext>Section 4.6.2, “Calling an Existing Service”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_getresults" number="4.6.3" targetptr="ugr.ref.async.api.usage_getresults"><ttl>Retrieving Asynchronous Results</ttl><xreftext>Section 4.6.3, “Retrieving Asynchronous Results”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_deployservice" number="4.6.4" targetptr="ugr.ref.async.api.usage_deployservice"><ttl>Deploying a Service with the Client API</ttl><xreftext>Section 4.6.4, 
 “Deploying a Service with the Client API”</xreftext></div></div><div element="section" href="#ugr.ref.async.api.usage_undeployservice" number="4.7" targetptr="ugr.ref.async.api.usage_undeployservice"><ttl>Undeploying a Service with the Client API</ttl><xreftext>Section 4.7, “Undeploying a Service with the Client API”</xreftext></div><div element="section" href="#ugr.ref.async.api.sample.code" number="4.8" targetptr="ugr.ref.async.api.sample.code"><ttl>Sample Code</ttl><xreftext>Section 4.8, “Sample Code”</xreftext></div></div><div element="chapter" href="#ugr.async.camel.driver" number="5" targetptr="ugr.async.camel.driver"><ttl>Asynchronous Scaleout Camel Driver</ttl><xreftext>Chapter 5, <i xmlns:xlink="http://www.w3.org/1999/xlink">Asynchronous Scaleout Camel Driver</i></xreftext><div element="section" href="#ugr.async.camel.driver.component.overview" number="5.1" targetptr="ugr.async.camel.driver.component.overview"><ttl>Overview</tt
 l><xreftext>Section 5.1, “Overview”</xreftext></div><div element="section" href="#ugr.async.camel.driver.component" number="5.2" targetptr="ugr.async.camel.driver.component"><ttl>How does it work?</ttl><xreftext>Section 5.2, “How does it work?”</xreftext></div><div element="section" href="#ugr.async.camel.driver.uri.format" number="5.3" targetptr="ugr.async.camel.driver.uri.format"><ttl>URI Format</ttl><xreftext>Section 5.3, “URI Format”</xreftext></div><div element="section" href="#ugr.async.camel.driver.sample" number="5.4" targetptr="ugr.async.camel.driver.sample"><ttl>Sample</ttl><xreftext>Section 5.4, “Sample”</xreftext></div><div element="section" href="#ugr.async.camel.driver.implementation" number="5.5" targetptr="ugr.async.camel.driver.implementation"><ttl>Implementation</ttl><xreftext>Section 5.5, “Implementation”</xreftext></div></div></div>
\ No newline at end of file

Modified: incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/pdf-target.db
URL: http://svn.apache.org/viewvc/incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/pdf-target.db?rev=819684&r1=819683&r2=819684&view=diff
==============================================================================
--- incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/pdf-target.db (original)
+++ incubator/uima/uima-as/trunk/uima-as-docbooks/src/olink/uima_async_scaleout/pdf-target.db Mon Sep 28 19:30:29 2009
@@ -1 +1 @@
-<div element="book" href="#d0e2" number="" lang="en"><ttl>UIMA Asynchronous Scaleout</ttl><xreftext>UIMA Asynchronous Scaleout</xreftext><div element="chapter" href="#ugr.async.ov" number="1" targetptr="ugr.async.ov"><ttl>Overview - Asynchronous Scaleout</ttl><xreftext>Chapter 1, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Overview - Asynchronous Scaleout</fo:inline></xreftext><div element="section" href="#ugr.async.ov.terminology" number="1.1" targetptr="ugr.async.ov.terminology"><ttl>Terminology</ttl><xreftext>Section 1.1, “Terminology”</xreftext></div><div element="section" href="#ugr.async.ov.as_vs_cpm" number="1.2" targetptr="ugr.async.ov.as_vs_cpm"><ttl>AS versus CPM</ttl><xreftext>Section 1.2, “AS versus CPM”</xreftext></div><div element="section" href="#ugr.async.ov.design_goals" number="1.3" targetptr="ugr.async.ov.design_goals"><ttl>Design goals for Asynchronous 
 Scaleout</ttl><xreftext>Section 1.3, “Design goals for Asynchronous Scaleout”</xreftext></div><div element="section" href="#ugr.async.ov.concepts" number="1.4" targetptr="ugr.async.ov.concepts"><ttl>AS Concepts</ttl><xreftext>Section 1.4, “AS Concepts”</xreftext><div element="section" href="#ugr.async.ov.concepts.threading" number="1.4.1" targetptr="ugr.async.ov.concepts.threading"><ttl>User written components and multi-threading</ttl><xreftext>Section 1.4.1, “Threading”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.wrapping" number="1.4.2" targetptr="ugr.async.ov.concepts.wrapping"><ttl>AS Component wrapping</ttl><xreftext>Section 1.4.2, “AS Component wrapping”</xreftext><obj element="figure" href="#ugr.async.ov.fig.wrapAE" number="1.1" targetptr="ugr.async.ov.fig.wrapAE"><ttl>AS Primitive Wrapper</ttl><xreftext>Figure 1.1, “AS Primitive Wrapper”</xreftext></obj><obj element="figure" href
 ="#ugr.async.ov.fig.wrapAAE" number="1.2" targetptr="ugr.async.ov.fig.wrapAAE"><ttl>AS Aggregate wrapper</ttl><xreftext>Figure 1.2, “AS Aggregate wrapper”</xreftext></obj></div><div element="section" href="#ugr.async.ov.concepts.deploying" number="1.4.3" targetptr="ugr.async.ov.concepts.deploying"><ttl>Deployment alternatives</ttl><xreftext>Section 1.4.3, “Deployment alternatives”</xreftext><div element="section" href="#ugr.async.ov.concepts.deploying.multiples" number="1.4.3.1" targetptr="ugr.async.ov.concepts.deploying.multiples"><ttl>Configuring multiple instances of components</ttl><xreftext>Section 1.4.3.1, “Multiple Instances”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.deploying.queues" number="1.4.3.2" targetptr="ugr.async.ov.concepts.deploying.queues"><ttl>Queues</ttl><xreftext>Section 1.4.3.2, “Queues”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.deployment_descriptor
 s" number="1.4.3.3" targetptr="ugr.async.ov.concepts.deployment_descriptors"><ttl>Deployment Descriptors</ttl><xreftext>Section 1.4.3.3, “Deployment Descriptors”</xreftext><div element="section" href="#ugr.async.ov.concepts.deployment_descriptors.aggregate" number="" targetptr="ugr.async.ov.concepts.deployment_descriptors.aggregate"><ttl>Deploying UIMA aggregates</ttl><xreftext>the section called “Deploying UIMA aggregates”</xreftext></div></div></div><div element="section" href="#ugr.async.ov.concepts.first_limits" number="1.4.4" targetptr="ugr.async.ov.concepts.first_limits"><ttl>Current design limitations</ttl><xreftext>Section 1.4.4, “Limits”</xreftext><div element="section" href="#ugr.async.ov.concepts.first_limits.sofa_mapping" number="1.4.4.1" targetptr="ugr.async.ov.concepts.first_limits.sofa_mapping"><ttl>Sofa Mapping limits</ttl><xreftext>Section 1.4.4.1, “Sofa Mapping limits”</xreftext></div><div element="section" h
 ref="#ugr.async.ov.concepts.first_limits.parameter_overriding" number="1.4.4.2" targetptr="ugr.async.ov.concepts.first_limits.parameter_overriding"><ttl>Parameter Overriding limits</ttl><xreftext>Section 1.4.4.2, “Parameter Overriding limits”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.first_limits.resource_sharing" number="1.4.4.3" targetptr="ugr.async.ov.concepts.first_limits.resource_sharing"><ttl>Resource Sharing limits</ttl><xreftext>Section 1.4.4.3, “Resource Sharing limits”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.first_limits.compatibility" number="1.4.5" targetptr="ugr.async.ov.concepts.first_limits.compatibility"><ttl>Compatibility with earlier version of remoting and scaleout</ttl><xreftext>Section 1.4.5, “Compatibility”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.application" number="1.5" targetptr="ugr.async.ov.concepts.application"><ttl>
 Application Concepts</ttl><xreftext>Section 1.5, “Application Concepts”</xreftext><div element="section" href="#ugr.async.ov.concepts.application.api" number="1.5.1" targetptr="ugr.async.ov.concepts.application.api"><ttl>Application API</ttl><xreftext>Section 1.5.1, “Application API”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.collection_process_complete" number="1.5.2" targetptr="ugr.async.ov.concepts.collection_process_complete"><ttl>Collection Process Complete</ttl><xreftext>Section 1.5.2, “Collection Process Complete”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.mc" number="1.6" targetptr="ugr.async.ov.concepts.mc"><ttl>Monitoring and Controlling an AS application</ttl><xreftext>Section 1.6, “Monitoring &amp; Controlling”</xreftext><div element="section" href="#ugr.async.ov.concepts.mc.what" number="1.6.1" targetptr="ugr.async.ov.concepts.mc.what"><ttl>Instrumentation
  provided</ttl><xreftext>Section 1.6.1, “Instrumentation provided”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.jms_descriptor" number="1.7" targetptr="ugr.async.ov.concepts.jms_descriptor"><ttl>JMS Service Descriptor</ttl><xreftext>Section 1.7, “JMS Service Descriptor”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.collection_reader" number="1.8" targetptr="ugr.async.ov.concepts.collection_reader"><ttl>Collection Reader support</ttl><xreftext>Section 1.8, “Collection Reader support”</xreftext></div></div><div element="chapter" href="#ugr.async.eh" number="2" targetptr="ugr.async.eh"><ttl>Error Handling for Asynchronous Scaleout</ttl><xreftext>Chapter 2, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Error Handling for Asynchronous Scaleout</fo:inline></xreftext><div element="section" href="#ugr.async.eh.basic" nu
 mber="2.1" targetptr="ugr.async.eh.basic"><ttl>Basic concepts</ttl><xreftext>Section 2.1, “Basic concepts”</xreftext></div><div element="section" href="#ugr.async.eh.incoming_commands" number="2.2" targetptr="ugr.async.eh.incoming_commands"><ttl>Associating Errors with incoming commands</ttl><xreftext>Section 2.2, “Associating Errors with incoming commands”</xreftext><div element="section" href="#ugr.asynch.eh.cas_multipliers" number="2.2.1" targetptr="ugr.asynch.eh.cas_multipliers"><ttl>Error handling for CASes generated in an Aggregate by CAS Multipliers</ttl><xreftext>Section 2.2.1, “Error handling - CAS Multipliers”</xreftext></div></div><div element="section" href="#ugr.async.eh.error_handling_overview" number="2.3" targetptr="ugr.async.eh.error_handling_overview"><ttl>Error handling overview</ttl><xreftext>Section 2.3, “Error handling overview”</xreftext><obj element="figure" href="#ugr.async.eh.fig.basic_eh_chain" nu
 mber="2.1" targetptr="ugr.async.eh.fig.basic_eh_chain"><ttl>Basic error handling chain for AS Aggregates for errors from delegates</ttl><xreftext>Figure 2.1, “Basic error handling chain for AS Aggregates for errors from delegates”</xreftext></obj><obj element="figure" href="#ugr.async.eh.fig.basic_eh_chain_prim" number="2.2" targetptr="ugr.async.eh.fig.basic_eh_chain_prim"><ttl>Basic error handling chain for AS Primitives</ttl><xreftext>Figure 2.2, “Basic error handling chain for AS Primitives”</xreftext></obj></div><div element="section" href="#ugr.async.eh.error_results" number="2.4" targetptr="ugr.async.eh.error_results"><ttl>Error results</ttl><xreftext>Section 2.4, “Error results”</xreftext></div><div element="section" href="#ugr.async.eh.aggregate_managed" number="2.5" targetptr="ugr.async.eh.aggregate_managed"><ttl>Error Recovery actions</ttl><xreftext>Section 2.5, “Error Recovery actions”</xreftext><div element="sec
 tion" href="#ugr.async.eh.aggregate_managed.actions" number="2.5.1" targetptr="ugr.async.eh.aggregate_managed.actions"><ttl>Aggregate Error Actions</ttl><xreftext>Section 2.5.1, “Aggregate Error Actions”</xreftext><div element="section" href="#ugr.async.eh.aggregate_managed.actions.retry" number="2.5.1.1" targetptr="ugr.async.eh.aggregate_managed.actions.retry"><ttl>Retry</ttl><xreftext>Section 2.5.1.1, “Retry”</xreftext></div><div element="section" href="#ugr.async.eh.aggregate_disable" number="2.5.1.2" targetptr="ugr.async.eh.aggregate_disable"><ttl>Disable Action</ttl><xreftext>Section 2.5.1.2, “Disable Action”</xreftext><obj element="figure" href="#ugr.async.eh.fig.disable" number="2.3" targetptr="ugr.async.eh.fig.disable"><ttl>Disable action</ttl><xreftext>Figure 2.3, “Disable action”</xreftext></obj></div><div element="section" href="#ugr.async.eh.aggregate_managed.actions.continue" number="2.5.1.3" targetptr="ugr.asy
 nc.eh.aggregate_managed.actions.continue"><ttl>Continue Option on Delegate Process CAS Failures</ttl><xreftext>Section 2.5.1.3, “Continue Option on Delegate Process CAS Failures”</xreftext></div></div></div><div element="section" href="#ugr.async.eh.errors_passed_up.thresholds" number="2.6" targetptr="ugr.async.eh.errors_passed_up.thresholds"><ttl>Thresholds for Terminate and Disable</ttl><xreftext>Section 2.6, “Thresholds for Terminate and Disable”</xreftext></div><div element="section" href="#ugr.async.eh.terminate" number="2.7" targetptr="ugr.async.eh.terminate"><ttl>Terminate Action</ttl><xreftext>Section 2.7, “Terminate Action”</xreftext><obj element="figure" href="#ugr.async.eh.fig.terminate" number="2.4" targetptr="ugr.async.eh.fig.terminate"><ttl>Terminate action</ttl><xreftext>Figure 2.4, “Terminate action”</xreftext></obj></div><div element="section" href="#ugr.async.eh.commands_allowed_actions" number="2.8" targe
 tptr="ugr.async.eh.commands_allowed_actions"><ttl>Commands and allowed actions</ttl><xreftext>Section 2.8, “Commands and allowed actions”</xreftext><obj element="table" href="#ugr.async.eh.table.error_actions_by_command" number="2.1" targetptr="ugr.async.eh.table.error_actions_by_command"><ttl>Error actions by command type</ttl><xreftext>Table 2.1, “Error actions by command type”</xreftext></obj></div></div><div element="chapter" href="#ugr.ref.async.deploy" number="3" targetptr="ugr.ref.async.deploy"><ttl>Asynchronous Scaleout Deployment Descriptor</ttl><xreftext>Chapter 3, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Asynchronous Scaleout Deployment Descriptor</fo:inline></xreftext><div element="section" href="#ugr.ref.async.deploy.descriptor_organization" number="3.1" targetptr="ugr.ref.async.deploy.descriptor_organization"><ttl>Descriptor Organization</ttl><xreftext>Sec
 tion 3.1, “Descriptor Organization”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor" number="3.2" targetptr="ugr.ref.async.deploy.descriptor"><ttl>Deployment Descriptor</ttl><xreftext>Section 3.2, “Deployment Descriptor”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.caspool" number="3.3" targetptr="ugr.ref.async.deploy.descriptor.caspool"><ttl>CAS Pool</ttl><xreftext>Section 3.3, “CAS Pool”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.service" number="3.4" targetptr="ugr.ref.async.deploy.descriptor.service"><ttl>Service</ttl><xreftext>Section 3.4, “Service”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.custom" number="3.5" targetptr="ugr.ref.async.deploy.descriptor.custom"><ttl>Customizing the deployment</ttl><xreftext>Section 3.5, “Customizing the deployment”</xreftext></div><div eleme
 nt="section" href="#ugr.ref.async.deploy.descriptor.input_queue" number="3.6" targetptr="ugr.ref.async.deploy.descriptor.input_queue"><ttl>Input Queue</ttl><xreftext>Section 3.6, “Input Queue”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.top_descriptor" number="3.7" targetptr="ugr.ref.async.deploy.descriptor.top_descriptor"><ttl>Top level Analysis Engine descriptor</ttl><xreftext>Section 3.7, “Top Level AE Descriptor”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.environment_variables" number="3.8" targetptr="ugr.ref.async.deploy.descriptor.environment_variables"><ttl>Setting Environment Variables</ttl><xreftext>Section 3.8, “Setting Environment Variables”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.ae" number="3.9" targetptr="ugr.ref.async.deploy.descriptor.ae"><ttl>Analysis Engine</ttl><xreftext>Section 3.9, “Analysis Engineâ€�
 �</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.errorconfig" number="3.10" targetptr="ugr.ref.async.deploy.descriptor.errorconfig"><ttl>Error Configuration descriptors</ttl><xreftext>Section 3.10, “Error Configuration descriptors”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.errorconfig.defaults" number="3.11" targetptr="ugr.ref.async.deploy.descriptor.errorconfig.defaults"><ttl>Error Configuration defaults</ttl><xreftext>Section 3.11, “Error Configuration defaults”</xreftext></div></div><div element="chapter" href="#ugr.ref.async.api" number="4" targetptr="ugr.ref.async.api"><ttl>Asynchronous Scaleout Application Interface</ttl><xreftext>Chapter 4, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Asynchronous Scaleout Application Interface</fo:inline></xreftext><div element="section" href="#ugr.ref.async.api.orga
 nization" number="4.1" targetptr="ugr.ref.async.api.organization"><ttl>Asynchronous API Overview</ttl><xreftext>Section 4.1, “Asynchronous API Overview”</xreftext></div><div element="section" href="#ugr.ref.async.api.descriptor" number="4.2" targetptr="ugr.ref.async.api.descriptor"><ttl>The UimaAsynchronousEngine Interface</ttl><xreftext>Section 4.2, “The UimaAsynchronousEngine Interface”</xreftext></div><div element="section" href="#ugr.ref.async.context.map" number="4.3" targetptr="ugr.ref.async.context.map"><ttl>Application Context Map</ttl><xreftext>Section 4.3, “Application Context Map”</xreftext></div><div element="section" href="#ugr.ref.async.callback.listener" number="4.4" targetptr="ugr.ref.async.callback.listener"><ttl>Status Callback Listener</ttl><xreftext>Section 4.4, “Status Callback Listener”</xreftext></div><div element="section" href="#ugr.ref.async.error.status" number="4.5" targetptr="ugr.ref.async.error
 .status"><ttl>Error Results</ttl><xreftext>Section 4.5, “Error Results”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage" number="4.6" targetptr="ugr.ref.async.api.usage"><ttl>Asynchronous API Usage Scenarios</ttl><xreftext>Section 4.6, “Asynchronous API Usage Scenarios”</xreftext><div element="section" href="#ugr.ref.async.api.usage_initialize" number="4.6.1" targetptr="ugr.ref.async.api.usage_initialize"><ttl>Instantiating a Client API Object</ttl><xreftext>Section 4.6.1, “Instantiating a Client API Object”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_callservice" number="4.6.2" targetptr="ugr.ref.async.api.usage_callservice"><ttl>Calling an Existing Service</ttl><xreftext>Section 4.6.2, “Calling an Existing Service”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_getresults" number="4.6.3" targetptr="ugr.ref.async.api.usage_getresults"><ttl>Retrieving As
 ynchronous Results</ttl><xreftext>Section 4.6.3, “Retrieving Asynchronous Results”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_deployservice" number="4.6.4" targetptr="ugr.ref.async.api.usage_deployservice"><ttl>Deploying a Service with the Client API</ttl><xreftext>Section 4.6.4, “Deploying a Service with the Client API”</xreftext></div></div><div element="section" href="#ugr.ref.async.api.usage_undeployservice" number="4.7" targetptr="ugr.ref.async.api.usage_undeployservice"><ttl>Undeploying a Service with the Client API</ttl><xreftext>Section 4.7, “Undeploying a Service with the Client API”</xreftext></div><div element="section" href="#ugr.ref.async.api.sample.code" number="4.8" targetptr="ugr.ref.async.api.sample.code"><ttl>Sample Code</ttl><xreftext>Section 4.8, “Sample Code”</xreftext></div></div><div element="chapter" href="#ugr.async.camel.driver" number="5" targetptr="ugr.async.camel.drive
 r"><ttl>Asynchronous Scaleout Camel Driver</ttl><xreftext>Chapter 5, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Asynchronous Scaleout Camel Driver</fo:inline></xreftext><div element="section" href="#ugr.async.camel.driver.component" number="5.1" targetptr="ugr.async.camel.driver.component"><ttl>Overview</ttl><xreftext>Section 5.1, “Overview”</xreftext></div><div element="section" href="#ugr.async.camel.driver.uri.format" number="5.2" targetptr="ugr.async.camel.driver.uri.format"><ttl>URI Format</ttl><xreftext>Section 5.2, “URI Format”</xreftext></div></div></div>
\ No newline at end of file
+<div element="book" href="#d0e2" number="" lang="en"><ttl>UIMA Asynchronous Scaleout</ttl><xreftext>UIMA Asynchronous Scaleout</xreftext><div element="chapter" href="#ugr.async.ov" number="1" targetptr="ugr.async.ov"><ttl>Overview - Asynchronous Scaleout</ttl><xreftext>Chapter 1, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Overview - Asynchronous Scaleout</fo:inline></xreftext><div element="section" href="#ugr.async.ov.terminology" number="1.1" targetptr="ugr.async.ov.terminology"><ttl>Terminology</ttl><xreftext>Section 1.1, “Terminology”</xreftext></div><div element="section" href="#ugr.async.ov.as_vs_cpm" number="1.2" targetptr="ugr.async.ov.as_vs_cpm"><ttl>AS versus CPM</ttl><xreftext>Section 1.2, “AS versus CPM”</xreftext></div><div element="section" href="#ugr.async.ov.design_goals" number="1.3" targetptr="ugr.async.ov.design_goals"><ttl>Design goals for Asynchronous 
 Scaleout</ttl><xreftext>Section 1.3, “Design goals for Asynchronous Scaleout”</xreftext></div><div element="section" href="#ugr.async.ov.concepts" number="1.4" targetptr="ugr.async.ov.concepts"><ttl>AS Concepts</ttl><xreftext>Section 1.4, “AS Concepts”</xreftext><div element="section" href="#ugr.async.ov.concepts.threading" number="1.4.1" targetptr="ugr.async.ov.concepts.threading"><ttl>User written components and multi-threading</ttl><xreftext>Section 1.4.1, “Threading”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.wrapping" number="1.4.2" targetptr="ugr.async.ov.concepts.wrapping"><ttl>AS Component wrapping</ttl><xreftext>Section 1.4.2, “AS Component wrapping”</xreftext><obj element="figure" href="#ugr.async.ov.fig.wrapAE" number="1.1" targetptr="ugr.async.ov.fig.wrapAE"><ttl>AS Primitive Wrapper</ttl><xreftext>Figure 1.1, “AS Primitive Wrapper”</xreftext></obj><obj element="figure" href
 ="#ugr.async.ov.fig.wrapAAE" number="1.2" targetptr="ugr.async.ov.fig.wrapAAE"><ttl>AS Aggregate wrapper</ttl><xreftext>Figure 1.2, “AS Aggregate wrapper”</xreftext></obj></div><div element="section" href="#ugr.async.ov.concepts.deploying" number="1.4.3" targetptr="ugr.async.ov.concepts.deploying"><ttl>Deployment alternatives</ttl><xreftext>Section 1.4.3, “Deployment alternatives”</xreftext><div element="section" href="#ugr.async.ov.concepts.deploying.multiples" number="1.4.3.1" targetptr="ugr.async.ov.concepts.deploying.multiples"><ttl>Configuring multiple instances of components</ttl><xreftext>Section 1.4.3.1, “Multiple Instances”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.deploying.queues" number="1.4.3.2" targetptr="ugr.async.ov.concepts.deploying.queues"><ttl>Queues</ttl><xreftext>Section 1.4.3.2, “Queues”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.deployment_descriptor
 s" number="1.4.3.3" targetptr="ugr.async.ov.concepts.deployment_descriptors"><ttl>Deployment Descriptors</ttl><xreftext>Section 1.4.3.3, “Deployment Descriptors”</xreftext><div element="section" href="#ugr.async.ov.concepts.deployment_descriptors.aggregate" number="" targetptr="ugr.async.ov.concepts.deployment_descriptors.aggregate"><ttl>Deploying UIMA aggregates</ttl><xreftext>the section called “Deploying UIMA aggregates”</xreftext></div></div></div><div element="section" href="#ugr.async.ov.concepts.first_limits" number="1.4.4" targetptr="ugr.async.ov.concepts.first_limits"><ttl>Current design limitations</ttl><xreftext>Section 1.4.4, “Limits”</xreftext><div element="section" href="#ugr.async.ov.concepts.first_limits.sofa_mapping" number="1.4.4.1" targetptr="ugr.async.ov.concepts.first_limits.sofa_mapping"><ttl>Sofa Mapping limits</ttl><xreftext>Section 1.4.4.1, “Sofa Mapping limits”</xreftext></div><div element="section" h
 ref="#ugr.async.ov.concepts.first_limits.parameter_overriding" number="1.4.4.2" targetptr="ugr.async.ov.concepts.first_limits.parameter_overriding"><ttl>Parameter Overriding limits</ttl><xreftext>Section 1.4.4.2, “Parameter Overriding limits”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.first_limits.resource_sharing" number="1.4.4.3" targetptr="ugr.async.ov.concepts.first_limits.resource_sharing"><ttl>Resource Sharing limits</ttl><xreftext>Section 1.4.4.3, “Resource Sharing limits”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.first_limits.compatibility" number="1.4.5" targetptr="ugr.async.ov.concepts.first_limits.compatibility"><ttl>Compatibility with earlier version of remoting and scaleout</ttl><xreftext>Section 1.4.5, “Compatibility”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.application" number="1.5" targetptr="ugr.async.ov.concepts.application"><ttl>
 Application Concepts</ttl><xreftext>Section 1.5, “Application Concepts”</xreftext><div element="section" href="#ugr.async.ov.concepts.application.api" number="1.5.1" targetptr="ugr.async.ov.concepts.application.api"><ttl>Application API</ttl><xreftext>Section 1.5.1, “Application API”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.collection_process_complete" number="1.5.2" targetptr="ugr.async.ov.concepts.collection_process_complete"><ttl>Collection Process Complete</ttl><xreftext>Section 1.5.2, “Collection Process Complete”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.mc" number="1.6" targetptr="ugr.async.ov.concepts.mc"><ttl>Monitoring and Controlling an AS application</ttl><xreftext>Section 1.6, “Monitoring &amp; Controlling”</xreftext><div element="section" href="#ugr.async.ov.concepts.mc.what" number="1.6.1" targetptr="ugr.async.ov.concepts.mc.what"><ttl>Instrumentation
  provided</ttl><xreftext>Section 1.6.1, “Instrumentation provided”</xreftext></div></div><div element="section" href="#ugr.async.ov.concepts.jms_descriptor" number="1.7" targetptr="ugr.async.ov.concepts.jms_descriptor"><ttl>JMS Service Descriptor</ttl><xreftext>Section 1.7, “JMS Service Descriptor”</xreftext></div><div element="section" href="#ugr.async.ov.concepts.collection_reader" number="1.8" targetptr="ugr.async.ov.concepts.collection_reader"><ttl>Collection Reader support</ttl><xreftext>Section 1.8, “Collection Reader support”</xreftext></div></div><div element="chapter" href="#ugr.async.eh" number="2" targetptr="ugr.async.eh"><ttl>Error Handling for Asynchronous Scaleout</ttl><xreftext>Chapter 2, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Error Handling for Asynchronous Scaleout</fo:inline></xreftext><div element="section" href="#ugr.async.eh.basic" nu
 mber="2.1" targetptr="ugr.async.eh.basic"><ttl>Basic concepts</ttl><xreftext>Section 2.1, “Basic concepts”</xreftext></div><div element="section" href="#ugr.async.eh.incoming_commands" number="2.2" targetptr="ugr.async.eh.incoming_commands"><ttl>Associating Errors with incoming commands</ttl><xreftext>Section 2.2, “Associating Errors with incoming commands”</xreftext><div element="section" href="#ugr.asynch.eh.cas_multipliers" number="2.2.1" targetptr="ugr.asynch.eh.cas_multipliers"><ttl>Error handling for CASes generated in an Aggregate by CAS Multipliers</ttl><xreftext>Section 2.2.1, “Error handling - CAS Multipliers”</xreftext></div></div><div element="section" href="#ugr.async.eh.error_handling_overview" number="2.3" targetptr="ugr.async.eh.error_handling_overview"><ttl>Error handling overview</ttl><xreftext>Section 2.3, “Error handling overview”</xreftext><obj element="figure" href="#ugr.async.eh.fig.basic_eh_chain" nu
 mber="2.1" targetptr="ugr.async.eh.fig.basic_eh_chain"><ttl>Basic error handling chain for AS Aggregates for errors from delegates</ttl><xreftext>Figure 2.1, “Basic error handling chain for AS Aggregates for errors from delegates”</xreftext></obj><obj element="figure" href="#ugr.async.eh.fig.basic_eh_chain_prim" number="2.2" targetptr="ugr.async.eh.fig.basic_eh_chain_prim"><ttl>Basic error handling chain for AS Primitives</ttl><xreftext>Figure 2.2, “Basic error handling chain for AS Primitives”</xreftext></obj></div><div element="section" href="#ugr.async.eh.error_results" number="2.4" targetptr="ugr.async.eh.error_results"><ttl>Error results</ttl><xreftext>Section 2.4, “Error results”</xreftext></div><div element="section" href="#ugr.async.eh.aggregate_managed" number="2.5" targetptr="ugr.async.eh.aggregate_managed"><ttl>Error Recovery actions</ttl><xreftext>Section 2.5, “Error Recovery actions”</xreftext><div element="sec
 tion" href="#ugr.async.eh.aggregate_managed.actions" number="2.5.1" targetptr="ugr.async.eh.aggregate_managed.actions"><ttl>Aggregate Error Actions</ttl><xreftext>Section 2.5.1, “Aggregate Error Actions”</xreftext><div element="section" href="#ugr.async.eh.aggregate_managed.actions.retry" number="2.5.1.1" targetptr="ugr.async.eh.aggregate_managed.actions.retry"><ttl>Retry</ttl><xreftext>Section 2.5.1.1, “Retry”</xreftext></div><div element="section" href="#ugr.async.eh.aggregate_disable" number="2.5.1.2" targetptr="ugr.async.eh.aggregate_disable"><ttl>Disable Action</ttl><xreftext>Section 2.5.1.2, “Disable Action”</xreftext><obj element="figure" href="#ugr.async.eh.fig.disable" number="2.3" targetptr="ugr.async.eh.fig.disable"><ttl>Disable action</ttl><xreftext>Figure 2.3, “Disable action”</xreftext></obj></div><div element="section" href="#ugr.async.eh.aggregate_managed.actions.continue" number="2.5.1.3" targetptr="ugr.asy
 nc.eh.aggregate_managed.actions.continue"><ttl>Continue Option on Delegate Process CAS Failures</ttl><xreftext>Section 2.5.1.3, “Continue Option on Delegate Process CAS Failures”</xreftext></div></div></div><div element="section" href="#ugr.async.eh.errors_passed_up.thresholds" number="2.6" targetptr="ugr.async.eh.errors_passed_up.thresholds"><ttl>Thresholds for Terminate and Disable</ttl><xreftext>Section 2.6, “Thresholds for Terminate and Disable”</xreftext></div><div element="section" href="#ugr.async.eh.terminate" number="2.7" targetptr="ugr.async.eh.terminate"><ttl>Terminate Action</ttl><xreftext>Section 2.7, “Terminate Action”</xreftext><obj element="figure" href="#ugr.async.eh.fig.terminate" number="2.4" targetptr="ugr.async.eh.fig.terminate"><ttl>Terminate action</ttl><xreftext>Figure 2.4, “Terminate action”</xreftext></obj></div><div element="section" href="#ugr.async.eh.commands_allowed_actions" number="2.8" targe
 tptr="ugr.async.eh.commands_allowed_actions"><ttl>Commands and allowed actions</ttl><xreftext>Section 2.8, “Commands and allowed actions”</xreftext><obj element="table" href="#ugr.async.eh.table.error_actions_by_command" number="2.1" targetptr="ugr.async.eh.table.error_actions_by_command"><ttl>Error actions by command type</ttl><xreftext>Table 2.1, “Error actions by command type”</xreftext></obj></div></div><div element="chapter" href="#ugr.ref.async.deploy" number="3" targetptr="ugr.ref.async.deploy"><ttl>Asynchronous Scaleout Deployment Descriptor</ttl><xreftext>Chapter 3, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Asynchronous Scaleout Deployment Descriptor</fo:inline></xreftext><div element="section" href="#ugr.ref.async.deploy.descriptor_organization" number="3.1" targetptr="ugr.ref.async.deploy.descriptor_organization"><ttl>Descriptor Organization</ttl><xreftext>Sec
 tion 3.1, “Descriptor Organization”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor" number="3.2" targetptr="ugr.ref.async.deploy.descriptor"><ttl>Deployment Descriptor</ttl><xreftext>Section 3.2, “Deployment Descriptor”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.caspool" number="3.3" targetptr="ugr.ref.async.deploy.descriptor.caspool"><ttl>CAS Pool</ttl><xreftext>Section 3.3, “CAS Pool”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.service" number="3.4" targetptr="ugr.ref.async.deploy.descriptor.service"><ttl>Service</ttl><xreftext>Section 3.4, “Service”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.custom" number="3.5" targetptr="ugr.ref.async.deploy.descriptor.custom"><ttl>Customizing the deployment</ttl><xreftext>Section 3.5, “Customizing the deployment”</xreftext></div><div eleme
 nt="section" href="#ugr.ref.async.deploy.descriptor.input_queue" number="3.6" targetptr="ugr.ref.async.deploy.descriptor.input_queue"><ttl>Input Queue</ttl><xreftext>Section 3.6, “Input Queue”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.top_descriptor" number="3.7" targetptr="ugr.ref.async.deploy.descriptor.top_descriptor"><ttl>Top level Analysis Engine descriptor</ttl><xreftext>Section 3.7, “Top Level AE Descriptor”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.environment_variables" number="3.8" targetptr="ugr.ref.async.deploy.descriptor.environment_variables"><ttl>Setting Environment Variables</ttl><xreftext>Section 3.8, “Setting Environment Variables”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.ae" number="3.9" targetptr="ugr.ref.async.deploy.descriptor.ae"><ttl>Analysis Engine</ttl><xreftext>Section 3.9, “Analysis Engineâ€�
 �</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.errorconfig" number="3.10" targetptr="ugr.ref.async.deploy.descriptor.errorconfig"><ttl>Error Configuration descriptors</ttl><xreftext>Section 3.10, “Error Configuration descriptors”</xreftext></div><div element="section" href="#ugr.ref.async.deploy.descriptor.errorconfig.defaults" number="3.11" targetptr="ugr.ref.async.deploy.descriptor.errorconfig.defaults"><ttl>Error Configuration defaults</ttl><xreftext>Section 3.11, “Error Configuration defaults”</xreftext></div></div><div element="chapter" href="#ugr.ref.async.api" number="4" targetptr="ugr.ref.async.api"><ttl>Asynchronous Scaleout Application Interface</ttl><xreftext>Chapter 4, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Asynchronous Scaleout Application Interface</fo:inline></xreftext><div element="section" href="#ugr.ref.async.api.orga
 nization" number="4.1" targetptr="ugr.ref.async.api.organization"><ttl>Asynchronous API Overview</ttl><xreftext>Section 4.1, “Asynchronous API Overview”</xreftext></div><div element="section" href="#ugr.ref.async.api.descriptor" number="4.2" targetptr="ugr.ref.async.api.descriptor"><ttl>The UimaAsynchronousEngine Interface</ttl><xreftext>Section 4.2, “The UimaAsynchronousEngine Interface”</xreftext></div><div element="section" href="#ugr.ref.async.context.map" number="4.3" targetptr="ugr.ref.async.context.map"><ttl>Application Context Map</ttl><xreftext>Section 4.3, “Application Context Map”</xreftext></div><div element="section" href="#ugr.ref.async.callback.listener" number="4.4" targetptr="ugr.ref.async.callback.listener"><ttl>Status Callback Listener</ttl><xreftext>Section 4.4, “Status Callback Listener”</xreftext></div><div element="section" href="#ugr.ref.async.error.status" number="4.5" targetptr="ugr.ref.async.error
 .status"><ttl>Error Results</ttl><xreftext>Section 4.5, “Error Results”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage" number="4.6" targetptr="ugr.ref.async.api.usage"><ttl>Asynchronous API Usage Scenarios</ttl><xreftext>Section 4.6, “Asynchronous API Usage Scenarios”</xreftext><div element="section" href="#ugr.ref.async.api.usage_initialize" number="4.6.1" targetptr="ugr.ref.async.api.usage_initialize"><ttl>Instantiating a Client API Object</ttl><xreftext>Section 4.6.1, “Instantiating a Client API Object”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_callservice" number="4.6.2" targetptr="ugr.ref.async.api.usage_callservice"><ttl>Calling an Existing Service</ttl><xreftext>Section 4.6.2, “Calling an Existing Service”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_getresults" number="4.6.3" targetptr="ugr.ref.async.api.usage_getresults"><ttl>Retrieving As
 ynchronous Results</ttl><xreftext>Section 4.6.3, “Retrieving Asynchronous Results”</xreftext></div><div element="section" href="#ugr.ref.async.api.usage_deployservice" number="4.6.4" targetptr="ugr.ref.async.api.usage_deployservice"><ttl>Deploying a Service with the Client API</ttl><xreftext>Section 4.6.4, “Deploying a Service with the Client API”</xreftext></div></div><div element="section" href="#ugr.ref.async.api.usage_undeployservice" number="4.7" targetptr="ugr.ref.async.api.usage_undeployservice"><ttl>Undeploying a Service with the Client API</ttl><xreftext>Section 4.7, “Undeploying a Service with the Client API”</xreftext></div><div element="section" href="#ugr.ref.async.api.sample.code" number="4.8" targetptr="ugr.ref.async.api.sample.code"><ttl>Sample Code</ttl><xreftext>Section 4.8, “Sample Code”</xreftext></div></div><div element="chapter" href="#ugr.async.camel.driver" number="5" targetptr="ugr.async.camel.drive
 r"><ttl>Asynchronous Scaleout Camel Driver</ttl><xreftext>Chapter 5, <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" font-style="italic">Asynchronous Scaleout Camel Driver</fo:inline></xreftext><div element="section" href="#ugr.async.camel.driver.component.overview" number="5.1" targetptr="ugr.async.camel.driver.component.overview"><ttl>Overview</ttl><xreftext>Section 5.1, “Overview”</xreftext></div><div element="section" href="#ugr.async.camel.driver.component" number="5.2" targetptr="ugr.async.camel.driver.component"><ttl>How does it work?</ttl><xreftext>Section 5.2, “How does it work?”</xreftext></div><div element="section" href="#ugr.async.camel.driver.uri.format" number="5.3" targetptr="ugr.async.camel.driver.uri.format"><ttl>URI Format</ttl><xreftext>Section 5.3, “URI Format”</xreftext></div><div element="section" href="#ugr.async.camel.driver.sample" number="5.4" targetptr="ug
 r.async.camel.driver.sample"><ttl>Sample</ttl><xreftext>Section 5.4, “Sample”</xreftext></div><div element="section" href="#ugr.async.camel.driver.implementation" number="5.5" targetptr="ugr.async.camel.driver.implementation"><ttl>Implementation</ttl><xreftext>Section 5.5, “Implementation”</xreftext></div></div></div>
\ No newline at end of file