Programming Guide: Cross-Platform Consistency and CI Labs

# Programming Guide

## Cross-Platform Consistency and CI Labs

OpenDoc was designed from the beginning to be a cross-platform architecture. The programming interface to OpenDoc is general enough that it is readily implemented on many platforms, adapting well to different user-interface designs and different run-time models. Although OpenDoc does not provide a complete programming interface, it provides consistent structure within which a system-specific interface can be used. As a result, users on all platforms obtain a uniform experience in embedding and manipulating all kinds of media.

Part of this uniformity is built into OpenDoc, and part comes from additional platform-independent user-interface guidelines that part-editor developers must follow. Because platform-neutral user-interface guidelines and programming standards are so important, and because data integrity and data-transfer protocols are so critical in cross-platform settings, OpenDoc is affiliated with an organization devoted to solving these issues in a vendor-independent fashion.

Component Integration Laboratories, Inc. (CI Labs) is a nonprofit association dedicated to promoting the adoption of OpenDoc as a vendor-neutral industry standard for software integration and component software. CI Labs is composed of a number of platform and application vendors with a common interest in solving OpenDoc issues and promoting interoperability.

Organizations and individuals who want to participate in the move to a component-software model are invited to join CI Labs. CI Labs supports several levels of participation through different membership categories. Specific membership benefits vary by category, but all members influence the future direction of OpenDoc technology.

We encourage you to add your name to one of our electronic mail information lists at CILABS.ORG, download files from our server at FTP.CILABS.ORG, or look up our Web page (http://www.cilabs.org). If for some reason you are unable to get files from our server, we can send you an information packet. For details on membership levels and how you can become a member, please provide the following information:

  Name
  Company Name
  Title
  Street Address
  City
  State/Province
  Zip Code/Postal Code/Country
  Telephone Number
  Fax Number
  e-mail address

You can send it through CILABS@CILABS.ORG or use our US mail address:

  Component Integration Laboratories, Inc.
  PO Box 61747
  Sunnyvale, CA 94088-1747

Telephone | (408) 864-0300
FAX | (408) 864-0380
Internet | CILABS@CILABS.ORG
World Wide Web | http://www.cilabs.org

CI Labs is responsible for the development and maintenance of a number of component software packages, including the following:

- OpenDoc, the platform-independent class library and compound document architecture that is described in this book.

- Bento, a class library and format for persistent object storage.

- System Object Model (SOM), an efficient and powerful mechanism and set of libraries for dynamic linking of objects. SOM underlies OpenDoc's dynamic linking capability, and its language-neutral interface compiler permits development in multiple languages, object-oriented as well as procedural, even within a single software component.

- Component Glue, an interface and library that enables seamless interoperability between OpenDoc and Microsoft Corporation's Object Linking and Embedding (OLE) technology for interapplication communication.

CI Labs oversees the development and distribution of these technologies. In the future, CI Labs also expects to coordinate the following activities for developers of OpenDoc part editors:

- Certification of part editors for consistency with OpenDoc standards and for safe use in any OpenDoc document

- Promotion of standard formats for exporting different kinds of document content

- Coordination of standards for extending the capabilities of OpenDoc, by defining specific sets of OpenDoc extension interfaces

[ Top | Previous | Next | Contents | Index | Documentation Homepage ]