Theory

Model Types

Modeltypes represent meaningful combinations of classes and relation classes as views to be used by the modeller to create models.

 

Meta Model of Meta Modelling Language: Modeltype

Definitions

Model type: A model type determines a subset of all instanciable classes and relations. Each model has a specific model type which can not be changed afterwards.

Model type group: Model type groups should be defined, if the application library consists of many different model types. This allows to group and structure the available model types.

Modus: A modus is a further restriction of a model type. It defines a subset of the assigned classes/relations and simplifies modeling by hiding not needed classes. The modus of a model can be changed any time unlike the model type.

GENERAL order-of-classes: OrderOfClasses

Defines if the sequence of the classes in the modeling tool should be taken from the meta model ( <OrderOfClasses>="default") or is specified for each model type explicitly ("custom").

METHOD graphrep:  "attrName"

Introduces a method diagram.

GROUP "GroupName"

Defines a group of model types with the name <GroupName>.

graphrep: „attrName"

Defines a graphical representation for a method diagram. <attrName> specifies an attribute which contains the representation using the ADOxx GraphRep language.

Example: Definition of Model Types and Groups

In the following the implementation of a modelling stack with four model types, grouped into two model type groups is shown:

GENERAL order-of-classes:custom
METHOD graphRep:"Method GraphRep"
{
  GROUP "Simulation"
  {
    MODELTYPE "My First Model Type"
    MODELTYPE "My Second Model Type"
  }
  GROUP "All modeltypes"
  {
    MODELTYPE "My First Model Type"
    MODELTYPE "My Second Model Type"
    MODELTYPE "My Third Model Type"
    MODELTYPE "My Forth Model Type"
  }
}

Additional Commands

MODELTYPE "modelTypeName" from MTSource

This command defines a model type <modelTypeName> and inherits all classes and relations from the source <MTSource> (all, none or a different model type).

plural: "modelTypePluralName"

Defines the plural name of a model type.

bitmap: "fileName"

Defines a graphical symbol for the selection list; <fileName> = path and file name; backslashes must be masked with an additional backslash ( i.e. "\\").

attrrep: "attrName"

Provides a Notebook (defined in the library as an attribute with the name <attrName>) with model attributes for a model type.

INCL / EXCL

Adds (except for all)/removes (except for none) classes and relations to the MODELTYPE.

pos / not-simulateable

Determines the position in list of model types / excludes the model type from simulation.

Example Model: Detailed Modeltype Definition

MODELTYPE "My First Model Type"
  from:none
  plural: "My First Model Types"
  pos:1
  not-simulateable
  bitmap:"db:\\MyFirstModelType.bmp"
  attrrep:"Notebook for My First Model Type"
INCL "My Class 1"
INCL "My Class 2"
INCL "My Class 3"
INCL "has relationship 1"
INCL "has relationship 2"

Commands to Define Views on Model Types

MODE  "modeName" from: "modeSource"

This command defines a view modus with the name <modeName>. A list of classes/relations must be specified (either absolute or relative as described above) together with this command. MODE can be extended using several parameters.

from: „modeSource"

Inherits all the classes and relations from the source <modeSource> (all, none or a different mode). "all" relates to the list from the model type (not the whole metamodel).   

no-modeling

The defined mode is not applicable for modeling and will not be shown in the menu entry "Modi" of the modeling component.

no-documentation

The defined mode is not applicable for creating a documentation.

Example: Model Type View

MODELTYPE "My First Model Type" from:none plural:"My First Model Types"
  pos:0 not-simulateable bitmap:"db:\\MyFirstModelType.bmp"
  attrrep:"Notebook of My First ModelType"
  INCL "My Class 1"
  INCL "My Class 2"
  INCL "My Class 3"
  INCL "has relationship 1"
  INCL "has relationship 2"
MODE "Standard" from:all
  EXCL "My Class 3"
  EXCL "has relationship 2"
MODE "Documentation" from:Standard no-modeling
  INCL "My Class 3"
  INCL "has relationship 2"
Average (0 Votes)
The average rating is 0.0 stars out of 5.

Scenarios

There are no results.

Development Tools