Data Specification
Temporal Data
Captures all time-related information about the incident.
TemporalData Interface
| Field | Type | Required | Description |
|---|---|---|---|
date | string | Yes | Event date (YYYY-MM-DD) |
dateCertainty | TemporalCertainty | Yes | Certainty of date |
time | string | No | Event time (HH:MM:SS) - local time |
timeCertainty | TemporalCertainty | No | Certainty of time |
timezone | string | No | IANA timezone (e.g., "America/New_York") |
utcTime | string | No | Event time in UTC |
durationSeconds | number | No | Duration of observation in seconds |
durationDescription | string | No | Duration description if exact seconds unknown |
timeOfDay | TimeOfDay | No | Time of day classification |
isDaylightSaving | boolean | No | Whether event occurred during DST |
moonPhase | number | No | Moon phase (0-1, where 0=new, 0.5=full) |
moonIllumination | number | No | Moon illumination percentage |
TypeScript Definition
interface TemporalData {
date: string; // YYYY-MM-DD format
dateCertainty: TemporalCertainty;
time?: string; // HH:MM:SS format
timeCertainty?: TemporalCertainty;
timezone?: string; // IANA timezone
utcTime?: string; // Event time in UTC
durationSeconds?: number; // Duration in seconds
durationDescription?: string; // "about 15 minutes"
timeOfDay?: TimeOfDay;
isDaylightSaving?: boolean;
moonPhase?: number; // 0-1 scale
moonIllumination?: number; // 0-100 percentage
}Enumerations
TemporalCertainty
Used for both date and time certainty.
| Value | Description |
|---|---|
exact | Confirmed by multiple sources or precise records |
approximate | Accurate within minutes/hours |
estimated | Rough estimate based on witness recollection |
unknown | Unable to determine |
TimeOfDay
| Value | Description |
|---|---|
astronomical_dawn | Sun 18° below horizon, rising |
nautical_dawn | Sun 12° below horizon, rising |
civil_dawn | Sun 6° below horizon, rising |
sunrise | Sun crossing horizon, rising |
morning | After sunrise, before noon |
noon | Solar noon |
afternoon | After noon, before sunset |
sunset | Sun crossing horizon, setting |
civil_dusk | Sun 6° below horizon, setting |
nautical_dusk | Sun 12° below horizon, setting |
astronomical_dusk | Sun 18° below horizon, setting |
night | Full darkness |
unknown | Time of day not known |
Example
{
"temporal": {
"date": "2024-03-15",
"dateCertainty": "exact",
"time": "21:45:00",
"timeCertainty": "approximate",
"timezone": "America/Los_Angeles",
"durationSeconds": 900,
"durationDescription": "approximately 15 minutes",
"timeOfDay": "night",
"moonPhase": 0.75,
"moonIllumination": 95
}
}Best Practices
- Always use ISO 8601 format for dates (YYYY-MM-DD)
- Include timezone when time is known
- Be honest about certainty - use
approximateorestimatedwhen exact values aren't available - Document duration even if approximate - helps with pattern analysis