State Modeling
State Modeling represents the changing state of a business entity over valid-time intervals.
Business entities change over time, but reports need the correct state at a specific date.
Many business entities do not just have one current value. Their status, attributes or relationships change over time.
A customer changes segment. A contract changes status. A product changes category. State Modeling captures these changes as valid intervals so reports can answer what was true at a reporting date.
Contract C1 has different states for different valid-time periods.
A report for May should show the contract as Active. A report for August should show it as Cancelled.
Current values are not enough for historical reporting.
Operational systems often optimize for the latest state. Historical reporting needs previous states as well, with clear start and end boundaries.
Once users ask “what was true on this date?”, the model needs explicit valid-time intervals.
Store one row per entity state version.
Validate that point-in-time state resolution is unambiguous.
State Modeling is the foundation for most historical reporting models.
Without explicit state intervals, downstream reports often fall back to current values and lose historical correctness.
Once state is modeled correctly, it can be joined, completed, conformed and validated across the rest of the historical model.
Validate state intervals in the Workbench.
Use the Historical Modeling Workbench to reason about valid-time gaps, overlaps, point-in-time joins and historical state resolution.
Open Historical Modeling Workbench →