HL7v2.Type.MSG (HL7v2 v3.10.1)

Copy Markdown View Source

Message Type (MSG) -- HL7v2 composite data type.

Used in MSH-9 to identify the message type, trigger event, and structure.

3 components:

  1. Message Code (ID) -- Table 0076: ADT, ORM, ORU, ACK, etc.
  2. Trigger Event (ID) -- Table 0003: A01, O01, R01, etc.
  3. Message Structure (ID) -- Table 0354: ADT_A01, ORM_O01, etc.

Summary

Functions

Encodes a MSG to a list of component strings.

Parses a MSG from a list of components.

Types

t()

@type t() :: %HL7v2.Type.MSG{
  message_code: binary() | nil,
  message_structure: binary() | nil,
  trigger_event: binary() | nil
}

Functions

encode(msg)

@spec encode(t() | nil) :: list()

Encodes a MSG to a list of component strings.

Examples

iex> HL7v2.Type.MSG.encode(%HL7v2.Type.MSG{message_code: "ADT", trigger_event: "A01", message_structure: "ADT_A01"})
["ADT", "A01", "ADT_A01"]

iex> HL7v2.Type.MSG.encode(%HL7v2.Type.MSG{message_code: "ADT", trigger_event: "A01"})
["ADT", "A01"]

iex> HL7v2.Type.MSG.encode(nil)
[]

parse(components)

@spec parse(list()) :: t()

Parses a MSG from a list of components.

Examples

iex> HL7v2.Type.MSG.parse(["ADT", "A01", "ADT_A01"])
%HL7v2.Type.MSG{message_code: "ADT", trigger_event: "A01", message_structure: "ADT_A01"}

iex> HL7v2.Type.MSG.parse(["ADT", "A01"])
%HL7v2.Type.MSG{message_code: "ADT", trigger_event: "A01"}

iex> HL7v2.Type.MSG.parse([])
%HL7v2.Type.MSG{}