1. A method for enforcing usage of a canonical model, the method comprising: receiving, by a computing entity, machine-automatable artifacts from a canonical model artifact repository, the machine-automatable artifacts expressing the canonical model using a set of metadata constraints and a set of transformation rules; converting, by the computing entity, the received machine-automatable artifacts into language-specific bindings; and programming, by the computing entity, an application using the language-specific bindings to automatically enforce conformity of the application to the canonical model and to enable the application to communicate with one or more other applications according to the canonical model even in an instance in which the application obtains first inbound data that is in non-canonical form from at least one of the other applications in response to utilizing one or more transformation rules of the set of transformation rules expressed by the machine-automatable artifacts to canonicalize the first inbound data, which was initially obtained by the at least one application in non-canonical form.