Tabular views contain columns used to represent specific information about the exposed elements. See the information on this page to learn about table columns before you start modeling them.

Columns in tabular view definitions and usages

Tabular views and their definitions can differ in the table columns they contain:

Column kinds

Currently, there are 2 model-based table column kinds available for modeling. The columns you create for a tabular view usage or definition must be defined by one of these column definitions, depending on the column's purpose. The table below lists:

  • Column kinds and their descriptions.
  • Relevant information regarding cell type according to column kind.
    • The cell type enables correct data representation and correct cell value type (e.g., String, Boolean, etc.) suggestions upon cell editing.
  • Predefined attributes applicable to each column kind.
ColumnDescriptionCellsColumn attributes
ColumnByFeatureView

Dedicated to simple metadata feature value retrieval. It requires the expression to return only 1 metadata feature, like Element::declaredName or FeatureValue::value. The expression is specified for the feature columnFeature.

See procedure >>

  • For ColumnByFeatureView, the cell type is calculated out of the metadata feature and does not need to be specified explicitly.
  • The String, Element, Enum, Integer, Boolean, and Real cell values can be edited in the table view's diagrammatic representation for ColumnByFeatureView column cells. Learn more >>
  • isMultiline. It allows you to specify whether single-valued string cells should be displayed in a multiline format.
    The default value is false.
    See procedure >>

ColumnByExpressionView

Dedicated to complex metadata feature value retrieval. For example, when the value of the owned attribute needs to be retrieved, the feature chain expression is needed to access this information.

See procedure >>

  • For ColumnByExpressionView, the cell type is specified by defining the cell rendering with the appropriate rendering definition. It works as a kind of filter for the type of wanted expression results.
    See procedure >>

The editing of ColumnByExpressionView cells is not yet supported in the table view's diagrammatic representation.

rendering def BooleanCellRendering :> TableCellRendering;
rendering def ElementCellRendering :> TableCellRendering;
rendering def EnumCellRendering :> TableCellRendering;
rendering def IntegerCellRendering :> TableCellRendering;  rendering def MetaobjectCellRendering :> TableCellRendering;
rendering def RealCellRendering :> TableCellRendering;
rendering def StringCellRendering :> TableCellRendering;

rendering def TableCellRendering {
   calc getValue { in rowElement [0..1] : Metaobjects::Metaobject; }
   attribute isMultiValued [0..1] : ScalarValues::Boolean; 
}


  • isMultiline. It allows you to specify whether single-valued string cells should be displayed in a multiline format.
    The default value is false.
    See procedure >>