{
"$comment": "The normative diagnostic code table (spec 1.0 \u00a715.2, extended by 1.1 \u00a711.2). The single source: the engine embeds it, the validator, conformance corpus and documentation all read it. Codes are stable API: a meaning never changes and a retired code is never reused. Each code names the version whose rules it reports (`since`) and the revision of the table that allocated it (`revision`); `revision` at the top is the table's own, the latest any code names (1.0 \u00a715.2).",
"revision": 2,
"codes": [
{
"code": "E001",
"severity": "error",
"domain": "container",
"summary": "missing or empty `medh5_version`, or the file or an object a check must read cannot be read",
"since": "1.0",
"revision": 1
},
{
"code": "E002",
"severity": "error",
"domain": "container",
"summary": "unsupported major version",
"since": "1.0",
"revision": 1
},
{
"code": "E003",
"severity": "error",
"domain": "container",
"summary": "identifier does not match its syntax: [A-Za-z0-9_.-]{1,128} and not `meta`, or [A-Za-z0-9_.-]{1,255} for a collection's sample key",
"since": "1.0",
"revision": 1
},
{
"code": "E004",
"severity": "error",
"domain": "container",
"summary": "`meta` is absent, is not a dataset holding one string, or is not valid UTF-8 JSON",
"since": "1.0",
"revision": 1
},
{
"code": "E005",
"severity": "error",
"domain": "container",
"summary": "`meta` fails the sample-document JSON Schema",
"since": "1.0",
"revision": 1
},
{
"code": "E006",
"severity": "error",
"domain": "container",
"summary": "missing or unknown `medh5_kind`",
"since": "1.0",
"revision": 1
},
{
"code": "E007",
"severity": "error",
"domain": "container",
"summary": "missing `medh5_profiles`, or an unknown profile",
"since": "1.0",
"revision": 1
},
{
"code": "E008",
"severity": "error",
"domain": "container",
"summary": "a group required by the layout is absent (`grids`, `images`, a collection's `samples`), a group the layout defines is not a group, or a collection holds no sample root",
"since": "1.0",
"revision": 1
},
{
"code": "E009",
"severity": "error",
"domain": "container",
"summary": "declared profile's requirements are not met",
"since": "1.0",
"revision": 1
},
{
"code": "E010",
"severity": "error",
"domain": "container",
"summary": "sample root in a `collection` lacks its own `content_id`",
"since": "1.0",
"revision": 1
},
{
"code": "E011",
"severity": "error",
"domain": "container",
"summary": "a collection's `medh5_version` is lower than a member's",
"since": "1.1",
"revision": 1
},
{
"code": "E101",
"severity": "error",
"domain": "geometry",
"summary": "referenced grid does not exist",
"since": "1.0",
"revision": 1
},
{
"code": "E102",
"severity": "error",
"domain": "geometry",
"summary": "`direction` is not orthonormal to 1e-4",
"since": "1.0",
"revision": 1
},
{
"code": "E103",
"severity": "error",
"domain": "geometry",
"summary": "spatial axes are not contiguous and trailing",
"since": "1.0",
"revision": 1
},
{
"code": "E104",
"severity": "error",
"domain": "geometry",
"summary": "`spacing` is not finite and strictly positive",
"since": "1.0",
"revision": 1
},
{
"code": "E105",
"severity": "error",
"domain": "geometry",
"summary": "a multiscale image's levels are malformed (`levels`, `grid_levels` or `downsample_factors` missing or inconsistent, a level dataset missing), or a level's geometry is inconsistent with level 0",
"since": "1.0",
"revision": 1
},
{
"code": "E106",
"severity": "error",
"domain": "geometry",
"summary": "grid has no `timepoint` in a multi-timepoint sample",
"since": "1.0",
"revision": 1
},
{
"code": "E107",
"severity": "error",
"domain": "geometry",
"summary": "grid `timepoint` names an undeclared timepoint",
"since": "1.0",
"revision": 1
},
{
"code": "E108",
"severity": "error",
"domain": "geometry",
"summary": "`timepoints` is empty, an `id` repeats, or `index` is not dense/increasing",
"since": "1.0",
"revision": 1
},
{
"code": "E109",
"severity": "error",
"domain": "geometry",
"summary": "a grid is not a group, or a grid attribute is missing where required, malformed or the wrong size (including a non-positive or uncountable `shape`, a non-finite `origin` and a non-positive `chunk_hint`), or `units`/`time_units` is outside its vocabulary",
"since": "1.0",
"revision": 1
},
{
"code": "E110",
"severity": "error",
"domain": "geometry",
"summary": "`axis_kinds` is invalid for the declared dimensionality",
"since": "1.0",
"revision": 1
},
{
"code": "E111",
"severity": "error",
"domain": "geometry",
"summary": "`grids` contains no grid",
"since": "1.0",
"revision": 1
},
{
"code": "E201",
"severity": "error",
"domain": "images",
"summary": "`images` contains no image",
"since": "1.0",
"revision": 1
},
{
"code": "E202",
"severity": "error",
"domain": "images",
"summary": "image shape does not equal its grid's `shape`",
"since": "1.0",
"revision": 1
},
{
"code": "E203",
"severity": "error",
"domain": "images",
"summary": "unknown `value_type`",
"since": "1.0",
"revision": 1
},
{
"code": "E204",
"severity": "error",
"domain": "images",
"summary": "`channel_names` length does not match the channel extent",
"since": "1.0",
"revision": 1
},
{
"code": "E205",
"severity": "error",
"domain": "images",
"summary": "required image attribute is missing",
"since": "1.0",
"revision": 1
},
{
"code": "E301",
"severity": "error",
"domain": "labels",
"summary": "a declared profile requires a label set and none is present",
"since": "1.0",
"revision": 1
},
{
"code": "E302",
"severity": "error",
"domain": "labels",
"summary": "duplicate class id or key in the label set",
"since": "1.0",
"revision": 1
},
{
"code": "E303",
"severity": "error",
"domain": "labels",
"summary": "a reserved class id (0 or 65535) was assigned to a class",
"since": "1.0",
"revision": 1
},
{
"code": "E304",
"severity": "error",
"domain": "labels",
"summary": "the class hierarchy contains a cycle",
"since": "1.0",
"revision": 1
},
{
"code": "E305",
"severity": "error",
"domain": "labels",
"summary": "`form: ref` label set lacks `uri`/`sha256`, or is unresolvable",
"since": "1.0",
"revision": 1
},
{
"code": "E306",
"severity": "error",
"domain": "labels",
"summary": "a class entry is missing a required field, has an id out of range or names an unknown parent, or a relation names a class the label set does not hold",
"since": "1.0",
"revision": 1
},
{
"code": "E401",
"severity": "error",
"domain": "annotations",
"summary": "unknown annotation `kind`",
"since": "1.0",
"revision": 1
},
{
"code": "E402",
"severity": "error",
"domain": "annotations",
"summary": "class id is not present in the label set",
"since": "1.0",
"revision": 1
},
{
"code": "E403",
"severity": "error",
"domain": "annotations",
"summary": "`annotated_class_ids` is not a subset of `class_ids`",
"since": "1.0",
"revision": 1
},
{
"code": "E404",
"severity": "error",
"domain": "annotations",
"summary": "encoding invariant violated",
"since": "1.0",
"revision": 1
},
{
"code": "E405",
"severity": "error",
"domain": "annotations",
"summary": "dataset shape is inconsistent with the grid or with the annotation's other datasets, or mesh `faces` index outside its `vertices`",
"since": "1.0",
"revision": 1
},
{
"code": "E406",
"severity": "error",
"domain": "annotations",
"summary": "box `lo` exceeds `hi`, or a box bound is not finite",
"since": "1.0",
"revision": 1
},
{
"code": "E407",
"severity": "error",
"domain": "annotations",
"summary": "`rotations` is not a proper rotation matrix",
"since": "1.0",
"revision": 1
},
{
"code": "E408",
"severity": "error",
"domain": "annotations",
"summary": "offsets decrease or do not delimit their data: an `instances` object's span in `mask_data` is not its packed crop's size or runs past its end, or contour or mesh offsets do not end at the number of vertices or faces they index",
"since": "1.0",
"revision": 1
},
{
"code": "E409",
"severity": "error",
"domain": "annotations",
"summary": "`timepoints` references an undeclared timepoint",
"since": "1.0",
"revision": 1
},
{
"code": "E410",
"severity": "error",
"domain": "annotations",
"summary": "a dataset required by the annotation `kind` is absent",
"since": "1.0",
"revision": 1
},
{
"code": "E411",
"severity": "error",
"domain": "annotations",
"summary": "dataset dtype is not permitted for the annotation `kind`, or a stored value is not one it permits (a `probmap` value outside [0, 1], a keypoint `visibility` other than 0, 1 or 2)",
"since": "1.0",
"revision": 1
},
{
"code": "E412",
"severity": "error",
"domain": "annotations",
"summary": "required annotation attribute is missing, or `task`, `closure`, `space` or `scope` holds an unknown value",
"since": "1.0",
"revision": 1
},
{
"code": "E413",
"severity": "error",
"domain": "annotations",
"summary": "a reference does not resolve, or an ignore or validity mask is not a `mask` on the same grid",
"since": "1.0",
"revision": 1
},
{
"code": "E414",
"severity": "error",
"domain": "annotations",
"summary": "`space` is invalid for the annotation's grid or frame",
"since": "1.0",
"revision": 1
},
{
"code": "E501",
"severity": "error",
"domain": "transforms",
"summary": "composite frame chain is broken",
"since": "1.0",
"revision": 1
},
{
"code": "E502",
"severity": "error",
"domain": "transforms",
"summary": "transform `kind` is missing or unknown, or a transform lacks the frames or parameters its kind requires, maps a frame to itself, or names an unknown `vector_space`",
"since": "1.0",
"revision": 1
},
{
"code": "E503",
"severity": "error",
"domain": "transforms",
"summary": "a displacement field or B-spline control points do not fit their grid: `field_grid`/`cp_grid` is missing or not in `from_frame`, a `field` is not `(S, *spatial)` on its grid, or `control_points` are not `(S, *cp_shape)` on the grid's spatial axes with at least `order + 1` points on each",
"since": "1.0",
"revision": 1
},
{
"code": "E504",
"severity": "error",
"domain": "transforms",
"summary": "affine `matrix` is not `(S+1, S+1)` for the S spatial axes of the grids it relates, holds an entry that is not finite, or its last row is not [0 \u2026 0 1]",
"since": "1.0",
"revision": 1
},
{
"code": "E505",
"severity": "error",
"domain": "transforms",
"summary": "`inverse_id` is not mutually consistent",
"since": "1.0",
"revision": 1
},
{
"code": "E506",
"severity": "error",
"domain": "transforms",
"summary": "`units` missing, or not the units of the grids in its frames",
"since": "1.0",
"revision": 1
},
{
"code": "E601",
"severity": "error",
"domain": "curation",
"summary": "`prov` names an activity that does not exist",
"since": "1.0",
"revision": 1
},
{
"code": "E602",
"severity": "error",
"domain": "curation",
"summary": "`quality` names a record that does not exist",
"since": "1.0",
"revision": 1
},
{
"code": "E603",
"severity": "error",
"domain": "curation",
"summary": "unknown agent or activity type",
"since": "1.0",
"revision": 1
},
{
"code": "E604",
"severity": "error",
"domain": "curation",
"summary": "timestamp is not RFC 3339",
"since": "1.0",
"revision": 1
},
{
"code": "E605",
"severity": "error",
"domain": "curation",
"summary": "activity names an agent that does not exist",
"since": "1.0",
"revision": 1
},
{
"code": "E701",
"severity": "error",
"domain": "integrity",
"summary": "object digest does not match its content",
"since": "1.0",
"revision": 1
},
{
"code": "E702",
"severity": "error",
"domain": "integrity",
"summary": "`content_id` does not match the file, or a dataset carries a `digest` that no line of `content_id` covers",
"since": "1.0",
"revision": 1
},
{
"code": "E703",
"severity": "error",
"domain": "integrity",
"summary": "malformed digest string",
"since": "1.0",
"revision": 1
},
{
"code": "E704",
"severity": "error",
"domain": "integrity",
"summary": "an object `content_id` covers is reached at a path that is not its own",
"since": "1.0",
"revision": 1
},
{
"code": "E801",
"severity": "error",
"domain": "clinical",
"summary": "`clinical/meta` is absent, not a scalar UTF-8 string, not JSON, or not canonical JSON",
"since": "1.1",
"revision": 1
},
{
"code": "E802",
"severity": "error",
"domain": "clinical",
"summary": "`clinical/meta` fails the clinical descriptor schema or its clock rules",
"since": "1.1",
"revision": 1
},
{
"code": "E803",
"severity": "error",
"domain": "clinical",
"summary": "clinical content is present but the `clinical` profile is not declared",
"since": "1.1",
"revision": 1
},
{
"code": "E804",
"severity": "error",
"domain": "clinical",
"summary": "a required clinical table or column is absent, or a member is not one the profile defines",
"since": "1.1",
"revision": 1
},
{
"code": "E805",
"severity": "error",
"domain": "clinical",
"summary": "a clinical column has the wrong dtype, rank or row count",
"since": "1.1",
"revision": 1
},
{
"code": "E806",
"severity": "error",
"domain": "clinical",
"summary": "a packed UTF-8 column's offsets are malformed or a cell is not valid UTF-8",
"since": "1.1",
"revision": 1
},
{
"code": "E807",
"severity": "error",
"domain": "clinical",
"summary": "a validity mask is malformed or misplaced, or a null cell holds a value",
"since": "1.1",
"revision": 1
},
{
"code": "E808",
"severity": "error",
"domain": "clinical",
"summary": "a valid floating-point clinical value is NaN or infinite",
"since": "1.1",
"revision": 1
},
{
"code": "E809",
"severity": "error",
"domain": "clinical",
"summary": "a clinical identifier is empty, malformed or not unique",
"since": "1.1",
"revision": 1
},
{
"code": "E810",
"severity": "error",
"domain": "clinical",
"summary": "an enumerated clinical value is outside its vocabulary",
"since": "1.1",
"revision": 1
},
{
"code": "E811",
"severity": "error",
"domain": "clinical",
"summary": "event time bounds are incomplete, inverted or inconsistent with `temporal_type`",
"since": "1.1",
"revision": 1
},
{
"code": "E812",
"severity": "error",
"domain": "clinical",
"summary": "event value, code, comparator, unit or missing-reason fields are inconsistent",
"since": "1.1",
"revision": 1
},
{
"code": "E813",
"severity": "error",
"domain": "clinical",
"summary": "a clinical reference does not resolve within the sample",
"since": "1.1",
"revision": 1
},
{
"code": "E814",
"severity": "error",
"domain": "clinical",
"summary": "a link's text span, instance annotation or imaging timepoint constraint is violated",
"since": "1.1",
"revision": 1
},
{
"code": "E815",
"severity": "error",
"domain": "clinical",
"summary": "a document is not owned by exactly one `document` event, or a `document` event owns more than one",
"since": "1.1",
"revision": 1
},
{
"code": "E816",
"severity": "error",
"domain": "clinical",
"summary": "a revision chain is broken, branching, cyclic or contradicted by availability",
"since": "1.1",
"revision": 1
},
{
"code": "E817",
"severity": "error",
"domain": "clinical",
"summary": "a lesion assessment lacks its timepoint, its instance link or a permitted value",
"since": "1.1",
"revision": 1
},
{
"code": "E818",
"severity": "error",
"domain": "clinical",
"summary": "a dataset under `clinical/` carries no `digest`",
"since": "1.1",
"revision": 1
},
{
"code": "E819",
"severity": "error",
"domain": "clinical",
"summary": "a clinical object carries an attribute the profile does not define",
"since": "1.1",
"revision": 1
},
{
"code": "W901",
"severity": "warning",
"domain": "integrity",
"summary": "no object digests are present",
"since": "1.0",
"revision": 1
},
{
"code": "W902",
"severity": "warning",
"domain": "container",
"summary": "bulk dataset is unchunked or uncompressed",
"since": "1.0",
"revision": 1
},
{
"code": "W903",
"severity": "warning",
"domain": "curation",
"summary": "no `deidentification` record",
"since": "1.0",
"revision": 1
},
{
"code": "W904",
"severity": "warning",
"domain": "annotations",
"summary": "partial coverage without an ignore region",
"since": "1.0",
"revision": 1
},
{
"code": "W905",
"severity": "warning",
"domain": "integrity",
"summary": "`index/` entry is stale for its source annotation",
"since": "1.0",
"revision": 1
},
{
"code": "W906",
"severity": "warning",
"domain": "curation",
"summary": "conflicting split claims for one `set_id`",
"since": "1.0",
"revision": 1
},
{
"code": "W907",
"severity": "warning",
"domain": "images",
"summary": "float storage where int16 + rescale would be lossless",
"since": "1.0",
"revision": 1
},
{
"code": "W908",
"severity": "warning",
"domain": "annotations",
"summary": "`layers` count is far from the greedy-colouring optimum",
"since": "1.0",
"revision": 1
},
{
"code": "W909",
"severity": "warning",
"domain": "annotations",
"summary": "one `instance_id` carries two different class ids",
"since": "1.0",
"revision": 1
},
{
"code": "W910",
"severity": "warning",
"domain": "geometry",
"summary": "grids in different timepoints share a `frame_uid`",
"since": "1.0",
"revision": 1
},
{
"code": "W911",
"severity": "warning",
"domain": "geometry",
"summary": "multi-timepoint sample has no transform relating timepoints",
"since": "1.0",
"revision": 1
},
{
"code": "W912",
"severity": "warning",
"domain": "labels",
"summary": "class id used by an annotation has no ontology binding",
"since": "1.0",
"revision": 1
},
{
"code": "W913",
"severity": "warning",
"domain": "container",
"summary": "a higher minor version: only the supported projection was validated, or an unsupported item was ignored",
"since": "1.1",
"revision": 1
},
{
"code": "W914",
"severity": "warning",
"domain": "clinical",
"summary": "a numeric clinical value carries no unit",
"since": "1.1",
"revision": 1
},
{
"code": "W915",
"severity": "warning",
"domain": "integrity",
"summary": "a dataset inside an object `content_id` covers carries no `digest`",
"since": "1.0",
"revision": 2
},
{
"code": "W916",
"severity": "warning",
"domain": "annotations",
"summary": "under `implicit` closure, a class asserted absent where an `is_a` descendant is asserted present",
"since": "1.0",
"revision": 2
},
{
"code": "W917",
"severity": "warning",
"domain": "geometry",
"summary": "two grids name one `frame_uid` but differ in dimensionality or `coord_system`",
"since": "1.0",
"revision": 2
},
{
"code": "W918",
"severity": "warning",
"domain": "annotations",
"summary": "a voxel annotation declares `closure = \"implicit\"`",
"since": "1.0",
"revision": 2
},
{
"code": "W919",
"severity": "warning",
"domain": "annotations",
"summary": "a contour's `contour_role` disagrees with its depth among its class's polygons in its plane",
"since": "1.0",
"revision": 2
}
]
}