HL7v2.Type.DDI (HL7v2 v3.10.1)

Copy Markdown View Source

Daily Deductible Information (DDI) -- HL7v2 composite data type.

Specifies the daily deductible parameters for insurance coverage.

3 components:

  1. Delay Days (NM) -- number of delay days before the deductible applies
  2. Monetary Amount (MO) -- daily deductible amount (sub-components: quantity & denomination)
  3. Number of Days (NM) -- number of days the deductible is in effect

Summary

Functions

Encodes a DDI to a list of component strings.

Parses a DDI from a list of components.

Types

t()

@type t() :: %HL7v2.Type.DDI{
  delay_days: HL7v2.Type.NM.t() | nil,
  monetary_amount: HL7v2.Type.MO.t() | nil,
  number_of_days: HL7v2.Type.NM.t() | nil
}

Functions

encode(ddi)

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

Encodes a DDI to a list of component strings.

Examples

iex> HL7v2.Type.DDI.encode(%HL7v2.Type.DDI{delay_days: %HL7v2.Type.NM{value: "3", original: "3"}, number_of_days: %HL7v2.Type.NM{value: "30", original: "30"}})
["3", "", "30"]

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

parse(components)

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

Parses a DDI from a list of components.

Examples

iex> HL7v2.Type.DDI.parse(["3", "100.00&USD", "30"])
%HL7v2.Type.DDI{
  delay_days: %HL7v2.Type.NM{value: "3", original: "3"},
  monetary_amount: %HL7v2.Type.MO{quantity: "100.00", denomination: "USD"},
  number_of_days: %HL7v2.Type.NM{value: "30", original: "30"}
}

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