Please note that this reference is very much work in progress. It is provided as a basis for discussions and test implementations. A full schema definition of the language will eventually be published in W3C Schema and/or RelaxNG formats.
In MLML there are no default attribute values - if an attribute is missing its value is undefined.
Language restrictions such as variable scope should be implemented as extensions. Source locators, annotations and documentation/comments are other examples of extensions that should be formalised separately.
MLML models the following abstract entities:
Types Functions and Calls Variables and References Literals Operators and Operations Constructs and Statements Try blocks and Exceptions
MLML does not provide any of the specifics necessary to execute code, such as a processing model, type system or runtime environment.
As an example of MLML use, the ECMA 335 Common Language Infrastrucure type system has been transformed (from the ECMA XML definitions) to the draft MLML format. More information is available on this page.