> What do you mean by "non-core"? If you mean that the references are
> to data that isn't part of the information you're trying to convey 
> to the recipient, then sure, that's what I've been talking about; 
> use references for that stuff.

Essentially I'm talking about the sorts of issues Steven Jones raises
here:

http://service-architecture.blogspot.com/2006/08/single-canonical-form-not-for-soa.html

I just find that by the time I get multiple receipients on board, all
with different needs, the message baloons.

> Hmm, I don't follow.

Should have just come up with a simple example (its utter nonsense,
but what the heck). A new Order comes in and so we send round a
message describing this addition, in it we include basic Client data
and also a reference to the Client who placed the Order. 

All but one of our consumers (for now) are happy with this message but
a pesky WackyRepostService is responsible for generating a detailed
report every time it receives an order creation message, the report
includes the Order and detailed information about the Client and all
sorts of related resources. 

We've discussed references and self-contained messages which we could
use here. However if the WackyReportService already maintains its own
(non-authoritative) copy of the Client's data (and related data) then
we can keep the messages small without some of the disadvantages
described. So when the WackyReportService gets the message it just
uses the Client reference as a lookup to its own (potentially
temporal) information about that Client.

- Colin

Reply via email to