HL7v2.Type.PRL (HL7v2 v3.10.1)

Copy Markdown View Source

Parent Result Link (PRL) -- HL7v2 composite data type.

Links a child observation to its parent observation result.

3 components:

  1. Parent Observation Identifier (CE) -- sub-components delimited by &
  2. Parent Observation Sub-Identifier (ST)
  3. Parent Observation Value Descriptor (TX)

Summary

Functions

Encodes a PRL to a list of component strings.

Parses a PRL from a list of components.

Types

t()

@type t() :: %HL7v2.Type.PRL{
  parent_observation_identifier: HL7v2.Type.CE.t() | nil,
  parent_observation_sub_identifier: binary() | nil,
  parent_observation_value_descriptor: binary() | nil
}

Functions

encode(prl)

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

Encodes a PRL to a list of component strings.

Examples

iex> HL7v2.Type.PRL.encode(%HL7v2.Type.PRL{parent_observation_identifier: %HL7v2.Type.CE{identifier: "85025", text: "CBC", name_of_coding_system: "CPT4"}, parent_observation_sub_identifier: "1"})
["85025&CBC&CPT4", "1"]

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

parse(components)

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

Parses a PRL from a list of components.

Examples

iex> HL7v2.Type.PRL.parse(["85025&CBC&CPT4", "1", "Hemoglobin"])
%HL7v2.Type.PRL{
  parent_observation_identifier: %HL7v2.Type.CE{identifier: "85025", text: "CBC", name_of_coding_system: "CPT4"},
  parent_observation_sub_identifier: "1",
  parent_observation_value_descriptor: "Hemoglobin"
}

iex> HL7v2.Type.PRL.parse(["85025&CBC&CPT4"])
%HL7v2.Type.PRL{parent_observation_identifier: %HL7v2.Type.CE{identifier: "85025", text: "CBC", name_of_coding_system: "CPT4"}}

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