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.