The definition of canonicals is probably the most underrated part of an EAI. It is, in my experience, also the part which leads also to the most errors and inconsistencies in large integration projects.
This thing really gives me headaches espcecially since there doesn’t seem to be any ‘best solution’.
Or as it is summarized in the ‘GEAR 6 Canonical Strategy White Paper.pdf’: “Ultimately, there is no right and wrong canonical strategy for every scenario and
organization. Ultimately, the recommended canonical strategy will depend on each
organization�s specific business scenarios as well as organizational preferences.”
However, I am sure that everyone of you has some interesting ‘lessons learned’. E.g. how do you keep performance high without giving up too much maintainability, etc …
Also, what are your hints on keeping events flexible? (e.g. using structures, parsing different data in one string, etc …).
In short, let’s hear your opinions on canonical strategy. I am eager to read your input.