Dmn.Model.DecisionTable (dmn v0.1.0)

Copy Markdown View Source

A decisionTable (DMN 1.6, clause 8.3).

FieldIs
hit_policy:unique (the default), :first, :priority, :any, :collect, :rule_order, :output_order
aggregationfor :collect: :sum, :count, :min, :max, or nil for the list
inputsthe Dmn.Model.DecisionTable.Inputs
outputsthe Dmn.Model.DecisionTable.Outputs, one or more
annotationsthe names of the annotation columns, which are not part of the logic
rulesthe Dmn.Model.DecisionTable.Rules, in order (the order is the meaning for :first and :rule_order)
output_labelthe label of the output, usually the name of the decision

Summary

Types

hit_policy()

@type hit_policy() ::
  :unique | :first | :priority | :any | :collect | :rule_order | :output_order

t()

@type t() :: %Dmn.Model.DecisionTable{
  aggregation: :sum | :count | :min | :max | nil,
  annotations: [String.t()],
  hit_policy: hit_policy(),
  id: String.t() | nil,
  inputs: [Dmn.Model.DecisionTable.Input.t()],
  label: String.t() | nil,
  line: pos_integer() | nil,
  output_label: String.t() | nil,
  outputs: [Dmn.Model.DecisionTable.Output.t()],
  preferred_orientation: String.t(),
  rules: [Dmn.Model.DecisionTable.Rule.t()],
  type_ref: String.t() | nil
}