edilint / rule reference

edifact / error

EL7003

edifact.segment-count

Applies to: edifact

What it catches and why it matters

UNT-1 does not match the recounted segments from UNH through UNT inclusive.

Failing example

These synthetic fragments illustrate the defect; they are not complete interchange files. Backslash escapes name bytes such as \r (CR) and \n (LF).

UNH+1+INVOIC:D:96A:UN'UNT+9+1'  (two segments, declared as nine)

How to fix it

After confirming message completeness, use edilint fix --write to recount UNT-1 from UNH through UNT inclusive. Released terminators do not end segments. Invalid service characters, incomplete envelopes, or ambiguous nesting prevent count edits.

False positives and limits

Malformed release sequences or missing terminators can affect the observed count. Resolve tokenizer and service-string findings before recounting.

Acknowledgments and suppression

Related acknowledgment codes (apply only to the described defect):
  CONTRL code 29 (UCM.0085): UNT-1 differs from the received segment count
  CONTRL code 13 (UCM.0085): UNT-1 is missing
  CONTRL code 37 (UCM.0085): UNT-1 contains letters where digits are required
CONTRL references use syntax-error element 0085, not action element 0083. UCI, UCF and UCM report interchange, group and message service-segment errors respectively. A missing or unreadable header can prevent a valid CONTRL response. Truncation, orphaned envelopes and data outside an interchange have no single mapping here.
Sources: https://service.gefeg.com/jwg1/Archive/v3/mt/m01.htm https://service.gefeg.com/jwg1/Archive/cl/v3/21a/cl16.htm
Suppress the rule with --disable EL7003, or list it under "disable" in .edilint.yml. To accept the occurrences a file already has without suppressing the rule, record them with --write-baseline and run with --baseline.
Reference: https://crb2nu.github.io/edilint/rules/EL7003.html

All rules · Configuration