{
  "decisionTable": {
    "id": "signal",
    "description": "Each matching row adds to the risk score and says why.",
    "hitPolicy": "collect",
    "inputs": [
      { "field": "Customer.AccountAgeDays", "operator": "LessThan" },
      { "field": "Order.Total", "operator": "GreaterThan" },
      { "field": "Order.GiftCards", "operator": "GreaterThan" },
      { "field": "Customer.EmailVerified", "operator": "Equals" },
      { "field": "Order.ShipTo", "operator": "In" }
    ],
    "outputs": [
      { "target": "Score", "type": "addToOutput" },
      { "target": "Signals", "type": "appendToOutput" }
    ],
    "rows": [
      { "when": [7, null, null, null, null], "then": [30, "account under a week old"] },
      { "when": [null, 1000, null, null, null], "then": [25, "order over 1,000"] },
      { "when": [null, null, 0, null, null], "then": [20, "gift cards in the basket"] },
      { "when": [null, null, null, false, null], "then": [15, "email not verified"] },
      {
        "when": [ null, null, null, null, ["freight-forwarder", "po-box"] ],
        "then": [20, "hard-to-trace delivery address"]
      }
    ]
  }
}
