Browse Prior Art Database

System for dynamic data binding configuration and context propagation Disclosure Number: IPCOM000166598D
Original Publication Date: 2008-Jan-17
Included in the Prior Art Database: 2008-Jan-17
Document File: 4 page(s) / 40K

Publishing Venue



In an SCA system as data bindings, transformation routines and edge component execution happens within a runtime system, these artifacts need to be configurable to allow for variability and flexibility in their execution. This includes static and dynamic configuration that can be defined by the user of the sytem at design time, or can be looked up and determined at runtime dynamically. In addition, these program constructs require context information that provides information on what the runtime is trying to attempt, how it is currently running and real-time information on what type of binding/protocol and interaction is being performed. This disclosure explains a method to achieve these results within a SOA environment using the edge components and artifacts to provide the flexibility, configurability and runtiime context required for rich execution logic to be performed. In an SCA system, Data Bindings are used to transform from a native data to the programming model systems data type. Currently in WPS these are Business Objects or SDOs. These data bindings are statically defined and do not allow for their properties and attributes to be configured. This allows for distinct different execution based on the characterstics of a data binding which can be controlled by how the user configures the data binding. This prevents reuse of transformation logic within the runtime and creates a lot of redundant functionality. It further prevents a user from controlling at execution time how a native data gets handled due to some preferences. For some background, the data bindings are based on EMD Specification found here: Some specific data bindings in WebSphere Process Server In addition, these data bindings are usually running in an SCA runtime context and executed by some runtime logic. This runtime context is usually very relevant to the transformation and data binding activities. This information is not currently available to these data bindings through well defined constructs. Without this information, the Data bindings can only execute statically on predefined notions and information. With the availability of the runtime context this information can then be used to perform correct and intelligent transformations.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 43% of the total text.

Page 1 of 4

System for dynamic data binding configuration and context propagation

The core idea of this invention is to define how data bindings, data handlers and functon selectors or any binding obect can be configured by changing the properties on those constructs, and, in addition, allow for different transformation logic to be executed and to provide a framework for how these configuration and data bindings can be executed. It also provides a mechanism and programming model for how the runtime context and data binding can be passed around in the system. The advantages of this solution include: allowing for dynamic execution of the data binding to perform different transformation logic based on user specified configurations; the ability to reuse transformation logic with slight modifications to the routines; the ability for runtime components to consistently execute and utilize a registry of data bindings; and allowing for the runtime context information to pass through to the data bindings and transformation logic. Futher, the flexibilility for users to configure their execution logic at design time based on business data and foreknowledge will increase execution speed and remove any approximations that may need to occur in the system .

In this system, the user has the ability to specify a data binding using an XML format based document. The information in the XML format document which we will call binding configuration allows the specification of the data binding, any properties and their values, tags and the underlying transformation logic that can be used. Further, it allows for a chain of transformation logic and has an identifier that will distinguish the configuration in the runtime.

The definition allows for the user to specify the fully-qualified Java class name of the program that can execute the data binding logic, and some configuration properties. This is not restricted to the java programming lanaguage, but a construct of one implementation of the invention. The values can be replaced by programming language specific methods for executing runtime code.

There are a few interfaces that need to be implemented by the data binding, one is BindingContext which will allow for the runtime context information to be passed along. Within this interface, a set of values will can be specified and set on the data binding based on the runtime information at execution time. The interface has some constants showing the typical information that a runtime may pass to a data binding that would be useful. These are only a subset of the information. These are part of version 1.1. of the Enterprise Metadata Discovery specification.

There is a registry that is used by the runtime programs to retrieve fully configured data bindings, function selectors and data handlers. These can all be configured in the system to allow for the advantages previously mentioned.


Page 2 of 4

Diagram: Binding Registry System