GESMES — EDIFACT Generic Statistical Message (D.97A)
The GESMES message is the generic carrier of statistical series between statistical offices, central banks and international bodies (ECB, Eurostat, BIS, IMF): it transports structured time-series with their dimensions, codes and values, without presupposing any business domain — a cross-domain vehicle that preceded SDMX. This page summarises the segment structure as published by UN/CEFACT for directory D.97A.
Purpose
The GESMES message is the generic carrier of statistical series between statistical offices, central banks and international bodies (ECB, Eurostat, BIS, IMF): it transports structured time-series with their dimensions, codes and values, without presupposing any business domain — a cross-domain vehicle that preceded SDMX.
This page focuses on the structure published by UN/CEFACT for directory D.97A. The segments listed, their status (M / C), position and repetition factor are extracted from the official file gesmes_s.htm hosted on service.unece.org.
Segment structure
The GESMES D.97A message has 77 header entries, 0 detail entries and 0 summary entries (segments and groups combined). Groups are shown in bold and their members are indented by actual nesting depth.
Header
| Pos. | Tag | Name | S | Rep. |
|---|---|---|---|---|
0010 | UNH | Message header | M | 1 |
0020 | BGM | Beginning of message | C | 1 |
0030 | DTM | Date/time/period | C | ×9 |
0040 | SG1 | Group (×9999) | C | ×9999 |
0050 | FNT | Footnote | M | 1 |
0060 | FTX | Free text | C | ×9999 |
0070 | SG2 | Group (×9) | C | ×9 |
0080 | NAD | Name and address | M | 1 |
0090 | IDE | Identity | C | 1 |
0100 | SG3 | Group (×5) | C | ×5 |
0110 | CTA | Contact information | M | 1 |
0120 | COM | Communication contact | C | ×5 |
0130 | SG4 | Group (×99) | C | ×99 |
0140 | VLI | Value list identification | M | 1 |
0150 | DTM | Date/time/period | C | ×9999 |
0160 | FTX | Free text | C | ×9999 |
0170 | IDE | Identity | C | ×9 |
0180 | SG5 | Group (×5) | C | ×5 |
0190 | GIR | Related identification numbers | M | 1 |
0200 | DTM | Date/time/period | C | ×2 |
0210 | SG6 | Group (×9999) | C | ×9999 |
0220 | CDV | Code value definition | M | 1 |
0230 | FTX | Free text | C | ×999 |
0240 | IDE | Identity | C | ×5 |
0250 | SG7 | Group (×999) | C | ×999 |
0260 | STC | Statistical concept | M | 1 |
0270 | FTX | Free text | C | ×5 |
0280 | IDE | Identity | C | ×5 |
0290 | SG8 | Group (×9999) | C | ×9999 |
0300 | ASI | Array structure identification | M | 1 |
0310 | GIS | General indicator | C | ×5 |
0320 | FTX | Free text | C | ×9 |
0330 | IDE | Identity | C | ×5 |
0340 | SG9 | Group (×999) | C | ×999 |
0350 | SCD | Structure component definition | M | 1 |
0360 | ATT | Attribute | C | ×99 |
0370 | SG10 | Group (×9999) | C | ×9999 |
0380 | IDE | Identity | M | 1 |
0390 | ATT | Attribute | C | ×99 |
0400 | DTM | Date/time/period | C | ×2 |
0410 | SG11 | Group (×999) | C | ×999 |
0420 | DSI | Data set identification | M | 1 |
0430 | STS | Status | C | ×9 |
0440 | DTM | Date/time/period | C | ×5 |
0450 | FTX | Free text | C | ×5 |
0460 | GIR | Related identification numbers | C | ×2 |
0470 | ARR | Array information | C | ×9999 |
0480 | SG12 | Group (×99) | C | ×99 |
0490 | IDE | Identity | M | 1 |
0500 | GIS | General indicator | C | ×5 |
0510 | DTM | Date/time/period | C | ×5 |
0520 | SG13 | Group (×999) | C | ×999 |
0530 | CDV | Code value definition | M | 1 |
0540 | FTX | Free text | C | ×99 |
0550 | SG14 | Group (×999) | C | ×999 |
0560 | SCD | Structure component definition | M | 1 |
0570 | ATT | Attribute | C | ×9 |
0580 | DTM | Date/time/period | C | ×9999 |
0590 | SG15 | Group (×9999) | C | ×9999 |
0600 | CDV | Code value definition | M | 1 |
0610 | FTX | Free text | C | ×99 |
0620 | SG16 | Group (×5) | C | ×5 |
0630 | NAD | Name and address | M | 1 |
0640 | IDE | Identity | C | 1 |
0650 | SG17 | Group (×5) | C | ×5 |
0660 | CTA | Contact information | M | 1 |
0670 | COM | Communication contact | C | ×5 |
0680 | SG18 | Group (×5) | C | ×5 |
0690 | FNS | Footnote set | M | 1 |
0700 | SG19 | Group (×9999) | C | ×9999 |
0710 | REL | Relationship | M | 1 |
0720 | ARR | Array information | C | 1 |
0730 | IDE | Identity | C | ×99 |
0740 | SG20 | Group (×9999) | C | ×9999 |
0750 | FNT | Footnote | M | 1 |
0760 | FTX | Free text | C | ×9999 |
0770 | UNT | Message trailer | M | 1 |
Detail
No segment in this section.
Summary
No segment in this section.
Changes vs D.96A
Top-level differences between D.96A and D.97A for the GESMES message (segments directly inside header / detail / summary, ignoring nested groups). The comparison is indicative: a given tag may have evolved inside nested groups without showing up in this synthesis.
No top-level differences detected between D.96A and D.97A for this message. Differences are then limited to nested groups and code lists.
Structural example
Minimal example of an GESMES D.97A message with mandatory segments only. The goal is to show the exact version declared in UNH (GESMES:D:97A:UN) — not to replicate a full business case (see the GESMES D.96A page for an annotated example).
UNB+UNOC:3+5410000000123:14+5410000000456:14+260514:1430+CTRL097001'
UNH+1+GESMES:D:97A:UN'
BGM+14+GESMES-2026-Q1-FR+9'
DTM+137:20260514:102'
DTM+9:20260331:102'
BUS++17'
RFF+SRS:EUROSTAT-DS-2026-CPI'
UNT+7+1'
UNZ+1+CTRL097001' Common errors
- Misaligned UNH tokens — The
UNH+...+GESMES:D:97A:UNtoken must reflect exactly the directory in use — a mismatch between the UNH release and the release agreed with the partner is rejected by every strict validator. - Wrong UNT segment count — The value after
UNT+must include UNH and UNT themselves. By far the most common sender-side error, regardless of the directory in use. - Stale code lists — Between D.96A and D.97A, several code lists received new qualifiers (DTM status, RFF qualifier, NAD codes…). Reusing an older directory’s code tables triggers warnings or even rejections depending on the partner’s strict-conformance mode.
Related messages
Other versions of this message available on ediverse.io: GESMES D.96A, GESMES D.01B, GESMES D.10A, GESMES D.16B, GESMES D.21B, GESMES D.24A, GESMES D.99B, GESMES D.00B, GESMES D.02B, GESMES D.05A, GESMES D.08A, GESMES D.13B, GESMES D.18B, GESMES D.20B.