CML
is a domain-specific modeling language (DSML) that can be used to
specify the requirements for user-centric communication use cases or
scenarios. The are two equivalent version of the CML: XML-based (X-CML) and the graphical (G-CML). Two categories of communication models can be described using CML, communication schemas and communication instances,
similar to the relationship between use cases and scenarios during
requirements analysis. CML models are further classified as control schemas - the configuration part which specifies an instance of a topology (participant ids and the types of the exchanged media); and data schemas - specifies actual media (name or urls) to be exchanged during a communication.