edifact / error
EL7006
edifact.control-reference
Applies to: edifact
What it catches and why it matters
Header and trailer control references differ (UNB-5/UNZ-2, UNG-5/UNE-2, UNH-1/UNT-2), or a header's reference is empty.
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+2+2'
How to fix it
Match UNH-1/UNT-2, UNG-5/UNE-2, and UNB-5/UNZ-2 exactly. Fill empty header references from the source's control sequence.
False positives and limits
Numerically equal references with different leading zeros are warnings. A receiver may compare text exactly, so do not assume numeric equality is sufficient.
Acknowledgments and suppression
Related acknowledgment codes (apply only to the described defect): CONTRL code 28 (UCI.0085): UNB-5 and UNZ-2 differ CONTRL code 28 (UCF.0085): UNG-5 and UNE-2 differ CONTRL code 28 (UCM.0085): UNH-1 and UNT-2 differ CONTRL code 13 (UCI.0085): an interchange control reference is missing CONTRL code 13 (UCF.0085): a group control reference is missing CONTRL code 13 (UCM.0085): a message control reference is missing 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 EL7006, 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/EL7006.html