Skip to content

7.0.0

Choose a tag to compare

@ReleaseManagement-BP ReleaseManagement-BP released this 17 Jul 09:49
a6ffe77

CDM Version 7.0

CDM 7.0, a production release, consolidates over 130 individual upgrades and releases to the model made in the development environment over the last one year.

What is being released

The release includes changes to the CDM model itself (manifested in changes to .rosetta source files) together with enhancements to supporting tooling, sample data, documentation, ingestion frameworks, validation logic, and build infrastructure.

Key themes delivered in CDM 7.0 include:

  1. Moving from using synonym based mappings to functional ingestion mappings.
  2. Legal Agreement model expansion through migration of ISDA Foundations content and enhanced support for CSA, CTA, GMSLA and umbrella agreements.
  3. Smart Contracts Framework from the 2026 CDM roadmap
  4. Asset, Product and Observable model refactoring and harmonization.
  5. Significant Event Model enhancements, including transfer, reset, lifecycle, quantity change and workflow improvements.
  6. Securities Finance and Collateral model enhancements.
  7. Reference data and taxonomy support has been enhancements
  8. The upgrade from DSL 9 to DSL 10
  9. Infrastructure & Tooling
  10. Expanded sample data, visualizations and testing coverage.
  11. Serialization on CDM 7
  12. Python Version of CDM Available at PyPI

Each of the above is described in more detail below.

1. FpML Confirmation Ingestion Framework

A major focus of CDM 7 has been the continued development of the FpML Confirmation Ingestion Framework. This work expands the CDM's ability to transform FpML confirmations into native CDM representations across a broader range of asset classes and product types, while improving consistency, maintainability and alignment with market standards.

The release significantly increases ingestion coverage for Rates, Foreign Exchange, Credit, Equity and Commodity products, introduces support for additional transaction supplements and lifecycle events, and completes the transition away from legacy synonym-based ingestion approaches. The adoption of a flattened FpML model further simplifies mapping logic by aligning the generated model structure more closely with source FpML documents and improving the maintainability of ingestion mappings.

This has enabled CDM 7 to completely move away from Synonym based mappings to using Functional Ingestion Mapping. This allows anyone with knowledge of CDM to make changes to the model, opposed to only those with technical Java implementation experience

Individual releases include:

2. Legal Agreement & Documentation Model

CDM 7 substantially expands the legal agreement capabilities of the model through the incorporation of content migrated from ISDA Foundations and the continued development of agreement-specific representations. These enhancements strengthen the CDM's ability to digitally represent legal documentation, elections, negotiated provisions and contractual relationships across a range of industry-standard agreements.

The release introduces richer support for Credit Support Annexes (CSA), Credit Terms Annexes (CTA), GMSLA agreements, umbrella agreements and associated elections, while improving the representation of agreement metadata, valuation responsibilities and calculation agent provisions. Together, these changes move the CDM closer to providing a comprehensive and interoperable representation of legal agreements alongside transaction and lifecycle data.

Key releases include:

3. Smart Contracts Framework

CDM 7 introduces the first major components of the Smart Contracts Framework through the development of the Instruction Composition Framework and associated lifecycle execution enhancements. While the CDM has historically provided a declarative representation of contractual terms, events and state transitions, this work begins to establish a standardized framework for representing how contractual processes are operationally executed. The objective is to provide a deterministic, auditable and reusable mechanism for modelling multi-step lifecycle workflows directly within the CDM, reducing reliance on proprietary procedural implementations and improving consistency across market participants.

The initial implementation focuses on interest rate reset processing and introduces a state-machine based execution framework capable of tracking workflow progress, accumulating intermediate state and determining the next operational step in a lifecycle process. Supporting enhancements to the Event Model refactor reset calculations so that observations, rate determinations and audit information are evaluated upstream and explicitly captured within lifecycle instructions before execution occurs. Together, these changes establish the foundation for future smart contract and workflow automation capabilities within the CDM by introducing standardised instruction composition, state accumulation and deterministic lifecycle execution patterns.

Individual releases include:

4. Asset, Product & Observable Model

CDM 7 continues the product model evolution introduced in CDM 6 through further harmonisation of asset classifications, simplification of transfer-related structures and refinement of product representations. These changes improve consistency across asset classes and reduce modelling complexity while supporting additional business use cases.

Enhancements include improvements to asset type classification, observable modelling, scheduled and contingent transfers, product qualification logic, commodity and equity taxonomy support, and the introduction of additional temporal concepts for products and event instructions. The release also removes a number of legacy structures and deprecated modelling patterns to simplify future model evolution.

Highlights include:

5. Event Model & Lifecycle Processing

A significant portion of CDM 7 has focused on improving lifecycle event processing and workflow consistency. These enhancements aim to make event generation more deterministic, auditable and aligned with the business intent represented by lifecycle instructions and workflow steps.

The release includes improvements to transfer processing, reset calculation workflows, quantity changes, qualification functions, schedule termination processing and securities finance lifecycle events. Several event functions have been refactored to move calculations closer to instruction generation, reducing downstream complexity and improving transparency of lifecycle processing decisions.

Highlights include:

6. Collateral, Margin & Securities Finance

CDM 7 further expands support for collateral management, securities finance and margin-related use cases. These enhancements strengthen the model's ability to represent collateral eligibility, inventory management, securities lending activity and margin calculations in a consistent and interoperable manner.

Key improvements include enhancements to collateral eligibility criteria, debt and equity collateral classification, inventory and locate workflows, securities lending lifecycle processing, collateral guarantor support and standardised initial margin calculations. These changes improve both pre-trade and post-trade representation of collateral and securities finance workflows.

7. Reference Data & Taxonomy

Reference data and taxonomy support has been enhanced to improve alignment with external industry standards and regulatory reference data sources. These updates help ensure that CDM representations remain interoperable with market identifiers, coding schemes and classification frameworks used across the industry.

The release includes updates to FpML coding schemes, legal entity identification support, ISO currency reference data and taxonomy classifications. Additional validation capabilities have also been introduced to improve consistency between CDM enumerations and their corresponding external standards.

8. Rune DSL 10 Migration

The FINOS Rune DSL is the domain-specific language used to codify the CDM. Alongside the latest release, version 10, a new Rune documentation website has been implemented: https://rune.finos.org/

CDM 7 introduces support for Rune DSL 10, representing a significant modernisation of the modelling framework and supporting toolchain used to develop and maintain the Common Domain Model. This upgrade aligns the CDM with the latest DSL and Bundle releases while strengthening model validation, improving type safety and removing several legacy modelling patterns that had previously been retained for backward compatibility.

A key aspect of the migration is the adoption of stricter validation rules and modelling conventions introduced in DSL 10. Legacy syntax warnings relating to cardinality mismatches, attribute overrides, metadata annotations and duplicate type definitions have been resolved across the model. The release also removes support for extending choice types, requiring these relationships to be modelled explicitly through attributes, and introduces stronger validation around navigation of choice types through path expressions. As part of this work, existing model logic was refactored to use explicit type resolution via the as keyword, improving clarity and eliminating ambiguous traversal patterns. Together, these changes establish a more robust, maintainable and future-proof modelling foundation for subsequent CDM development.

Individual releases include:

9. Infrastructure & Tooling

CDM 7 includes one of the most significant infrastructure modernization efforts undertaken within the project. The primary objective has been to improve maintainability, performance and long-term sustainability of both the model and the supporting toolchain.

Key initiatives include removal of legacy modelling constructs, dependency modernization, Java namespace rationalisation, build performance improvements, schema publication support and validation hardening. Together these changes provide a more robust foundation for future CDM development while reducing technical debt accumulated over previous release cycles.

Highlights include:

10. Sample Data, Testing & Visualisations

The release expands the supporting ecosystem around the model through additional sample data, testing artefacts and implementation examples. These resources are intended to improve adoption, simplify onboarding and provide practical illustrations of new modelling capabilities.

New legal agreement samples, ingestion test packs, securities lending examples, visualisations and regression testing improvements have been introduced throughout the release cycle. These additions provide broader coverage of newly introduced functionality and improve confidence in model implementations across different deployment environments.

Highlights include:

11. Serialization on CDM 7

This release capitalises on the work done to implement the newest version of serialization to be introduced to CDM 7. This means that users will now be able to serialize or deserialize the new JSON format into a CDM Object. Please see https://cdm.finos.org/docs/next/serialization) for more information. This was implemented in 7.0.0-dev.121

12. Python Version of CDM Available at PyPI

With the release of CDM 7, this introduces a Python version which is the only materially supported language implementation for CDM and the change in distribution materially expands the potential use of CDM. The key changes introduced are:

  • More complete support for CDM modeling particularly including Python generation from Rune defined functions.
  • Complete support for the new serialization format.
  • Availability of the generated CDM Python implementation in PyPI (the Python industry standard)

A summary of the full changes can be found in release 7.0.0-dev.127, with additional information found here

Backward-incompatible changes

The following categories contain notable backward-incompatible or migration-impacting changes:

Migration considerations

Consumers upgrading from CDM 6.x should review:

  1. Product, Asset and Transfer model changes Please see 4. Asset, Product & Observable Model
  2. Updated qualification function locations and behaviors. Please see 5. Event Model & Lifecycle Processing
  3. FpML ingestion framework migration from legacy synonym mappings. Please see 1. FpML Confirmation Ingestion Framework
  4. Legal Agreement model namespace additions and restructuring. Please see 2. Legal Agreement & Documentation Model
  5. Removed deprecated types, enums and namespaces 7.0.0-dev.130
  6. Updated generated code packages and dependency versions. Please see 9. Infrastructure & Tooling
  7. Those using the Functions or Validation Tabs will need to provide JSON in the new format opposed to the legacy one, due to the CDM 7 implementing the new serialisation format

For detailed implementation guidance, refer to the individual CDM 7-dev release notes associated with each feature area.