Schema - Classes

The Classes category in the Schema section of Project Explorer enables you to view the classes defined in your schema (the metadata for your project). If the project is in schema mode, you can create and modify class definitions. If the project is in database mode, the class information will be displayed in read-only mode allowing you to review the schema. This provides a handy reference to the System Definition Language (SDL) with easy access to all schema descriptions to better understand the intended usage.

 

Classes

The classes pane lists all defined classes in a hierarchical format. Classes follow a classic object model of inheritance - for example, any attributes and relations defined for the DocumentationElement class will be inherited by all of its subclasses that are listed under the class in the Browser pane. The subclasses for the DocumentationElement class include Category, DefinedTerm, Document, ExternalFile, Note, Package, and Text.

 

     

NOTE:

There may be class names shown in the list that you are unfamiliar with. Schema objects can be aliased, allowing your project team to leverage the base metadata definitions while overlaying your specific terminology. For example, if your team or domain favors "Activity" over "Function," you can assign the alias so that all database views, diagrams, and reports use this term without negatively impacting your project in any way.

 

Also, some of the classes - such as EngineeringElement are marked as abstract in the property sheet. These classes define common attributes or relations in the inheritance model but are conceptual only. You cannot create entities in abstract classes.

Properties

The property sheet shows the properties for the selected class as well as the defined attributes and associated relations. The properties include:

 

    • Name - the unique identifier of the selected class. By convention, names are shown in title case with no spaces, but there are no formal restrictions on the name.
    • Abbreviation - a short representation of the class.
    • Alias - a project-specific public label to use in place of the formal name. The alias allows you to tailor the presentation of the language without affecting scripts or data interchange.
    • Class Stereotype - a project-specific public label to use on SysML views. Often times, SysML representations have specific nomenclatures, and using the corresponding SysML terminology improves understandability.
    • Description - basic overview of the class with intended usage. All classes must have a description. This makes the schema self-documenting which is an aid to all project team members.
    • Node Fill Color - default color to be used for the background when displaying this class - or entities in this class - on diagrams. The color can be overridden by individual entities or customized on specific diagrams.
    • Node Text Color - default color to be used for text when displaying this class - or entities in this class - on diagrams. The color can be overridden by individual entities or customized on specific diagrams.
    • Node Line Color - default color to be used for lines when displaying this class - or entities in this class - on diagrams. The color can be overridden by individual entities or customized on specific diagrams.
    • Node Image - the image to be used for nodes when displaying this class - or entities in the class - on diagrams. Use the Insert Image command to select an image to use.
    • History - optional description of the evolution of the class definition. This is a perfect place to capture rationale for the schema.
    • Created - name of the user, date and time the class was created. This property is set when the class is created and cannot be modified.
    • Modified - name of the user, date and time any change was last made to this class.

    • Abstract - a flag indicating whether or not entities can be created in this class. Abstract classes are defined for schema inheritance purposes only and cannot instantiate entities.

    • Essential - a flag indicating whether or not this class is required by GENESYS. Essential classes cannot be renamed or deleted.

Attributes

The attribute pane lists all applicable attribute definitions for the selected class in alphabetical order. To clearly denote which attributes are inherited and which attributes are defined specifically for the selected class, inherited attributes have an asterisk and attributes defined at this class level do not have an asterisk.

 

Double-clicking on an attribute opens the Properties dialog so that you can define the attribute. 

Parameters

The parameter pane lists all applicable parameter definitions for the selected class in alphabetical order. Parameters are not inherited and therefore require no asterisk to highlight those parameters defined on a superclass.

 

Double-clicking on a parameter opens the Parameter dialog so that you can define the parameter.

Relations

The relations pane lists all applicable relation definitions (with any target definitions indented below them). Like the attribute list, inherited relations and target classes are marked with an asterisk. Relations and target classes defined at this class level do not have an asterisk.

 

Double-clicking on a relation opens the Target Classes dialog enabling you to edit the associated target classes.

Class Commands

In the Class browser

In the Attributes pane

In the Parameters pane

In the Relations pane

Drag-Drop Relationship Targets

Tips and Tricks