Skip to content

Core Concepts

Understanding the foundational concepts of Modality.

Data Modeling Layers

Modality supports three modeling layers:

1. Conceptual Layer

  • Purpose: Business view of data
  • Components: Domains, Entities, Relationships
  • Format: MML domain blocks
  • Audience: Business stakeholders, analysts

2. Logical Layer

  • Purpose: System implementation view
  • Components: Sources, Mappings, Transformations
  • Format: MML source and mapping blocks
  • Audience: Data engineers, architects

3. Data Products

  • Purpose: Consumption layer
  • Components: Reports, Metrics, Dashboards
  • Format: MML product blocks
  • Audience: End users, consumers

Key Terminology

Domain : A logical grouping of related entities (e.g., Sales, Marketing, Platform)

Entity : A business object being modeled (e.g., Customer, Order, Product)

Entity Types : - Dimension: Reference data (Customer, Product) : - Fact: Transactional data (Order, Event) : - Metric: Calculated KPIs (Revenue, Active Users) : - Derivation: Derived tables (Customer 360, Product Catalog)

Relationship : Connection between entities (belongs-to, derived-from, contains)

Source : External system providing data (Database, API, File)

Data Product : Curated data asset with defined consumers and SLAs

Model Lifecycle

  1. Design - Create conceptual model
  2. Map - Connect to source systems
  3. Build - Implement transformations
  4. Publish - Create data products
  5. Version - Track changes in Git

Best Practices

  • Start simple: Begin with core entities
  • Use domains: Group related entities logically
  • Be explicit: Document relationships clearly
  • Version everything: Commit changes regularly
  • Review changes: Use pull requests for collaboration

Next Steps

Released under the MIT License.