Once trading contracts have been defined using TDL, they may be compiled to generate trading proxies for applications, as depicted in Figure 6.
The TDL compiler checks both the syntax and the semantic of TDL definitions. Semantic checking controls OMG IDL type correctness, TDL type names and properties, as well as OCL constraints in order to ensure no type related problem could arise at runtime. Proxy OMG IDL interfaces are produced by the TDL compiler, as well as their implementation for a given language--IDLscript and Java for the moment, C++ later on. For portability purpose, the TDL compiler is written in the Java language, based on the lexical and syntactic analyzer generated using JavaCC [15].