An encoding rule is an identifiable collection of conversion rules that defines the encoding for a particular data structure. The encoding rule specifies the data types to be converted, as well as the syntax, structure and coding schemes used in the resulting data structure. An encoding rule is applied to application schema specific data structures to produce system-independent data structures suitable for transport or storage. In order to define an encoding rule three important aspects must be specified, i.e. the input data structure, the output data structure and the conversion rules between the elements of the input and the output data structures. Both the input and output data structures are written using a conceptual schema language and the concepts in the languages are used to define the encoding rule.