Description
Distinguish touching date spans from positive-length overlap.
Date labels and intervals depend on origins, endpoint inclusion and calendar versus elapsed-time conventions. Numeric serial periods and local token formats can represent useful bookkeeping without resolving a real instant or official fiscal rule.
Distinguish touching date spans from positive-length overlap.
When to use this tool
Use Date: Date Span Touching Boundary Flag when checking a supplied date-label, duration or interval convention.
How to use the tool and how it works
- Enter firstStart, firstEnd, secondStart, secondEnd. Use the units and conventions below.
- Run the tool. Correct any format, range, or cross-field input error before interpreting the output.
- Read result. Expand result to inspect the returned fields.
Distinguish touching date spans from positive-length overlap. Validate both date-only intervals with strict start < end; touching compares adjoining endpoints, overlap requires max(starts) < min(ends).1
| Input field | Meaning and units | Accepted input |
|---|---|---|
| firstStart | First Start | Required. Text. Real Gregorian YYYY-MM-DD; years 0001-9999 accepted. Implementation limit: 8192 Unicode code points and 16384 UTF-16 code units. |
| firstEnd | First End | Required. Text. Real Gregorian YYYY-MM-DD; years 0001-9999 accepted. Implementation limit: 8192 Unicode code points and 16384 UTF-16 code units. |
| secondStart | Second Start | Required. Text. Real Gregorian YYYY-MM-DD; years 0001-9999 accepted. Implementation limit: 8192 Unicode code points and 16384 UTF-16 code units. |
| secondEnd | Second End | Required. Text. Real Gregorian YYYY-MM-DD; years 0001-9999 accepted. Implementation limit: 8192 Unicode code points and 16384 UTF-16 code units. |
| Output field | Interpretation | Returned shape |
|---|---|---|
| result | Returned object; expand its named members below. | Required. Object. |
| result.touching | Touching | Calculated result member: boolean. |
| result.positiveLengthOverlap | Positive Length Overlap | Calculated result member: boolean. |
{
"input": {
"firstStart": "2024-01-01",
"firstEnd": "2024-01-03",
"secondStart": "2024-01-03",
"secondEnd": "2024-01-05"
},
"output": {
"result": {
"touching": true,
"positiveLengthOverlap": false
}
}
} Limitations and assumptions
- This uses elapsed half-open-style boundaries and does not count a shared endpoint as positive overlap.
- Outputs are nested inside result. Inputs must satisfy both the field types and the cross-field conditions above. Invalid input causes an error; a successful false flag or documented placeholder is a different result.
Alternative or Complementary methods
Use a complete date/time implementation and the applicable calendar policy for actual scheduling and interval interpretation.
References
Similar or alternative tools
- Date Range Unbounded End Token
Assemble a bounded or open date interval token.
- Date Interval Single Day Closure Label
Count civil days under a supplied endpoint convention.