From RuleParserSettings.schema.yaml (cleo/RuleParserSettings.schema
)
---
$id: https://skeleton.botmd.io/cleo/RuleParserSettings.schema
$schema: http://json-schema.org/draft-07/schema#
title: Rule Parser Settings
description: Settings for configuring alert rule parsers.
type: object
additionalProperties: false
required: []
properties:
simple:
title: Simple
description: Triggers alerts when parameters are not in an inclusive min-max range or `equals` to a given value. The settings for `Simple` parser is an array of parameter and min/max/equal values which are `OR`-ed together.
$ref: "#/definitions/simple"
#end simple
minmax:
title: MinMax
description: This is equivalent to Simple rule parser. It exists for backward compatibility.
$ref: "#/definitions/simple"
#end minmax
missing:
title: Missing Submission
description: Triggers alers when submissions are not made a certain time period after being reminded.
$ref: "#/definitions/missing"
#end missing
#end properties
definitions:
simple:
type: array
items:
type: object
additionalProperties: false
required: [clinical_parameter]
properties:
clinical_parameter:
title: Clinical Parameter
description: This is one of clinical parameter `uid` or `name` or `name (group_name)`.
type: string
minLength: 1
min:
title: Minimum value
description: Parameter should be greater (or equal, depending on `inclusive_min`) to this value.
type: number
inclusive_min:
title: Inclusive Minimum
description: If `inclusive_min` is true, then `value ≤ min` will trigger an alert. Defaults to `false`.
type: boolean
max:
title: Maximum value
description: Parameter should be lesser (or equal, depending on `inclusive_max`) to this value.
type: number
inclusive_max:
title: Inclusive Maximum
description: If `inclusive_max` is true, then `value ≥ max` will trigger an alert. Defaults to `false`.
type: boolean
equals:
title: Equals
description: When the parameter contains or equal to this value.
type: object
additionalProperties: false
required: [value]
properties:
value:
title: Value
description: Value to match the parameter. Can be `number` or `string`.
type: [string, number]
case_sensitive:
title: Case Sensitive
description: Whether to perform case sensitive compare for string parameter values. Defaults to `false`.
type: boolean
#end properties
is_empty:
title: Is Empty
description: Whether to trigger an alert when the value is empty; applies to `string` and `string_array` only.
type: boolean
is_not_empty:
title: Is Not Empty
description: Whether to trigger an alert when the value is not empty; applies to `string` and `string_array` only.
type: boolean
reason:
title: Reason
description: This reason is returned when parameter is alertable. Defaults to `{sv.parameter.name_with_group} is too low/too high/equals ${value}`.
type: string
#end properties
#end items
#end simple
missing:
type: object
additionalProperties: true
required: [after_seconds]
properties:
after_seconds:
title: After Seconds
description: Number of seconds after reminder event without submission which we will trigger an alert.
type: integer
minimum: 0
#end properties
#end missing
#end properties