A
MessageTranslator is a specialized kind of
MessageRouter that takes a message in one format and translates it to another format. There are a number of commercial products that do that, like Extricity.
A common pattern we see today is that a group of programs decide on a common XML message format (a
CanonicalMessageDataFormat), and then use a
MessageTranslator to interface with other programs that do not natively speak that XML format.