Methods, systems, and computer program products for automatically transforming
data or business messages to enable communication between parties in a distributed
computing environment (e.g. between business partners who exchange data over a
public network, and who do not necessarily use the same data formats), where this
data transformation preferably occurs at the edge of the computing network. A set
of transformation services is described, and include template registration, transformation,
forward, and receive services. Services from this set may optionally be combined
to create composite transformation services. A template defines how to transform
one data format into another. Selection criteria may be provided to enable dynamically
selecting a template at run-time. Using these services, one business partner simply
hands its data off into the network to a network-accessible transformation service,
where the data is automatically transformed into a format usable by its business
partner and forwarded to that business partner.