SOA Patterns > Inventory Governance Patterns > Canonical Versioning
Canonical Versioning (Erl)
How can service contracts within the same service inventory be versioned with minimal impact?
![Canonical Versioning Canonical Versioning](https://patterns.arcitura.com/wp-content/uploads/2018/09/canonical_versioning.png)
Problem
Service contracts within the same service inventory that are versioned differently will cause numerous interoperability and governance problems.
Solution
Service contract versioning rules and the expression of version information are standardized within a service inventory boundary.
Application
Governance and design standards are required to ensure consistent versioning of service contracts within the inventory boundary.
Impacts
The creation and enforcement of the required versioning standards introduce new governance demands.
Principles
Architecture
Service, Inventory
![Canonical Versioning: When services are versioned according to the same overarching strategy, they can retain their original standardization and interoperability and are more easily understood by consumer designers. Canonical Versioning: When services are versioned according to the same overarching strategy, they can retain their original standardization and interoperability and are more easily understood by consumer designers.](https://patterns.arcitura.com/wp-content/uploads/2018/09/fig1-45.png)
When services are versioned according to the same overarching strategy, they can retain their original standardization and interoperability and are more easily understood by consumer designers.
Related Patterns in This Catalog
Canonical Expression, Compatible Change, Metadata Centralization, Termination Notification, Version Identification
Related Service-Oriented Computing Goals
Increased Federation, Increased Organizational Agility, Reduced IT Burden
This page contains excerpts from:
SOA Design Patterns by Thomas Erl
(ISBN: 0136135161, Hardcover, Full-Color, 400+ Illustrations, 865 pages)
For more information about this book, visit www.arcitura.com/books.
This page contains excerpts from:
Web Service Contract Design and Versioning for SOA
by Thomas Erl, Anish Karmarkar, Priscilla Walmsley, Hugo Haas, Umit Yalcinalp, Canyang Kevin Liu, David Orchard, Andre Tost, James Pasley
For more information about this book, visit www.arcitura.com/books.