Dans les modèles UML, vous pouvez définir un langage à utiliser pour écrire le corps d'une contrainte, pour que les lecteurs de la contrainte puissent comprendre plus facilement sa condition ou sa restriction. Le corps peut être écrit en plusieurs langages : en langage naturel comme l'anglais, en langage de programmation comme Java, en notation mathématique ou en langage OCL (Object Constraint Language). Pour plus d'informations sur le langage OCL, lisez la spécification de superstructure UML 2.0 disponible sur le site Web du groupe OMG (Object Management Group).