Docs / Schemas / regression / 0.6.0
Regression 0.6.0
Represent continuous numerical predictions. Supports point estimates, confidence intervals, and time-series forecasting.
This is an older version of regression.
The latest version is 0.8.0. Releases before 0.7.0 use the $id https:/ and are served by DorsalHub.
$idhttps:// dorsalhub.com/ schemas/ open/ regression - Latest
https:// oatschema.org/ regression - Versions
- Source
- v0.6.0 on GitHub
Schema
{ "x-license": { "id": "Apache-2.0", "notice": "Copyright 2025-2026 Dorsal Hub LTD", "url": "https://github.com/dorsalhub/open-validation-schemas/blob/main/LICENSE" }, "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://dorsalhub.com/schemas/open/regression", "title": "Regression", "version": "0.6.0", "description": "Represent continuous numerical predictions. Supports point estimates, confidence intervals, and time-series forecasting.", "type": "object", "properties": { "target": { "type": "string", "description": "The name of or a reference to the variable being predicted (e.g., 'temperature', 'stock_price').", "maxLength": 256 }, "unit": { "type": "string", "description": "The unit of measurement.", "maxLength": 128 }, "producer": { "type": "string", "description": "The creator (model, tool or author) of this regression.", "maxLength": 1024 }, "score_explanation": { "type": "string", "description": "Explanation of the score metric and its semantics (e.g. 'R-squared' or 'Model Confidence').", "maxLength": 256 }, "points": { "type": "array", "description": "The regression data points. A single item represents a point estimate; multiple items represent a time series or distribution.", "maxItems": 10000, "items": { "type": "object", "description": "A single predicted value.", "properties": { "value": { "description": "The predicted or sampled value. Null represents a missing value, such as a gap in a time series.", "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "statistic": { "type": "string", "description": "The statistical nature of this value.", "enum": [ "mean", "median", "mode", "min", "max", "quantile", "sample" ] }, "quantile_level": { "type": "number", "description": "The quantile level (e.g., 0.95). Required when statistic is 'quantile', and only allowed then.", "minimum": 0, "maximum": 1 }, "timestamp": { "type": "string", "format": "date-time", "maxLength": 128, "description": "The specific time this prediction applies to." }, "interval_lower": { "type": "number", "description": "The lower bound of the confidence interval." }, "interval_upper": { "type": "number", "description": "The upper bound of the confidence interval. Must not be less than interval_lower." }, "score": { "type": "number", "description": "A normalized score for this point (-1.0 to 1.0). Depending on the metric, this may be a probability (0 to 1) or a bipolar metric such as R-squared clipped to [-1, 1]. Use score_explanation to clarify.", "minimum": -1, "maximum": 1 }, "attributes": { "type": "object", "description": "Arbitrary metadata relevant to this point.", "maxProperties": 16, "propertyNames": { "maxLength": 128 }, "additionalProperties": { "anyOf": [ { "type": "string", "maxLength": 1024 }, { "type": "number" }, { "type": "boolean" }, { "type": "null" } ] } } }, "required": [ "value" ], "allOf": [ { "if": { "properties": { "statistic": { "const": "quantile" } }, "required": [ "statistic" ] }, "then": { "required": [ "quantile_level" ] } }, { "if": { "required": [ "quantile_level" ] }, "then": { "properties": { "statistic": { "const": "quantile" } }, "required": [ "statistic" ] } } ], "additionalProperties": false } }, "attributes": { "type": "object", "description": "Arbitrary metadata relevant to this regression.", "maxProperties": 16, "propertyNames": { "maxLength": 128 }, "additionalProperties": { "anyOf": [ { "type": "string", "maxLength": 1024 }, { "type": "number" }, { "type": "boolean" }, { "type": "null" } ] } } }, "required": [ "points" ], "allOf": [ { "if": { "properties": { "points": { "maxItems": 0 } }, "required": [ "points" ] }, "then": { "required": [ "producer" ] } } ], "additionalProperties": false}
Examples
Records that pass validation against this schema.
regression-2
{ "target": "daily_rainfall", "unit": "mm", "producer": "forecast-model-v4", "score_explanation": "R-squared on the validation set, clipped to [-1, 1].", "points": [ { "timestamp": "2026-05-01T00:00:00Z", "statistic": "median", "value": 2.4, "score": 0.81 }, { "timestamp": "2026-05-01T00:00:00Z", "statistic": "quantile", "quantile_level": 0.9, "value": 6.1 }, { "timestamp": "2026-05-02T00:00:00Z", "statistic": "median", "value": null }, { "timestamp": "2026-05-03T00:00:00Z", "statistic": "median", "value": 0.0, "score": -0.12 } ]}
regression-1
{ "target": "temperature", "unit": "celsius", "producer": "WeatherForecaster-v2.1", "score_explanation": "Probability of observation falling within the interval.", "attributes": { "region": "London, UK", "model_version": 2.1, "deployment_id": "dep_88a9s8d" }, "points": [ { "value": 15.5, "timestamp": "2025-10-12T12:00:00Z", "statistic": "mean", "interval_lower": 14.8, "interval_upper": 16.2, "score": 0.98 }, { "value": 18.2, "timestamp": "2025-10-12T12:00:00Z", "statistic": "max", "attributes": { "description": "Peak heat spike", "is_anomaly": true } }, { "value": null, "timestamp": "2025-10-12T13:00:00Z", "attributes": { "status": "sensor_offline" } }, { "value": 14.0, "timestamp": "2025-10-12T14:00:00Z", "quantile_level": 0.5, "statistic": "quantile" } ]}
Fields
-
targetstringThe name of or a reference to the variable being predicted (e.g., 'temperature', 'stock_price').
- at most 256 characters
-
unitstringThe unit of measurement.
- at most 128 characters
-
producerstringThe creator (model, tool or author) of this regression.
- at most 1024 characters
-
score_explanationstringExplanation of the score metric and its semantics (e.g. 'R-squared' or 'Model Confidence').
- at most 256 characters
-
pointsarray of object requiredThe regression data points. A single item represents a point estimate; multiple items represent a time series or distribution.
Each item: A single predicted value.
- at most 10000 items
-
valuenumber | null requiredThe predicted or sampled value. Null represents a missing value, such as a gap in a time series.
-
statisticstringThe statistical nature of this value.
Allowed values:
"mean","median","mode","min","max","quantile","sample" -
quantile_levelnumberThe quantile level (e.g., 0.95). Required when statistic is 'quantile', and only allowed then.
- 0 to 1
-
timestampstringThe specific time this prediction applies to.
- at most 128 characters
- format
date-time
-
interval_lowernumberThe lower bound of the confidence interval.
-
interval_uppernumberThe upper bound of the confidence interval. Must not be less than interval_lower.
-
scorenumberA normalized score for this point (-1.0 to 1.0). Depending on the metric, this may be a probability (0 to 1) or a bipolar metric such as R-squared clipped to [-1, 1]. Use score_explanation to clarify.
- -1 to 1
-
attributesobjectArbitrary metadata relevant to this point.
- at most 16 properties
- keys at most 128 characters
-
*string | number | boolean | nullAny other key.
- string: at most 1024 characters
Rules:
-
When
statisticis"quantile",quantile_levelis required.Show the JSON Schema
{ "if": { "properties": { "statistic": { "const": "quantile" } }, "required": [ "statistic" ] }, "then": { "required": [ "quantile_level" ] }} -
When the condition below holds, further limits apply.
Show the JSON Schema
{ "if": { "required": [ "quantile_level" ] }, "then": { "properties": { "statistic": { "const": "quantile" } }, "required": [ "statistic" ] }}
-
attributesobjectArbitrary metadata relevant to this regression.
- at most 16 properties
- keys at most 128 characters
-
*string | number | boolean | nullAny other key.
- string: at most 1024 characters
Rules:
-
When
pointsis empty,produceris required.Show the JSON Schema
{ "if": { "properties": { "points": { "maxItems": 0 } }, "required": [ "points" ] }, "then": { "required": [ "producer" ] }}
Copyright 2025-2026 Dorsal Hub LTD. Licensed under Apache-2.0.