HL7v2.Type.SI (HL7v2 v3.10.1)

Copy Markdown View Source

Sequence ID (SI) -- HL7v2 primitive data type.

Non-negative integer, range 0-9999. Used as sequential counter within repeating structures (e.g., Set ID fields).

Summary

Functions

Encodes a sequence ID integer to a string.

Parses a sequence ID string into an integer.

Functions

encode(value)

@spec encode(non_neg_integer() | binary() | nil) :: binary()

Encodes a sequence ID integer to a string.

Examples

iex> HL7v2.Type.SI.encode(1)
"1"

iex> HL7v2.Type.SI.encode(nil)
""

parse(value)

@spec parse(binary() | nil) :: non_neg_integer() | nil

Parses a sequence ID string into an integer.

Returns nil for empty/nil input. Only valid non-negative integers are accepted (range 0-9999).

Examples

iex> HL7v2.Type.SI.parse("1")
1

iex> HL7v2.Type.SI.parse("0")
0

iex> HL7v2.Type.SI.parse("9999")
9999

iex> HL7v2.Type.SI.parse("")
nil

iex> HL7v2.Type.SI.parse(nil)
nil