dataset: datasource/database/schema/customer_transactions filter: "transaction_date >= CURRENT_DATE - INTERVAL '1 month'" variables: MAX_TRANSACTION_AMOUNT: default: 10000 checks: - schema: allow_extra_columns: false allow_other_column_order: false - row_count: threshold: must_be_greater_than: 0 - failed_rows: expression: amount <= ${var.MAX_TRANSACTION_AMOUNT} name: Transactions exceeding maximum allowed - duplicate: columns: ['transaction_id', 'transaction_date'] - freshness: column: transaction_date threshold: unit: day must_be_less_than: 30 columns: - name: transaction_id data_type: varchar checks: - missing: - duplicate: - name: customer_id data_type: varchar checks: - missing: - name: transaction_date data_type: timestamp checks: - missing: - name: amount data_type: decimal checks: - missing: - invalid: valid_min: 0 valid_max: ${var.MAX_TRANSACTION_AMOUNT} - name: currency data_type: varchar checks: - invalid: valid_values: ['USD', 'EUR', 'GBP', 'JPY']