A data model [18] provides constructs for defining: (i) the structure of data ( schema) using a data definition language (DDL); and the operations allowed on data using a data manipulation language (DML). In this section we briefly describe the DDL of a reference object data model that is similar to several semantic [6,8] and object data models [2].