The Interoperability SIG met from 9 am till 10:20 am European Central Time.


Fixing the CAPE-OPEN Type Library installer issue


Malcolm WOODMAN, Michael HALLORAN (Contractor for CO-LaN), AmsterCHEM (represented by Jasper van BATEN), Michel PONS (Contractor to CO-LaN as Chief Technology Officer)


Within the development work conducted by AmsterCHEM within the 2nd batch of orders organized with the contractors providing software services to CO-LaN, an unexpected issue has arised with the CAPE-OPEN Type Libraries and Primary Interop Assemblies distribution. This issue is due to the structure given so far to the CAPE-OPEN TLB/PIA and their installers. The new version to be distributed includes extensions to version 1.1 of the CAPE-OPEN standard such as Flowsheet Monitoring and Custom Data. Introducing these extensions in the CAPE-OPEN Type Libraries and Primary Interop Assemblies has been done with success. What is at stake is how the new versions (32-bit / 64-bit) of the CAPE-OPEN Type Libraries and Primary Interop Assemblies are distributed and therefore installed on an end-user machine.

As per the current arrangements, new versions of the CAPE-OPEN Type Library are not protected from being overriden by an older version while the CAPE-OPEN Primary Interop Assembly is protected because it is a DLL which is versioned. Many installation packages for applications using CAPE-OPEN for interoperability are including an older version of the installers (merge modules) used by CO-LaN to distribute the CAPE-OPEN Type Libraries and Primary Interop Assemblies. It will take time for all such installation packages to adopt new versions of the merge modules distributed by CO-LaN. Therefore, the above mentioned overriding is unfortunately meant to happen, preventing interoperability to work with interfaces such as Flowsheet Monitoring, Custom Data and tomorrow other extensions to CAPE-OPEN 1.1.

A new scheme has been discussed and designed today to counter the overriding. It involves putting in a separate type library what is an extension to CAPE-OPEN 1.1. This separate type library could be protected against overriding by older versions. The solution for this protection needs to be tested (version number or companion file). It calls also for carefully splitting the CAPE-OPEN IDL which is the representation of the CAPE-OPEN standard used to create a CAPE-OPEN Type Library. Conflicts have to be avoided on type definitions, interfaces, enumerations, etc… A single Primary Interop Assembly would be kept.

Once this design has been tested, it will have to be implemented. Documentation provided to developers about the use of the distribution packages of the CAPE-OPEN Type Libraries / Primary Interop Assemblies will have to be modified as well.


Any CO-LaN member with interest in the development of the set of software tools offered by CO-LaN is welcome to join. If you have the necessary expertise in programming and CAPE-OPEN, you are welcome to contribute. Please contact Malcolm WOODMAN, leader of the Interoperability SIG for further information.