Skip to content

Delimiters

Delimiters duplicates, as publicly-accessible constants, the same three X12 delimiter characters that are otherwise exposed only as protected instance fields on EdiRecordBase. It exists so code outside an EdiRecordBase-derived type — such as EdiSegment.ToString() and EdiRecordBuilder, which are not themselves EdiRecordBase subclasses — can reference the delimiter characters without needing an EdiRecordBase-derived instance.*

Purpose

  • Provides const char access to the segment, data-element, and composite delimiters for callers that build or parse X12 text outside the EdiRecordBase inheritance chain.
  • Keeps the delimiter literals (~, *, :) defined in exactly one place alongside the EdiRecordBase protected fields, so both call paths agree on the same characters.

Context

  • Namespace: SAIF.Common.Files.Edi
  • Assembly/package: SAIF.Framework.Common.Files

Public members

Member Signature Purpose
Segment public const char Segment = '~' The tilde character used to terminate/separate X12 segments; used by EdiSegment.ToString() to append the segment terminator.
DataElement public const char DataElement = '*' The asterisk character used to separate X12 data elements within a segment; used by EdiRecordBuilder when building and trimming element text.
Composite public const char Composite = ':' The colon character used to separate sub-elements within a composite X12 data element (BR-019); used by EdiRecordBuilder.BuildCompositeDataElementValue (BR-026).

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

Sources

  • Common\SAIF.Common.Files\Edi\enums.cs