Canonical Data Format
Canonical Data Format
How can services be
designed to avoid data format transformation?
|
Problem
Services that use different
formats to represent data cause interoperability concerns, raise difficult
runtime exceptions, and require the need for undesirable data format
transformation measures.
|
|
Solution
The format used to deliver
data between services is standardized across all services within an
inventory, thereby guaranteeing a base level of interoperability.
|
|
Application
Depending on the
communication protocols being used, this pattern may dictate certain file
formats or, in the case of Web services, the use of the WS-I Basic Profile.
|
Impacts
Data format standardization
can lead to communication limitations associated with the chosen format type.
|
|
Principles
Standardized Service
Contract
|
Architecture
Inventory
|
|
Status
Under Consideration
|
Contributor
Thomas Erl
|
Contributor
Notes
While there’s
not harm in standardizing on common data formats, this form of standardization
may not warrant a separate design pattern. Data Format Transformation is often
carried out within service boundaries to overcome legacy compliance issues. In
many of these situations, the data formats cannot be standardized until the
legacy system is replaced. Also, the application of the Canonical Protocol
pattern often will result in the standardization of data formats that are
established with the communication protocol technology.
- Thomas Erl
|