S1. Bundle Engine Overview


The XDOC Bundle Engine (the “Engine”) provides a rich set of features that enable packaging of documents into various formats and specifications, and delivering to 3rd party systems and business partners.

The Engine is highly configurable, robust, and mature, and can accommodate virtually any package structure and output formats, as well as delivery to all internet protocols (https, sftp, ftp, email, etc.) and local and network file system locations.

The execution of a Bundle for a Container involves two distinct tasks:

  1. Package Generation: packaging of the included documents in the format and packaging rules defined in the Bundle Profile.

  2. Package Delivery: delivery of the generated package to the delivery address defined in the Bundle Profile.

    • Note: Package Generation is only performed once, and the resulting package file(s) are stored in the XDOC repository Package Delivery is attempted one or more times until successful, or the retry limit is exceeded.


Like most XDOC frameworks and components, the Bundle Engine is implemented as a set of Programming Service Classes, following Service Oriented Architecture concepts. Included in the Service Classes are Workflow Task Processors that allow the Package Generation and Package Delivery tasks to be processed in the background by the XDOC Workflow Engine.

The XDOC user interfaces provide various UIs for invoking the Service Class methods to execute bundles for individual containers, a group of containers defined in the Integrated Application, or an ad-hoc set of containers. Some of these UIs execute the bundle synchronously in-line, allowing the user to see the results and outputs of the execution. Other UIs schedule the execution with the XDOC workflow engine for background asynchronous execution.