Group split

A group split requires a different message definition than a transaction split. The group-defined message must define the transaction set as a repeating group surrounded by GS and GE. Standard X12 messages are transaction-defined. To use a group split, you must create a variant that surrounds the transaction set with GS and GE. Translation of a group-defined message always iterates over the transaction sets.

Required fields are encoded in user-defined metadata. This metadata is stored in the split messages. This user-defined metadata is in the form of a keyed list. It contains at least an ISA key with the list of ISA fields as the value.

For example:

ISA*00*     *00*      *ZZ*CONAME *ZZ*HDX      *000515*2347*U*00304*000000001*0*P*^~

This interchange would have minimum user-defined metadata and any other fields in the keyed list.

{{ISA {00 "" 00 "" ZZ CONAME ZZ HDX 000515 2347 U 00304 000000001 0 P ^}}}

Transaction ID determination uses this ISA metadata so it should be included. Store separator characters in the message metadata.

Note: A message must contain only one interchange. If it contains more interchanges, then an error results.

Group-defined messages use this structure:

GS
{
          ST
          . . .
          SE
}
GE

Transaction set messages use this form:

ST
. . .
SE