Cloud Information Model for MuleSoft Accelerators
The use of good, comprehensive canonical data models in API specifications is key for maximizing the reuse and flexibility of the interfaces and limiting the amount of data transformation logic required between the Experience, Process, and System layer in an API-led approach. Many organizations struggle with this, however, often ending up with disparate object definitions for the same entities across different APIs. This leads to brittle and often complex data transformations, which become difficult to maintain over time.
The Cloud Information Model (CIM) for MuleSoft Accelerators is an application-agnostic data model that simplifies integration and accelerates innovation. The use of CIM as a canonical model reduces barriers to cross-product integration and extends the value proposition of our solutions by exposing a common model across our Process and System APIs. With CIM, you can create seamless and tailored personal experiences across cloud-native applications.
History of CIM
Inspired by the Salesforce Customer 360 Data Model, CIM was created to deliver a standards-based solution for connecting enterprise products. The original distribution of CIM was produced by an open consortium, which was formed to deliver a standards-based solution for connecting enterprise products. Although it was adopted by MuleSoft for use in various accelerators, limited adoption by other companies led to the consortium being halted and the primary website was archived. The version of CIM created and maintained by the MuleSoft Solutions team is now known as the Cloud Information Model for MuleSoft Accelerators.
Release 2.0 of the model represents a significant upgrade and enhancement of virtually all object definitions, with simplified structures, additional inline documentation, and improved examples.
Organization
The model content is organized into domains, or Subject Areas, which represent major business concepts. Each Subject Area defines one or more Entity Groups, which in turn consist of a related collection of Entities. Each Entity has a set of Attributes, which define the unique characteristics of the Entity. Refer to the CIM Subject Areas page for the list of subject areas that are currently supported.
Implementation
The version of CIM used by the MuleSoft Accelerators is represented as a set of RAML library fragments. There is a core library for each subject area, plus vertical extension libraries that may introduce additional types, or aggregate types from the core libraries, for better alignment with certain industries. Each library provides a set of examples along with a set of JSON schema definitions for each object, which can be useful for defining metadata types when developing applications in Anypoint Studio or for schema validation of messages.
Refer to the Accelerator CIM Global Library home page to get started with using the model.