IBM BPM, V8.0.1, All platforms > Programming IBM BPM > Service Component Architecture programming

Service Component Definition Language

Service Component Definition Language (SCDL) is an XML-based language used to describe SCA elements such as modules, components, references, imports, and exports.

The various artifact types that exist in SCA were designed to support some of the basic requirements of this service-oriented architecture. To start with, SCA needs a mechanism for defining a basic service component. Once there is a mechanism for defining service components, it is important to be able to make these services available to clients both inside or outside of the current SCA module. In addition to this, a construct designed to import and reference services external to the current SCA module must exist. Finally, SCA provides constructs for composing services and modules into larger applications.

SCDL definitions are organized across several files.

For example, in a credit approval application, we can store the SCDL for the interface and implementation in a file called CreditApproval.component. References can be included in the CreditApproval.component file (inline) or in a separate sca.references file located in the module root. Any stand-alone reference is placed in the sca.references file. Stand-alone references can be used by non-SCA artifacts (JSP) within the same SCA module to invoke the SCA component.

Primary artifacts that make up an SCA service module
Artifact SCDL Definition
Module Definition

  • Contained in the sca.module file at the root SCA project JAR

Service Components

  • A module can contain 0..n service definitions
  • Each component definition is contained in a <SERVICE_NAME>.component file

Imports

  • A module can contain 0..n import definitions
  • Each import definition is contained in a <IMPORT_NAME>.import file

Exports

  • A module can contain 0..n export definitions
  • Each export definition is contained in a <EXPORT_NAME>.export file

References

  • Two types of references

    • Inline (contained within a service component definition)
    • Stand-alone

  • Each component definition is contained in a <SERVICE_NAME>.reference file

Other Artifacts

  • Other artifacts include: Java™ Classes, WSDL files, Other Artifacts XSD files, BPEL.

When building an SCA application, IBM Integration Designer takes care of generating the appropriate SCDL definitions. However, a basic familiarity with SCDL can help you to understand the overall architecture and assist when debugging applications.

Service Component Architecture programming