{
  "specVersion": "0.1.0",
  "validator": "tools/validate.py, jsonschema Draft202012Validator with FORMAT_CHECKER and the Level 1 cross-field rules",
  "generatedBy": "tools/build_validation_report.py",
  "results": {
    "AbsenceEpisode": {
      "chronology-boundary.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "chronology.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C1] <root>: endDate '2020-01-01' precedes startDate '2026-03-02'"
        ]
      },
      "dates.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 2,
        "errors": [
          "[format] endDate: '2026-13-45' is not a 'date'",
          "[format] startDate: 'banana' is not a 'date'"
        ]
      },
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 4,
        "errors": [
          "[additionalProperties] <root>: Additional properties are not allowed ('name' was unexpected)",
          "[required] <root>: 'sourceProvenance' is a required property",
          "[pattern] pseudonymId: 'EMP-Jane-Smith' does not match '^owhs:pseudo:[0-9a-f]{16,64}$'",
          "[enum] reasonCode: 'back-pain' is not one of ['minor-illness', 'musculoskeletal', 'mental-health', 'respiratory', 'gastrointestinal', 'other']"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "OHEpisode": {
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 3,
        "errors": [
          "[additionalProperties] <root>: Additional properties are not allowed ('clinicalCauseCode', 'diagnosis' were unexpected)",
          "[not] <root>: {'ohEpisodeId': 'oh-BAD', 'pseudonymId': 'owhs:pseudo:a1b2c3d4e5f60718', 'referralReason': 'long-term-absence', 'referralDate': '2026-03-05', 'fitnessOpinion': 'unfit', 'opinionReleasedToEmployer': False, 'diagnosis': 'Major depressive disorder', 'clinicalCauseCode': '370143000'} should not be valid under {'anyOf': [{'required': ['diagnosis']}, {'required': ['clinicalCauseCode']}, {'required': ['symptoms']}, {'required': ['testResults']}, {'required': ['reportText']}, {'required': ['history']}]}",
          "[const] opinionReleasedToEmployer: True was expected"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "ReturnToWorkOutcome": {
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[not] <root>: {'outcomeId': 'rtw-BAD', 'absenceEpisodeId': 'abs-2026-000123', 'pseudonymId': 'owhs:pseudo:a1b2c3d4e5f60718', 'outcomeType': 'did-not-return', 'adjustmentTypes': ['phased-return']} should not be valid under {'required': ['adjustmentTypes']}"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    }
  },
  "results_v0_2": {
    "AbsenceEpisode": {
      "ext-identifier-nested.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 2,
        "errors": [
          "[anyOf] ext/owhs-example/notes: [{'email': 'x@y.example'}] is not valid under any of the given schemas",
          "[profile] ext/owhs-example: profile semantics not checked"
        ]
      },
      "ext-namespace.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 2,
        "errors": [
          "[pattern] ext: 'Example' does not match '^owhs-[a-z][a-z0-9]*(?:-[a-z0-9]+)*$'",
          "[profile] ext/Example: profile semantics not checked"
        ]
      },
      "ext-namespace.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 1,
        "errors": [
          "[profile] ext/owhs-example: profile semantics not checked"
        ]
      },
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 4,
        "errors": [
          "[additionalProperties] <root>: Additional properties are not allowed ('name' was unexpected)",
          "[required] <root>: 'sourceProvenance' is a required property",
          "[pattern] pseudonymId: 'EMP-Jane-Smith' does not match '^owhs:pseudo:[0-9a-f]{16,64}$'",
          "[enum] reasonCode: 'back-pain' is not one of ['minor-illness', 'musculoskeletal', 'other', 'mental-health', 'gastrointestinal', 'respiratory', 'eye-ear-nose-mouth-dental', 'genito-urinary', 'heart-blood-pressure-circulation', 'headaches-migraines', 'prefers-not-to-give-details']"
        ]
      },
      "new-reason.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "non-disclosure.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "unknown-reason.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[enum] reasonCode: 'unknown' is not one of ['minor-illness', 'musculoskeletal', 'other', 'mental-health', 'gastrointestinal', 'respiratory', 'eye-ear-nose-mouth-dental', 'genito-urinary', 'heart-blood-pressure-circulation', 'headaches-migraines', 'prefers-not-to-give-details']"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "AggregateReport": {
      "benchmark-scalar.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[type] benchmarkRef: 'bench-uk-2026' is not of type 'object'"
        ]
      },
      "n-above-eligible.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 2,
        "errors": [
          "[maximum] completionRate: 1.25 is greater than the maximum of 1",
          "[C7] <root>: n 25 <= eligibleN 20 <= headcount 40 does not hold"
        ]
      },
      "n4-unsuppressed.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[const] suppressed: True was expected"
        ]
      },
      "observations-below-n.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C8] <root>: observationCount 9 is below n 12"
        ]
      },
      "org-level-with-unit.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[not] <root>: {'reportId': 'rep-1', 'orgId': 'org-demo', 'level': 'org', 'unitId': 'unit-ops', 'periodStart': '2026-07-01', 'periodEnd': '2026-09-30', 'n': 12, 'observationCount': 30, 'headcount': 40, 'eligibleN': 20, 'completionRate': 0.6, 'metricCode': 'energy-mean', 'measureKind': 'observation', 'releaseCategory': 'ordinary', 'value': 71.5, 'interval': {'low': 65.0, 'high': 78.0, 'level': 0.95, 'method': 'bootstrap percentile'}, 'suppressed': False, 'contextId': 'ctx-2026q3', 'benchmarkRef': {'benchmarkId': 'bench-uk-2026', 'releaseVersion': '2026.1', 'sourceRef': 'https://example.org/benchmarks/2026.1'}} should not be valid under {'required': ['unitId']}"
        ]
      },
      "period-reversed.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C3] <root>: periodEnd '2026-09-30' precedes periodStart '2026-10-01'"
        ]
      },
      "rate-wrong.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C9] <root>: completionRate 0.15 is not n/eligibleN = 0.6"
        ]
      },
      "safeguarding-n100-unsuppressed.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[const] suppressed: True was expected"
        ]
      },
      "severe-n10.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "severe-n9-unsuppressed.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[const] suppressed: True was expected"
        ]
      },
      "suppressed-below-floor.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "suppressed-with-value.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[not] <root>: {'reportId': 'rep-1', 'orgId': 'org-demo', 'level': 'unit', 'unitId': 'unit-ops', 'periodStart': '2026-07-01', 'periodEnd': '2026-09-30', 'n': 12, 'observationCount': 30, 'headcount': 40, 'eligibleN': 20, 'completionRate': 0.6, 'metricCode': 'energy-mean', 'measureKind': 'observation', 'releaseCategory': 'ordinary', 'value': 71.5, 'interval': {'low': 65.0, 'high': 78.0, 'level': 0.95, 'method': 'bootstrap percentile'}, 'suppressed': True, 'contextId': 'ctx-2026q3', 'benchmarkRef': {'benchmarkId': 'bench-uk-2026', 'releaseVersion': '2026.1', 'sourceRef': 'https://example.org/benchmarks/2026.1'}, 'suppressionReason': 'low-completion'} should not be valid under {'anyOf': [{'required': ['value']}, {'required': ['interval']}]}"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "zero-eligible.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "BenchmarkRelease": {
      "c16-3-30-90.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "c16-5-5-4.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C16] <root>: sampleSizes.observations 4 is below people 5"
        ]
      },
      "c16-5-5-5.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "c16-6-5-5.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C16] <root>: composition.orgCount 6 exceeds sampleSizes.people 5"
        ]
      },
      "duplicate-probability.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C17] <root>: percentiles.values[1].probability 0.5 does not exceed values[0].probability 0.5"
        ]
      },
      "equal-c13.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "equal-c14.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[required] <root>: 'excludedOrgId' is a required property"
        ]
      },
      "inverted-values.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C17] <root>: percentiles.values[1].value 2 is below values[0].value 3"
        ]
      },
      "reversed-c13.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C13] <root>: validTo '2026-08-31' precedes validFrom '2026-09-01'"
        ]
      },
      "reversed-c14.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C14] <root>: dataPeriodEnd '2026-08-31' precedes dataPeriodStart '2026-09-01'"
        ]
      },
      "single-quantile.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "tied-values.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "BenefitEntitlement": {
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[not] <root>: {'entitlementId': 'entitlement-demo', 'orgId': 'org-demo', 'layer': 'commercial', 'productCategory': 'EAP', 'statutory': {'scheme': 'synthetic', 'eligibility': 'Synthetic', 'sourceRef': 'synthetic-source', 'asOfDate': '2026-09-01'}} should not be valid under {'anyOf': [{'required': ['statutory']}]}"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "BenefitUtilisation": {
      "c15-0-0-0.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "c15-0-1-0.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C15] <root>: n is 0 while 1 event(s) are recorded"
        ]
      },
      "c15-1-0-0.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C15] <root>: n 1 exceeds the recorded events usageCount 0 + claimCount 0"
        ]
      },
      "c15-1-0-1.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "c15-2-1-1.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "c15-2-100-50.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "c15-3-1-1.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C15] <root>: n 3 exceeds the recorded events usageCount 1 + claimCount 1"
        ]
      },
      "equal-c11.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[minimum] usageCount: -1 is less than the minimum of 0"
        ]
      },
      "reversed-c11.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C11] <root>: periodEnd '2026-08-31' precedes periodStart '2026-09-01'"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "Crosswalk": {
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[enum] hseDomain: 'mental-health' is not one of ['demands', 'control', 'support', 'relationships', 'role', 'change']"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "DisabilityParticipation": {
      "equal-c12.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[enum] disabledHeadcountBand: 'unknown' is not one of ['1-4', '5-9', '10-19', '20-49', '50-99', '100-249', '250+']"
        ]
      },
      "reversed-c12.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C12] <root>: periodEnd '2026-08-31' precedes periodStart '2026-09-01'"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "InstrumentAdministration": {
      "abandoned-with-score.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[not] <root>: {'administrationId': 'adm-1', 'orgId': 'org-demo', 'pseudonymId': 'p-7f3a', 'contextId': 'ctx-2026q3', 'instrumentId': 'who-5', 'instrumentCitation': 'Topp CW et al. The WHO-5 Well-Being Index: a systematic review of the literature. Psychother Psychosom 2015;84:167-176.', 'instrumentVersion': '1998', 'occasionTs': '2026-08-12T09:20:00+01:00', 'constructCodes': ['mental-health'], 'completionStatus': 'abandoned', 'totalScore': 68, 'band': 'moderate', 'aboveThresholdFlag': False} should not be valid under {'anyOf': [{'required': ['totalScore']}, {'required': ['subscaleScores']}, {'required': ['band']}, {'required': ['aboveThresholdFlag']}]}"
        ]
      },
      "complete-without-score.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[anyOf] <root>: {'administrationId': 'adm-1', 'orgId': 'org-demo', 'pseudonymId': 'p-7f3a', 'contextId': 'ctx-2026q3', 'instrumentId': 'who-5', 'instrumentCitation': 'Topp CW et al. The WHO-5 Well-Being Index: a systematic review of the literature. Psychother Psychosom 2015;84:167-176.', 'instrumentVersion': '1998', 'occasionTs': '2026-08-12T09:20:00+01:00', 'constructCodes': ['mental-health'], 'completionStatus': 'complete', 'band': 'moderate', 'aboveThresholdFlag': False} is not valid under any of the given schemas"
        ]
      },
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 2,
        "errors": [
          "[minItems] constructCodes: [] should be non-empty",
          "[not] subscaleScores: 'email' should not be valid under {'enum': ['name', 'nino', 'email', 'dateOfBirth', 'address']}"
        ]
      },
      "subscales-only.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "MeasurementContext": {
      "equal-instants-different-offsets.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "window-and-scale.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 2,
        "errors": [
          "[C4] <root>: observationWindow end '2026-09-29T21:00:00Z' precedes start '2026-09-30T00:00:00+02:00' (compared as UTC instants)",
          "[C5] <root>: nativeScale min 5 is not below max 1"
        ]
      }
    },
    "OHEpisode": {
      "ext-clinical-key.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 2,
        "errors": [
          "[not] ext/owhs-x: 'diagnosis' should not be valid under {'enum': ['name', 'nino', 'email', 'dateOfBirth', 'address', 'diagnosis', 'clinicalCauseCode', 'symptoms', 'testResults', 'reportText', 'history']}",
          "[profile] ext/owhs-x: profile semantics not checked"
        ]
      },
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 3,
        "errors": [
          "[additionalProperties] <root>: Additional properties are not allowed ('clinicalCauseCode', 'diagnosis' were unexpected)",
          "[not] <root>: {'ohEpisodeId': 'oh-BAD', 'pseudonymId': 'owhs:pseudo:a1b2c3d4e5f60718', 'referralReason': 'long-term-absence', 'referralDate': '2026-03-05', 'fitnessOpinion': 'unfit', 'opinionReleasedToEmployer': False, 'diagnosis': 'Major depressive disorder', 'clinicalCauseCode': '370143000'} should not be valid under {'anyOf': [{'required': ['diagnosis']}, {'required': ['clinicalCauseCode']}, {'required': ['symptoms']}, {'required': ['testResults']}, {'required': ['reportText']}, {'required': ['history']}]}",
          "[const] opinionReleasedToEmployer: True was expected"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "OrgUnit": {
      "external-parent-not-resolved-here.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[enum] headcountBand: '0' is not one of ['1-4', '5-9', '10-19', '20-49', '50-99', '100-249', '250+']"
        ]
      },
      "self-parent.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C18] <root>: parentUnitId equals unitId 'unit-demo'"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "Organisation": {
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 2,
        "errors": [
          "[pattern] country: 'United Kingdom' does not match '^[A-Z]{2}$'",
          "[maxLength] country: 'United Kingdom' is too long"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "ReasonableAdjustment": {
      "equal-c10.valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      },
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[enum] status: 'completed' is not one of ['proposed', 'in-place', 'declined', 'ended']"
        ]
      },
      "reversed-c10.invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[C10] <root>: endDate '2026-08-31' precedes startDate '2026-09-01'"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "ReturnToWorkOutcome": {
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[not] <root>: {'outcomeId': 'rtw-BAD', 'absenceEpisodeId': 'abs-2026-000123', 'pseudonymId': 'owhs:pseudo:a1b2c3d4e5f60718', 'outcomeType': 'did-not-return', 'adjustmentTypes': ['phased-return']} should not be valid under {'required': ['adjustmentTypes']}"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "WellbeingObservation": {
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 6,
        "errors": [
          "[required] <root>: 'orgId' is a required property",
          "[required] <root>: 'contextId' is a required property",
          "[maximum] normalisedValue: 130 is greater than the maximum of 100",
          "[format] occasionTs: '2026-08-12T09:15:00' is not a 'date-time'",
          "[pattern] occasionTs: '2026-08-12T09:15:00' does not match '(Z|[+-]\\\\d{2}:\\\\d{2})$'",
          "[required] samplingDesign: 'scheduleRef' is a required property"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    },
    "WorkerPseudonym": {
      "invalid": {
        "expected": "fail",
        "exit_code": 1,
        "error_count": 1,
        "errors": [
          "[pattern] pseudonymId: 'EMP-Jane-Smith' does not match '^owhs:pseudo:[0-9a-f]{16,64}$'"
        ]
      },
      "valid": {
        "expected": "pass",
        "exit_code": 0,
        "error_count": 0,
        "errors": []
      }
    }
  },
  "note_v0_2": "Schema version 0.2 has sixteen entity types. The report records per-instance structure, formats and named within-record rules C1-C18. The separately run measurement-bundle checker supplies only its documented context joins, and the separately run entity-graph checker (tools/check_entity_graph.py, docs/entity-graph-validation-v0.2.md) the organisation-scoped relationship checks G01-G10 on a supplied bundle; this report concerns individual instances. External references, terminology currentness, release decisions and scientific interpretation are not established by this report."
}
