preloader
Manual
Basic Notions

The Jjodel Object Model (JjOM) is a structured framework that represents various modeling components, including models, metamodels, and visual representations (viewpoints). This section introduces fundamental concepts that are essential to understanding and working with Jjodel.

Models and Metamodels

In Jjodel, a model is a structured representation of real-world or abstract concepts, defined according to a metamodel. Metamodels serve as templates or “models of models,” defining the types, attributes, relationships, and constraints that models must adhere to. A metamodel specifies the structural rules for creating valid model instances.

For example, if a model represents a class diagram, its metamodel defines what constitutes a “class,” “attribute,” “operation,” and how these elements interrelate. In Jjodel, models and metamodels coexist within the JjOM and are accessible through the same interface.

The Jjodel Viewpoint System

Jjodel provides a viewpoint system that allows users to define different visual representations of models. A viewpoint specifies how model elements appear in the graphical editor, including shapes, colors, and connections between elements. This enables users to customize views based on different contexts or perspectives without altering the underlying model structure.

Viewpoints are configurable via the View Editor and can include options for layout, visual decorators, and interaction events. Each viewpoint has its associated rules, which determine the appearance and behavior of model elements in that particular view.

Components of the Jjodel Object Model

Jjodel operates on a few foundational elements within its object model:

  • – Elements: The building blocks of models, which can include classes, attributes, associations, and other objects relevant to the model’s domain.
  • – Nodes: Visual representations of elements in the diagram. Nodes are responsible for the display and layout of elements in a graphical form.
  • – Edges: Represent relationships or connections between nodes. Edges can have specific styles, bending modes, and offsets to define their appearance in the diagram.
  • – View Properties: Each view in Jjodel can be customized by adjusting properties such as layout constraints, edge connection types, and appearance settings. This includes configuring attributes like color, size, and position for both nodes and edges.
Constraints and Expressions

Jjodel enables users to enforce constraints and define behavior through OCL (Object Constraint Language) and JSX expressions. OCL constraints help validate model consistency by defining rules that model elements must comply with. JSX expressions allow for custom interaction and appearance logic, providing a dynamic way to control the presentation of model elements based on their properties.

Interaction and Event Handling

Jjodel supports various event-driven interactions, enabling users to define custom behaviors on actions such as dragging, resizing, and data updates. Events are configurable through the Events Panel, allowing modelers to set specific actions or constraints based on user interactions.

Working with the Jjodel API

The Jjodel API provides programmatic access to all elements in the Jjodel Object Model, making it possible to retrieve, modify, and analyze model elements, their attributes, relationships, and layout properties. This API is crucial for extending Jjodel’s functionality and automating repetitive modeling tasks. It also enables integration with external tools and custom logic for complex modeling needs.

Leave a Reply

Your email address will not be published. Required fields are marked *