This document presents a new object-oriented model for representing the Gregorian calendar. The model addresses limitations of current approaches by providing abstractions that better match the irregularities and realities of timekeeping. The key aspects of the model include representing time at different levels of granularity (year, month, date, time), defining recurrent time entities, modeling time measurements and calculations, representing time intervals and segments, and filtering timelines. The model aims to provide a domain language for expressing common time and date situations in a clear and unambiguous way. Future work areas include expanding support for time zones, measurements, and additional abstractions.