To make a model easier to understand, it is often useful to be able to associate the same color with a set of entities from the same functional sub-domain.



Akwatype lets you define sub-models that group together entities to which a color can be assigned.

In a façade description file, they are introduced by the keyword subModel followed by the name of the sub-model and the properties between {  }

subModel CourseColor {
    customColor: "#badc58,darkgray"
    facades: [Course,Book,Author,Subject,CourseCategory]


SubModel properties

  • customColor (String)
    • Allows you to give a custom color to all entities associated with this sub-model, eg. "#C9A9A9,#543894" ("background,font")
    • You can use the hexadecimal color code eg. #FF5000 or the standard HTML color name
  • facades (String)
    • List of facades (type or facade) associated to the submodel
  • label (String)
    • short description of the subModel
  • description (String)
    • Longer description of the subModel
  • comment (String)
    • Longer description of the subModel
Color display in the editor and use of the color picker make color management easier in Akwatype















Color propagation

If a color is defined on a Type, all facades defined on this Type will inherit this color.

It is of course possible to override this inherited color by specifically associating the facade with another subModel

Example :


type Person{
  socialSecurityNumber: String

type Address{   createdDate:Date   updatedDate:Date   street : String   zipCode:String   city:String   country:String }

facades and subModel

facade ShortPerson on Person{     name     address::ShortAddress }
facade ShortAddress on Address{     city     country }
subModel PersonalInformation {     customColor: "yellowgreen,white"     facades: [Person,Address] }
subModel AdressFacade {     customColor: "#7AF0ED,drakGray"     facades: [ShortAddress] }


Graph :