This schema aims to capture the UML profile we are using (implicitly so far). Might be used as the schema for documents generated form the XMI in the first step in the code generation pipeline. Inspired by Laurent's .._FOR_GEN.xml file generated for use by Java code. But such an intermediate representation of our models can be made much more explicit than the XMI and therefore may allow easier XSLT scripts for generating the final products. Note, I have strayed from Laurent's use of <bean> and other java-like names. I am also using names for referring to (packages.)types defined in the document iso ID/IDREF or key/keyref constructs. I am asusming a validator will have ensured that the types exist etc. This is the xmi:id of the corresponding element in the source XMI representation. It is used in xmiidref attributes in TypeRef and attributes to provide an explicit lokup functionalirt when we need it and to link back to the original XMI document. Describes the dependency relation, if any. UTYPE of the object type. Utility element, could be obtained from data structure, but then the ObjectType UTYPE generation rule needs multiple locations of implementation. Now (in principle) only in utype.xsl. Pointer to the xmiid of the type containing this type directly. Pointer to the xmiid of a type referring to this type directly. Indicates that the attribute is part of a global uniqueness constraint, the name of which is given by the value of the constraint. This name allows multiple attributes to be part of the same constraint. TBD We may want to insist that attributes with a uniqeness constraints must be non-null. Indicates that the attribute is part of a uniqueness constraint that pertains to the context of the collection the object is in only. The name of the constraint is given by the value of the uniqueInCollection element. This name allows multiple attributes to be part of the same constraint. TBD We may want to insist that attributes with a uniqeness constraints must be non-null.