Skip to main content
Unlisted page
This page is unlisted. Search engines will not index it, and only users having a direct link can access it.

TM Scenario Definition (v1, legacy)

Legacy schema

This schema is superseded and is documented only for backward compatibility. None of the bundled sample content uses it, and new scenarios should be authored against the current TM Scenario Definition schema.

The engine continues to accept this format, and the schema file is maintained until 2027-07-04 per ADR-0006 (tm_scenario_v2 schema and v1 dual support).

Schema for transaction monitoring scenario definitions

FieldValue
Schema IDhttps://github.com/ksuk/merlon/schemas/tm_scenario_v1.json
JSON Schema dialecthttps://json-schema.org/draft/2020-12/schema
Typeobject
Required top-level fieldsschema_version, id, name, version, conditions

Properties

NameTypeRequiredDescription
schema_versionconstYes
idstringYes
namestringYes
name_jastringNo
descriptionstringNo
versionintegerYes
is_samplebooleanNo
conditionsobjectYes
risk_tier_adjustmentsobjectNo
alert_severityenumNo
tagsarray of stringNo

schema_version

ConstraintValue
Const"tm_scenario_v1"

id

ConstraintValue
Pattern^[a-z][a-z0-9_]*$

version

ConstraintValue
Minimum1

alert_severity

ConstraintValue
Enum"low", "medium", "high", "critical"

Full schema

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://github.com/ksuk/merlon/schemas/tm_scenario_v1.json",
"title": "TM Scenario Definition",
"description": "Schema for transaction monitoring scenario definitions",
"type": "object",
"required": [
"schema_version",
"id",
"name",
"version",
"conditions"
],
"properties": {
"schema_version": {
"type": "string",
"const": "tm_scenario_v1"
},
"id": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]*$"
},
"name": {
"type": "string"
},
"name_ja": {
"type": "string"
},
"description": {
"type": "string"
},
"version": {
"type": "integer",
"minimum": 1
},
"is_sample": {
"type": "boolean"
},
"conditions": {
"type": "object"
},
"risk_tier_adjustments": {
"type": "object"
},
"alert_severity": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
]
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
}
}
}