Se conoce como modelo canónico aquel que contiene los mínimos elementos posibles para la comunicación entre aplicaciones o distintas partes de una misma aplicación:
Dentro del Domain Driven Design hay un cierto movimiento contra el uso de un único modelo canónico para la intercomunicación, prefieriendo microformatos o múltiples modelos canónicos para cada contexto de la aplicación: