Calendar methodology
Every date is normalized, attributed, validated, and classified before it can enter the active calendar dataset.
Status and jurisdiction
Festival category and public-holiday status are stored separately. Status belongs to the event-jurisdiction relationship, so the same festival may be a public holiday in one state and an observance elsewhere.
School-holiday ranges
KPM breaks retain both their start and end dates. Calendar feeds use an exclusive DTEND as required by the iCalendar standard, while the website displays the inclusive human-readable range.
Authority and deduplication
BKPP wins when sources overlap on holiday status. Events sharing the same real-world occurrence are merged so selecting public holidays and festivals does not create duplicates.
Publication safety
Automated checks cover authority, structure, year, dates, jurisdictions, duplicate records, event-count anomalies, and destructive changes. A failed run leaves the last valid dataset active.
Names and calendar labels
Curated English, Malay, and Simplified Chinese names are preferred; an official Malay title is the fallback. Feed labels follow Public Holiday, then School Holiday, then Festival precedence.
Data use and source rights
The normalized calendar compilation is provided for personal calendar use. Copyright and reuse conditions for original source material remain with each cited publisher; follow the source links and their terms when reusing data.