# `HL7v2.Type.PRL`
[🔗](https://github.com/Balneario-de-Cofrentes/hl7v2/blob/v3.10.1/lib/hl7v2/type/prl.ex#L1)

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)

# `t`

```elixir
@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
}
```

# `encode`

```elixir
@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`

```elixir
@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{}

---

*Consult [api-reference.md](api-reference.md) for complete listing*
