Return to Home Page
Overview
    History
    Acknowledgements
    Podcasts
    Notification Form
    Feedback Form
    Press Release #1
    Press Release #2
    Press Release #3

Master SOA Design
Pattern Catalog
    Master Pattern List (alphabetical)
    Master Pattern List (by category)
    Master Pattern List with
Page Numbers (PDF)
    Master Pattern List (Text)
    Pattern Notation
    Pattern Profiles
    Symbol Legend
    Pattern Contribution Form

SOA Candidate Patterns
    SOA Patterns Review Committee
    Candidate Patterns Overview
    Candidate Patterns List
    Candidate Pattern Contribution Form
    Candidate Pattern
Feedback Form
    SOA Pattern Template

Design Pattern Basics
    What's a Design Pattern?
    What's a Design Pattern Language?
    What's a Compound Pattern?

Supplemental
    SOA Patterns and Application Technologies
    SOA Design Patterns Historical Influences
    SOA Design Patterns and Design Principles
    SOA Design Patterns and Design Granularity
    Legal

Resources
    Design Patterns Publications
    Reference Posters
    SOAPrinciples.com
    WhatIsSOA.com
    SOA Visio Stencil


Data Format Transformation

(Little, Rischbeck, Simon)



Home > Transformation Patterns > Data Format Transformation

How can services interact with programs that communicate
with different data formats?
 

Problem

A service may be incompatible with resources it needs to access due to data format disparity. Furthermore, a service consumer that communicates using a data format different from a target service will be incompatible and therefore unable to invoke the service.

Solution

Intermediary data format transformation logic needs to be introduced in order to dynamically translate one data format into another.

Application

This necessary transformation logic is incorporated by adding internal service logic, service agents, or a dedicated transformation service.

Impacts

The use of data format transformation logic inevitably adds development effort, design complexity, and performance overhead.

Principles

Standardized Service Contract, Service Loose Coupling

Architecture

Inventory, Composition, Service
 
A Format Conversion utility service is added to the architecture. This service abstracts the legacy application API and provides XML-to-CSV and CSV-to-XML functions. Note that in the depicted architecture, the Format Conversion service exists as a component being reused by multiple components that are part of Web services, as per Dual Protocols.
Audio Podcast
This pattern is discussed as part of the audio podcast:

The ESB and Related Messaging Patterns
 

Related Patterns in This Catalog

Canonical Protocol (Erl), Data Model Transformation (Erl), File Gateway (Roy), Inventory Endpoint (Erl), Legacy Wrapper (Erl, Roy), Multi-Channel Endpoint (Roy), Protocol Bridging (Little, Rischbeck, Simon), Service Agent (Erl), Service Facade (Erl)


Related Service-Oriented Computing Goals

Increased Vendor Diversification Options, Increased Business and Technology Alignment, Reduced IT Burden

SOA Design Patterns This page contains excerpts from:

SOA Design Patterns by Thomas Erl

Foreword by Grady Booch

With contributions from David Chappell, Jason Hogg, Anish Karmarkar, Mark Little, David Orchard, Satadru Roy,
Thomas Rischbeck, Arnaud Simon, Clemens Utschig, Dennis Wisnosky, and others.

(ISBN: 0136135161, Hardcover, Full-Color, 400+ Illustrations, 865 pages)

For more information about this book, visit
www.soabooks.com.
The Prentice Hall Service-Oriented Computing Series from Thomas Erl
Home    SOA Books    SOA Magazine    What is SOA?    SOA Principles    SOASchool.com    SOA Glossary Copyright © 2007-2009
SOA Systems Inc.