Skip Headers
Oracle® Fusion Middleware Developer's Guide for Imaging and Process Management
11g Release 1 (11.1.1)

Part Number E12784-01
Go to Documentation Home
Go to Book List
Book List
Go to Table of Contents
Go to Index
Go to Feedback page
Contact Us

Go to previous page
Go to current chapter
Go to next page
View PDF

1.2 Common API Model Concepts

The Oracle I/PM API has been implemented based on service-oriented architecture design patterns. The components of the model can be broken down into the following two categories: services and objects.


The services translate into Web service requests. These services do not contain data, but provide methods to accomplish common tasks such as creating a document. The services move data objects back and forth to the Oracle I/PM servers.


Objects contain only data. The only methods they provide are simple get and set operations for the object properties.

See the Oracle Imaging and Process Management Java API Reference for detailed information about Oracle I/PM services, methods, and parameters. Code samples that demonstrate many key API features are provided throughout this guide.

1.2.1 Understanding Services

Oracle I/PM services can be divided into the following categories:

  • Definition: The definition services provide the functionality to manage the structure of the Oracle I/PM system including applications, searches, and inputs.

  • Document: The document services provide the functionality to manage the content within an Oracle I/PM system.

  • System: The system services provide the functionality to manage the structure of the Oracle I/PM system including applications, searches, and inputs.

The following common methods are available among these services when applicable:

Methods Description
list...() The list method is used to find definitions with which the current user can interact. The type of interaction, such as view or modify, is defined using the Ability enumeration and is provided as a parameter.
get...() The get method is used to retrieve a definition object. This method includes an array of SectionFlag enumeration values used for requesting specific portions of the object.



The create, update, and delete methods provide standard maintenance functions for their respective objects within the limits of the current user context. Definition Service

The following definition services provide basic creation and maintenance of the structure of the Oracle I/PM system. ApplicationService

An Oracle I/PM application represents a document repository with a uniquely configured set of metadata, privilege assignments, document lifecycle specifications, BPEL integrations, auditing configurations, and other items necessary to properly manage documents and transactions. ApplicationService provides the facilities to find, create, modify, and delete applications. The definition of the application resides within an application object that contains multiple subobjects. SearchService

Oracle I/PM is designed to provide storage for a large number of documents. Because it can be difficult for users to navigate a large number of documents by browsing folders, the Oracle I/PM system provides a comprehensive searching solution as a more efficient way to find desired content. SearchService is used to find, delete, and execute searches. Because search definitions are complex entities, it is best practice to create a search using the Oracle I/PM user interface and then save it in the system. Saved searches provide an effective mechanism to leverage complex queries through an integration. It only requires that you know the name of the search and the desired search parameter values. InputService

InputService is used to find, create, modify, and delete input definition objects. InputService allows state modifications as well as toggling an input online/offline. It allows users to upload sample data as well as to get definition file information. ConnectionService

ConnectionService is used to find, create, modify, and delete connection definition objects. Connections are used to connect Oracle I/PM to BPEL servers and Content Server repositories. ImportExportService

ImportExportService is used to create applications, searches and inputs in bulk within an Oracle I/PM system. Document Services

The following document services are used to create and maintain document content in Oracle I/PM. DocumentService

DocumentService is used to access, lock, move, copy, modify, and delete the documents within the Oracle I/PM repository. All document service method actions are bounded by the current user context and the associated document security configured in the application in which the document resides. DocumentService also maintains the annotations associated with a document and provides the ability to render documents into image formats. DocumentContentService

DocumentContentService is used to upload documents and retrieve documents. System Services

The following system services provide functionality relevant to the management of the Oracle I/PM system. LifecycleService

LifecycleService provides the ability to obtain information about the storage volumes that are available for document storage. The volume objects represent the storage media. Storage volumes are associated with documents in the application definition. LoginService

LoginService establishes and terminates user sessions for Oracle I/PM. A session must be established before any of the other services may be used. PreferenceService

PreferenceService provides the ability to store preference information at either the system or the user level. The system level provides a single configuration instance for an Oracle I/PM installation while the user level provides a unique configuration instance for each user. This service provides basic storage and retrieval of those preference settings. Note that if setting preferences from the API, you must be mindful of type. There is no validation against an incorrect setting passed through the API. Validation occurs only when preferences are set through the user interface. SecurityService

SecurityService provides mechanisms to query the system for users and user groups that exist within the encompassing security environment. It also provides the ability to retrieve and define the security privileges that are beyond those security elements defined within each of the system definition objects. TicketService

TicketService allows users to create or delete a ticket and perform a collective delete of expired tickets.

1.2.2 Understanding Data Objects

The system services provide management at the Oracle I/PM API level. Integrators can leverage concepts that span multiple Oracle I/PM API calls. Identification

The NameID class provides the basic means of identifying an entity within the system. All entities have both a unique identifier which is numeric and a name which is represented by string data type. Either the numeric identifier or the name can be used to refer to specific entities within Oracle I/PM. The NameID class will hold the numeric, string, or both identifiers. If both identifiers are provided, the numeric ID is used. Id must be 0 (not provided) for Name to be used. This class is returned by all of the list() functions providing the caller with a list of both the numeric and string identifiers for the objects listed. The get() functions that accept a NameID allow the integrator to use either the numeric ID or the name to retrieve the desired entity. Sections

Each object (application, input, search, connection, and document) is composed of multiple subobjects referred to as sections. Object sections include general properties, security grants, and audit history, among others. For convenience, the get() services accept an array of section indicators so that only a subset of the full object's content can be retrieved from Oracle I/PM or sent back to Oracle I/PM for update. These indicators are defined within the SectionFlag class of each object.

The following table lists the sections available for each definition object.

Section Flag Application Input Search Connection Document
DETAILS       X  
MAPPINGS   X      

Each Oracle I/PM object contains a subobject called the properties object that defines the properties of that object. The properties object may contain additional subobjects that have their own attributes providing additional complex content. Permissions

Many of the objects define a permissions subobject that specifies the permissions the current user has been granted in relation to the current instance of the object. Security

The definition objects define security subobjects that are used to define what users or user groups have been assigned what privileges. These privileges cover the basic object maintenance actions such as creation, modification and deletion, as well as specific actions unique to the type such as search execution. AuditEvent

Many objects include a section for returning the audit history associated with that object. This history includes the actions taken by various users that have affected that object. Audited actions would include creation, modification, or viewing of that object. The audit history records the action that occurred, the user performing it, and the date upon which it occurred.