systems is a critical phase in any Documaker implementation. Whether Documaker
is being deployed in a “green field” scenario or into a mature enterprise the
fact remains that integration must occur on one or more levels. My goal in this
blog post is to explore some concepts and methods required to define and
establish integration available in a typical implementation of Oracle Documaker
Enterprise Edition, with the hope this may help readers think about possible
solutions for their own use.
Establish the Foundation
As I mentioned, Documaker has two possible implementation targets:
the green field and the established enterprise. Each target presents both unique
and common challenges that must be overcome during the project. In a green
field implementation, the software packages being implementation are typically
new from top to bottom. This type of target is typically encountered when a
brand new company, business unit, or product line is being built from the
ground up with new systems, procedures, and software. Implementing within the
established enterprise refers to the process of upgrading or replacing an
existing software package, or implementing new software within an existing infrastructure.
This implementation is most often used with established companies, units, or
product lines and serves to enhance functional offerings of the enterprise to serve
the needs of the business. In both cases where Documaker is concerned there
will be integrations – either to new or existing software, processes, and
procedures, which form the basic foundation of the enterprise. In order to
perform the subsequent steps, we must know capabilities of the foundation.
Therefore, the final activity in this step is to establish a functional catalog
of capabilities offered by each component of the system. The table below illustrates one such method of
capabilities cataloging.
Table 1, Capabilities Catalog
| ID | System | I/O | Type | Method | Format | Notes |
| CAP-1 | Policy Administration System | Output | Flat-file | File system delivery | Fixed-record format | Schema dictated by product. Can add new record types |
| CAP-2 | Billing | Output | XML | Web Service | Fixed | XSL-controlled |
| CAP-3 | Content Management System | Input | SOAP | Web Service | Fixed Schema | Product-controlled schema. New data elements can be |
This table illustrates how the input and output capabilities
of various element in the foundation system and how they may (or may not) be
changed to accommodate additional business requirements.
Data Flow Mapping
Having defined the capabilities, we can now further refine
business requirements and (hopefully) obtain a match between the requirements
and capabilities. When performing a Documaker implementation, part of the
business requirements analysis will involve form and data analysis. This
analysis defines, among other things, the data needed for document triggering,
data mapping, and controlling other aspects of handling document automation.
This information constitutes requirements for systems that feed information to
Documaker (“upstream” systems). Similarly, there may be a need for Documaker to
feed information to systems after processing (“downstream” systems), such as
archive repositories, publishing systems, delivery systems, and the like. By
now you can probably see that defining the upstream and downstream requirements
is directly related to the table of capabilities we developed in Step 1. From
here we can further refine our data requirements for each system. The table
below represents a simplified view into cataloging the data requirements for
each system:
Table 2, Data Requirements
| ID | System | Capability Map | Element | Source | Notes |
| DR-1 | Content Management System | CAP-1 | Account Number | RECORD ID=100 FIELD=ACCT_NUM | Required for indexing output |
| DR-2 | Mail | CAP-2 | XML | Document | Required |
Once these two steps have been fully executed and mapped
out, we’ll have an accurate picture of all upstream and downstream data
requirements as well as a map of how those data elements can be captured and
passed between systems.
Targeting Documaker
At this point, what we have defined is not specific to
Documaker – the steps I’ve outlined above are very generic and could be applied
to any software implementation in any enterprise where data interchange and
software integration is required. The key is that we are now in a frame of mind
where we can start to consider the integration capabilities of Documaker, and
how they will map into a possible solution. What better way to do that than to present
a capabilities catalog for Documaker Enterprise Edition, as we would do in an
actual implementation! The table format I’ve chosen to represent the
capabilities catalog is slightly different from Table 1, as I have formatted the table to represent capabilities specific
to Documaker.
Table 3, Documaker Input Channels
| Model | Transport | Type(s) | Notes |
| Transactional Input | Hot Folder Web Service Direct Queue | Flat-File
| Record layout dictated by upstream capability, informed |
| Transactional Input | Hot Folder Web Service Direct | XML | Schema dictated |
| Consolidation | ETL-to-Transactional Input | Flat-file XML Databases Other Files | ETL Tool such as Transall, a Documaker component, is |
| Interactive Augmentation | Documaker | Web Service-to-various | Documents |
| Scripted Augmentation | DAL –ODBC DAL-File | Database or File-based | DAL-scripting can be used to obtain data from external |
The following table outlines the output capabilities of
Documaker.
Table 4, Documaker Output Channels
| Model | Transport | Type(s) | Notes |
| Archiver | s/FTP Web Center: Content (UCM) File System | Publication Streams Metadata Files | This channel is a standard output delivery channel included |
| Customization | Various | Publication Metadata | The |
| Distribution | Web Services Dashboard Query | Publication Streams Metadata | Documaker supports multiple methods of self-service |
| Notification | SMS | Metadata | This |
| Publication | Printer | Publication Streams
| This is a standard Documaker output delivery channel |
| Instrumentation | JMX | Statistics | This |
While the preceding tables are not exhaustive of all of the
possible integration points with Documaker, they are the most common. Some of these
channels aren’t considered traditional integration points, but they are useful when
thinking about systems management of an enterprise solution that includes
Documaker.
hope you find this information useful!
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:”Table Normal”;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:””;
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:”Calibri”,”sans-serif”;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-fareast-font-family:”Times New Roman”;
mso-fareast-theme-font:minor-fareast;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:”Times New Roman”;
mso-bidi-theme-font:minor-bidi;}
table.MsoTableMediumList1
{mso-style-name:”Medium List 1″;
mso-tstyle-rowband-size:1;
mso-tstyle-colband-size:1;
mso-style-priority:65;
mso-style-unhide:no;
border-top:solid black 1.0pt;
mso-border-top-themecolor:text1;
border-left:none;
border-bottom:solid black 1.0pt;
mso-border-bottom-themecolor:text1;
border-right:none;
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:”Calibri”,”sans-serif”;
color:black;
mso-themecolor:text1;}
table.MsoTableMediumList1FirstRow
{mso-style-name:”Medium List 1″;
mso-table-condition:first-row;
mso-style-priority:65;
mso-style-unhide:no;
mso-tstyle-border-top:cell-none;
mso-tstyle-border-bottom:1.0pt solid black;
mso-tstyle-border-bottom-themecolor:text1;
font-family:”Tahoma”,”sans-serif”;
mso-ascii-font-family:Cambria;
mso-ascii-theme-font:major-latin;
mso-fareast-font-family:”Times New Roman”;
mso-fareast-theme-font:major-fareast;
mso-hansi-font-family:Cambria;
mso-hansi-theme-font:major-latin;
mso-bidi-font-family:”Times New Roman”;
mso-bidi-theme-font:major-bidi;}
table.MsoTableMediumList1LastRow
{mso-style-name:”Medium List 1″;
mso-table-condition:last-row;
mso-style-priority:65;
mso-style-unhide:no;
mso-tstyle-border-top:1.0pt solid black;
mso-tstyle-border-top-themecolor:text1;
mso-tstyle-border-bottom:1.0pt solid black;
mso-tstyle-border-bottom-themecolor:text1;
color:#1F497D;
mso-themecolor:text2;
mso-ansi-font-weight:bold;
mso-bidi-font-weight:bold;}
table.MsoTableMediumList1FirstCol
{mso-style-name:”Medium List 1″;
mso-table-condition:first-column;
mso-style-priority:65;
mso-style-unhide:no;
mso-ansi-font-weight:bold;
mso-bidi-font-weight:bold;}
table.MsoTableMediumList1LastCol
{mso-style-name:”Medium List 1″;
mso-table-condition:last-column;
mso-style-priority:65;
mso-style-unhide:no;
mso-tstyle-border-top:1.0pt solid black;
mso-tstyle-border-top-themecolor:text1;
mso-tstyle-border-bottom:1.0pt solid black;
mso-tstyle-border-bottom-themecolor:text1;
mso-ansi-font-weight:bold;
mso-bidi-font-weight:bold;}
table.MsoTableMediumList1OddColumn
{mso-style-name:”Medium List 1″;
mso-table-condition:odd-column;
mso-style-priority:65;
mso-style-unhide:no;
mso-tstyle-shading:silver;
mso-tstyle-shading-themecolor:text1;
mso-tstyle-shading-themetint:63;}
table.MsoTableMediumList1OddRow
{mso-style-name:”Medium List 1″;
mso-table-condition:odd-row;
mso-style-priority:65;
mso-style-unhide:no;
mso-tstyle-shading:silver;
mso-tstyle-shading-themecolor:text1;
mso-tstyle-shading-themetint:63;}
