Glossary
A reference of key terms and concepts used throughout the CrossModel Knowledge Base.
AI Assistants
The team of AI agents built into CrossModel. Universal is the entry point and routes your request to a specialist: LogicalDesigner (plans and designs a model), LogicalModeler (creates and changes model files, and runs code generation) and Templater (writes code generation templates). See Use the AI assistants.
Allowed Values
An optional list of permitted values declared on a custom property definition. When present, instances of that property are restricted to the list through a dropdown, and a value outside it produces a warning. The list is inherited through the extends chain, where the nearest non-empty list wins.
Attribute
A property or characteristic of an entity. For example, a Customer entity might have attributes such as CustomerName, Email, and DateOfBirth. Each attribute has a name, description, and data type.
Cardinality
Defines how many instances of one entity can be associated with instances of another entity through a relationship. Common cardinalities include one-to-one, one-to-many, and many-to-many.
Code Generation
The process of transforming a logical data model into executable code using customizable templates. CrossModel supports code generation with standard templating engines and provides a live preview feature.
Code Generation Preview
A feature that allows you to see the generated code output while designing templates. This makes it easier to create and refine templates by providing immediate feedback based on the current model.
Conceptual Data Model
A data model whose Type is Conceptual. It records what the business means - the things it cares about and how they relate - without saying anything about how the data is stored. Its attributes carry no data types, lengths or identifiers, because those are logical decisions. Stored in .ccm files, and linked to the logical tier through realizes. See Conceptual Modeling.
Custom Property
A user-defined property attached to a model object, carrying information CrossModel's built-in metamodel does not cover - a data owner or a classification, for example. Its shape and constraints come from a custom property definition.
Custom Property Definition
A type definition that describes a reusable custom property: its data type and that type's parameters (length, precision, scale, or the unit of a Duration), whether it is mandatory, a default value, and optionally its allowed values.
Data Lineage
The tracking of data transformation paths - showing where data originates (source), how it is transformed, and where it ends up (target). In CrossModel, data lineage is modeled through mappings.
Data Model
A structured representation of data within CrossModel. A data model is a container that holds diagrams, entities with attributes, relationships, and mappings.
Data Model Type
Whether a data model is Conceptual or Logical. The choice determines which objects you can create in it, which fields their forms carry, and the file extension used. See conceptual data model.
Data Type
Defines the kind of value an attribute or custom property can hold. CrossModel offers Text, Binary, Integer, Decimal, Float, Duration, Date, Time, DateTime, Boolean, UUID, Geometry and Geography. Note that text is Text, not String.
Some data types take extra parameters that describe the value further: Length for Text and Binary, Precision for Decimal and Float, Scale for Decimal, Time and DateTime, and Unit for Duration. The form greys out the ones that do not apply. Values are also checked against the type, so a malformed date or UUID is reported in the Problems panel. See Type Definitions.
Dependency
A link between data models indicating that one model references elements from another. Dependencies allow you to organize models into separate systems while maintaining connections between them.
Diagram
A visual representation of a data model, showing entities, attributes, and relationships on a canvas. Diagrams are views of the underlying model - changes made in a diagram are reflected in the model and vice versa.
Display Label
What CrossModel shows for a model element: either its human-readable name or its technical id. Controlled by the Display: Labels setting, which affects forms, grids, diagrams and the Model Explorer but never changes the model itself.
External Entity
An entity shown on a diagram that belongs to a different data model than the diagram itself. CrossModel marks such nodes with a small badge in the bottom-left corner.
Entity
A model element representing a real-world object or concept, such as Customer, Product, or SalesOrder. Entities contain attributes and can participate in relationships and inheritance hierarchies.
Expression
Logic used within a mapping to transform data. Expressions can perform calculations, string operations, date manipulations, and more. Attributes in expressions are referenced using double-bracket notation: {{ObjectName.AttributeName}}.
Identifier
A set of one or more attributes that uniquely identify an instance of an entity. An identifier marked as primary serves as the entity's primary key. Identifiers can be composite, consisting of multiple attributes.
Inheritance
A mechanism to create new entities based on existing ones, enabling reuse of attributes and relationships. The parent entity is called the supertype and the child entity is called the subtype. Subtypes inherit all attributes from their supertype and can add additional attributes of their own.
Join Condition
A condition that defines how two source objects in a mapping are related to each other. Join conditions are used when a mapping has multiple sources that need to be combined.
Mapping
Defines how data from one or more source objects is transformed and loaded into a target object. Mappings establish data lineage and can include expressions for data transformation and join conditions for combining multiple sources.
Model Explorer
The tree in the Explorer panel that presents a workspace as model objects rather than as files: data models, entities expanding into their attributes and identifiers, all labelled by name. Sits alongside the File Explorer, which shows the underlying files. See The Model Explorer.
Object Definition
A type definition for one of the core metamodel concepts - Entity, Attribute, Relationship, Identifier or DataModel. Assigning one to a model object pulls in its attributes, custom properties and code generation templates.
Property Template
A rule on an object definition that derives a name or description for any object typed by it, using {{...}} placeholders resolved against that object. Distinct from the code generation templates on the same definition, which produce files rather than field values. See Extending the Metamodel with Type Definitions.
Realizes
The link from a logical object to the conceptual one it implements. Set on the logical entity or attribute, pointing at its conceptual counterpart, so one concept can be realized by many logical objects across different systems. Requires a dependency on the conceptual model.
Relationship
A connection between two entities that describes how they are associated. For example, a Customer entity may have a relationship to a SalesOrder entity. Relationships have a defined cardinality and can include relationship attributes.
Reverse Engineering
The process of generating a data model from existing artifacts such as SQL DDL files, documentation, or images. In CrossModel, reverse engineering is performed using the AI assistants, specifically the DataModeler agent.
Routing Point
A fixed position a relationship line must pass through on a diagram, created by dragging the handle at the line's midpoint. Routing points override CrossModel's automatic edge routing and are saved with the diagram, so the layout is shared rather than per-user.
Session
A running instance of a workspace - the CrossModel application itself. Sessions are started and stopped from the workspace overview; stopping one does not affect the models stored in the workspace.
Source Object
The original data structure from which data is extracted in a mapping. A source object is typically an entity from a source data model.
Source Object Dependency
A declaration on a source object that it depends on another source object in the same mapping. A dependency may reference an existing relationship, in which case CrossModel derives the join conditions from the relationship's attribute pairs instead of you writing them by hand.
Subtype
See Inheritance.
Supertype
See Inheritance.
Type Definition
A user-defined extension of CrossModel's metamodel that describes a kind of model object, so you can attach extra properties and capture house standards. Comes in six kinds - see Object Definition and Custom Property Definition, and the Type Definitions tutorial.
Target Object
The data structure into which transformed data is loaded in a mapping. A target object is typically an entity in a target data model, such as a data warehouse model.
Workspace
A top-level container in CrossModel that holds one or more data models. Each workspace provides an isolated environment for modeling and persists whether or not it is running - see Session. Users can create multiple workspaces to organize work across different projects or features.