Skip to content

isValidEdifactDatePeriod

  • Container free time, demurrage, billing deadlines, bill of lading dates and EDI timestamps.
isValidEdifactDatePeriod(value: string, format: "718"): boolean

Return true when value is a UN/EDIFACT DTM value (data element 2380) that states a period between two real calendar dates, in a date period format code (data element 2379).

  • CodeMaskThe directory’s description
    718CCYYMMDD-CCYYMMDD“A period of time specified by giving the start date followed by the end date (both including century). Data is to be transmitted as consecutive characters without hyphen.”
  • True exactly when parseEdifactDatePeriod returns a period for the same arguments: the validator calls the parser, so the two cannot disagree.

  • A period is valid in its wire form only, with no hyphen: "20240615-20240620" is false.

  • A period whose end precedes its start is false; an end equal to its start is true.

  • Checks the calendar as well as the shape: 29 February 2023 in either date is false.

  • False for any other code, a code of another kind included; check a code alone with isValidEdifactDtmFormat. False for a non-string argument.

ParameterTypeDescription
valuestringThe data element 2380 value (e.g. “2024061520240620”)
format"718"The data element 2379 format code

boolean indicating validity

import { isValidEdifactDatePeriod } from "@northguild/gmt/intermodal/validate";
isValidEdifactDatePeriod("2024061520240620", "718") // true
output 

intermodal/validate/isValidEdifactDatePeriod.ts