@startuml

class P_BMM_SCHEMA_DESCRIPTOR {
  + bmm_schema : P_BMM_SCHEMA [0..1]
}

abstract class BMM_SCHEMA_DESCRIPTOR  #whitesmoke;line:gray;line.dotted;text:gray {
  + bmm_schema : BMM_SCHEMA [0..1]
  + bmm_model : BMM_MODEL [0..1]
  + schema_id : String [1]
  + meta_data : Hash<String,String> [1]
  + includes : List<String> [*]
  + is_top_level() : Boolean [1]
  + is_bmm_compatible() : Boolean [1]
  + load() : void [1]
  + validate_merged() : void [1]
  + validate_includes( all_schemas_list : List<String> [0..1] ) : void [1]
  + create_model() : void [1]
}

BMM_SCHEMA_DESCRIPTOR <|-- P_BMM_SCHEMA_DESCRIPTOR


@enduml