JSON Schema
This page shows the published JSON Schema as one formatted document. Use the chevrons to fold objects and arrays, follow highlighted objects and $ref values within the schema, and use the book icons to open definition guides. You can also open the raw schema file.
{ "$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://matjson.org/schema/matcheck/0.1/schema.json",
"title": "MatCheckJSON v0.1 — Working Draft",
"description": "Auditable results of resolving MatSpecJSON and activated MatReqJSON requirements and evaluating those requirements against normalized MatRecordJSON evidence. MatCheckJSON records decisions; it does not replace the source requirements or the evidence package.",
"x_matjson_profile": "matcheck",
"x_matjson_status": "working_draft",
"x_matjson_naming_convention": "snake_case",
"type": "object",
"additionalProperties": false,
"required": [ "matjson",
"check",
"inputs",
"subjects",
"requirement_resolutions",
"findings",
"summary",
"provenance" ],
"properties": { "matjson": { "allOf": [ { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/profile_envelope" },
{ "type": "object",
"properties": { "profile": { "const": "matcheck" },
"version": { "const": "0.1" } } } ] },
"check": { "$ref": "#/$defs/check_metadata" },
"inputs": { "type": "array",
"minItems": 2,
"items": { "$ref": "#/$defs/input_document" } },
"project_inputs": { "type": "array",
"items": { "$ref": "#/$defs/project_input" } },
"subjects": { "type": "array",
"minItems": 1,
"items": { "$ref": "#/$defs/subject" } },
"requirement_resolutions": { "type": "array",
"minItems": 1,
"items": { "$ref": "#/$defs/requirement_resolution" } },
"calculations": { "type": "array",
"items": { "$ref": "#/$defs/calculation_record" } },
"findings": { "type": "array",
"items": { "$ref": "#/$defs/finding" } },
"summary": { "$ref": "#/$defs/summary" },
"review": { "$ref": "#/$defs/review" },
"provenance": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/provenance" },
"notes": { "type": "array",
"items": { "type": "string" } },
"extensions": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/extensions" } },
"$defs": { "check_metadata": { "type": "object",
"additionalProperties": false,
"required": [ "id",
"status",
"created_at",
"engine",
"evaluation_policy" ],
"properties": { "id": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"title": { "type": "string" },
"status": { "enum": [ "draft",
"completed",
"reviewed",
"approved",
"superseded" ] },
"created_at": { "type": "string",
"format": "date-time" },
"completed_at": { "type": "string",
"format": "date-time" },
"engine": { "type": "object",
"additionalProperties": false,
"required": [ "name",
"mode" ],
"properties": { "name": { "type": "string" },
"version": { "type": "string" },
"vendor": { "type": "string" },
"mode": { "enum": [ "automated",
"assisted",
"manual" ] } } },
"evaluation_policy": { "type": "object",
"additionalProperties": false,
"required": [ "id",
"version" ],
"properties": { "id": { "type": "string" },
"version": { "type": "string" },
"uri": { "type": "string",
"format": "uri-reference" },
"description": { "type": "string" } } },
"supersedes_check_ref": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"notes": { "type": "array",
"items": { "type": "string" } } } },
"input_document": { "type": "object",
"additionalProperties": false,
"required": [ "id",
"role",
"uri",
"content_hash" ],
"properties": { "id": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"role": { "enum": [ "matspec",
"matreq",
"matrecord",
"requisition_context",
"other" ] },
"profile": { "enum": [ "matspec",
"matreq",
"matrecord",
"matcheck",
"core" ] },
"profile_version": { "type": "string" },
"uri": { "type": "string",
"format": "uri-reference" },
"content_hash": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/content_hash" },
"schema_uri": { "type": "string",
"format": "uri-reference" },
"document_id": { "type": "string" },
"title": { "type": "string" },
"designation": { "type": "string" },
"edition": { "type": "string" },
"retrieved_at": { "type": "string",
"format": "date-time" },
"embedded_path": { "type": "string" },
"notes": { "type": "array",
"items": { "type": "string" } } },
"allOf": [ { "if": { "properties": { "role": { "const": "matspec" } },
"required": [ "role" ] },
"then": { "required": [ "profile",
"profile_version" ],
"properties": { "profile": { "const": "matspec" } } } },
{ "if": { "properties": { "role": { "const": "matreq" } },
"required": [ "role" ] },
"then": { "required": [ "profile",
"profile_version" ],
"properties": { "profile": { "const": "matreq" } } } },
{ "if": { "properties": { "role": { "const": "matrecord" } },
"required": [ "role" ] },
"then": { "required": [ "profile",
"profile_version" ],
"properties": { "profile": { "const": "matrecord" } } } } ] },
"project_input": { "type": "object",
"additionalProperties": false,
"required": [ "id",
"status" ],
"properties": { "id": { "type": "string",
"minLength": 1 },
"description": { "type": "string" },
"status": { "enum": [ "provided",
"defaulted",
"not_provided",
"not_applicable",
"unknown" ] },
"value": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" },
"source_input_ref": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"source_refs": { "type": "array",
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/record_object_ref" } },
"notes": { "type": "array",
"items": { "type": "string" } } },
"allOf": [ { "if": { "properties": { "status": { "enum": [ "provided",
"defaulted" ] } },
"required": [ "status" ] },
"then": { "required": [ "value" ] } } ] },
"selector_context": { "type": "object",
"additionalProperties": false,
"properties": { "grade": { "type": "string" },
"class": { "type": "string" },
"type": { "type": "string" },
"uns": { "type": "string" },
"product_form": { "type": "string" },
"condition": { "type": "string" },
"heat": { "type": "string" },
"lot": { "type": "string" },
"dimensions": { "type": "object",
"propertyNames": { "pattern": "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*(?:\\.[a-z][a-z0-9]*(?:_[a-z0-9]+)*)*$" },
"additionalProperties": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" } },
"other": { "type": "object",
"propertyNames": { "pattern": "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*(?:\\.[a-z][a-z0-9]*(?:_[a-z0-9]+)*)*$" },
"additionalProperties": true } } },
"subject": { "type": "object",
"additionalProperties": false,
"required": [ "id",
"matrecord_input_ref",
"material_refs" ],
"properties": { "id": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"matrecord_input_ref": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"material_refs": { "type": "array",
"minItems": 1,
"uniqueItems": true,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" } },
"description": { "type": "string" },
"role": { "enum": [ "primary",
"related",
"source_material",
"finished_product",
"coupon",
"specimen" ] },
"selector_context": { "$ref": "#/$defs/selector_context" },
"notes": { "type": "array",
"items": { "type": "string" } } } },
"activation_basis": { "type": "object",
"additionalProperties": false,
"required": [ "basis",
"explanation" ],
"properties": { "basis": { "enum": [ "intrinsic_to_matspec",
"document_invoked",
"scope_invoked",
"condition_met",
"explicit_requisition_invocation",
"inherited_dependency",
"contractual_elevation",
"other" ] },
"condition_result": { "type": [ "boolean",
"null" ] },
"condition": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/condition_expr" },
"project_input_refs": { "type": "array",
"uniqueItems": true,
"items": { "type": "string" } },
"explanation": { "type": "string",
"minLength": 1 } } },
"precedence": { "type": "object",
"additionalProperties": false,
"required": [ "relationship",
"strategy" ],
"properties": { "relationship": { "enum": [ "intrinsic",
"supplements",
"restricts",
"replaces",
"prohibits",
"selects",
"merges",
"purchaser_defined" ] },
"strategy": { "enum": [ "not_required",
"supplement",
"explicit_override",
"most_stringent",
"source_precedence",
"project_selection",
"no_automatic_resolution" ] },
"selected_source_indexes": { "type": "array",
"uniqueItems": true,
"items": { "type": "integer",
"minimum": 0 } },
"explanation": { "type": "string" } } },
"effective_requirement": { "type": "object",
"additionalProperties": false,
"required": [ "kind" ],
"properties": { "kind": { "enum": [ "property_limit",
"composition_limit",
"computed_limit",
"required_condition",
"required_test",
"required_examination",
"required_heat_treatment",
"required_product_form",
"required_manufacturing_route",
"required_document",
"required_report_field",
"required_traceability",
"required_marking",
"required_statement",
"sampling_requirement",
"test_acceptance",
"prohibited",
"allowed_only",
"reference_compliance",
"decision_procedure",
"other" ] },
"property": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/coded_term" },
"analyte": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/coded_term" },
"operator": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/comparison_operator" },
"expected": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" },
"allowed_values": { "type": "array",
"minItems": 1,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" } },
"test_type": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/coded_term" },
"document_type": { "type": "string" },
"condition": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/coded_term" },
"calculation": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/calculation_spec" },
"frequency": { "type": [ "string",
"object" ] },
"scope": { "type": [ "string",
"object",
"array" ] },
"reporting": { "type": [ "string",
"object",
"array" ] },
"text": { "type": "string" },
"alternatives": { "type": "array",
"minItems": 2,
"items": { "$ref": "#/$defs/effective_requirement" } },
"notes": { "type": "array",
"items": { "type": "string" } } },
"anyOf": [ { "required": [ "expected" ] },
{ "required": [ "allowed_values" ] },
{ "required": [ "test_type" ] },
{ "required": [ "document_type" ] },
{ "required": [ "condition" ] },
{ "required": [ "calculation" ] },
{ "required": [ "text" ] },
{ "required": [ "alternatives" ] } ] },
"verification_plan": { "type": "object",
"additionalProperties": false,
"required": [ "mode",
"missing_result_status" ],
"properties": { "mode": { "enum": [ "direct",
"computed",
"record_review",
"cross_document",
"inspection_record",
"manual_review" ] },
"checkability": { "enum": [ "mtr_direct",
"mtr_computed",
"mtr_statement",
"supporting_report",
"requisition_completeness",
"design_or_service_evaluation",
"cross_document",
"manual_only" ] },
"required_evidence_types": { "type": "array",
"uniqueItems": true,
"items": { "type": "string" } },
"record_object_types": { "type": "array",
"uniqueItems": true,
"items": { "type": "string" } },
"missing_result_status": { "enum": [ "missing_evidence",
"missing_project_input",
"manual_review_required",
"external_evidence_required",
"unsupported_evaluation" ] },
"notes": { "type": "array",
"items": { "type": "string" } } } },
"requirement_resolution": { "type": "object",
"additionalProperties": false,
"required": [ "id",
"source_requirement_refs",
"subject_refs",
"category",
"normativity",
"resolution_status",
"activation_basis" ],
"properties": { "id": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"source_requirement_refs": { "type": "array",
"minItems": 1,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/requirement_ref" } },
"subject_refs": { "type": "array",
"minItems": 1,
"uniqueItems": true,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" } },
"title": { "type": "string" },
"category": { "enum": [ "material_selection",
"product_form",
"chemistry",
"mechanical",
"impact",
"hardness",
"metallurgy",
"corrosion_testing",
"heat_treatment",
"manufacturing",
"welding_consumable",
"fabrication",
"nde",
"pmi",
"documentation",
"traceability",
"marking",
"dimensions",
"external_standard",
"other" ] },
"normativity": { "enum": [ "mandatory",
"prohibited",
"recommended",
"permitted",
"informative" ] },
"resolution_status": { "enum": [ "active",
"inactive",
"not_applicable",
"unresolved_selector",
"missing_project_input",
"superseded",
"overridden",
"conflict",
"manual_resolution_required" ] },
"activation_basis": { "$ref": "#/$defs/activation_basis" },
"selector_context": { "$ref": "#/$defs/selector_context" },
"precedence": { "$ref": "#/$defs/precedence" },
"effective_requirement": { "$ref": "#/$defs/effective_requirement" },
"verification_plan": { "$ref": "#/$defs/verification_plan" },
"source_text": { "type": "string" },
"notes": { "type": "array",
"items": { "type": "string" } } },
"allOf": [ { "if": { "properties": { "resolution_status": { "const": "active" } },
"required": [ "resolution_status" ] },
"then": { "required": [ "effective_requirement",
"verification_plan" ] } } ] },
"calculation_input": { "type": "object",
"additionalProperties": false,
"required": [ "name",
"value" ],
"properties": { "name": { "type": "string",
"pattern": "^[A-Za-z][A-Za-z0-9_]*$" },
"value": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" },
"source_refs": { "type": "array",
"minItems": 1,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/record_object_ref" } },
"conversion": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/unit_conversion" },
"notes": { "type": "array",
"items": { "type": "string" } } } },
"calculation_record": { "type": "object",
"additionalProperties": false,
"required": [ "id",
"expression",
"expression_language",
"inputs",
"result" ],
"properties": { "id": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"expression": { "type": "string" },
"expression_language": { "enum": [ "matjson_infix_0.1",
"source_text",
"other" ] },
"inputs": { "type": "array",
"minItems": 1,
"items": { "$ref": "#/$defs/calculation_input" } },
"result": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" },
"rounding": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/rounding_rule" },
"source_requirement_resolution_refs": { "type": "array",
"uniqueItems": true,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" } },
"explanation": { "type": "string" },
"notes": { "type": "array",
"items": { "type": "string" } } } },
"observed_value": { "type": "object",
"additionalProperties": false,
"required": [ "role",
"value",
"source_refs" ],
"properties": { "label": { "type": "string" },
"role": { "enum": [ "measured",
"calculated",
"declared",
"converted",
"observed",
"derived" ] },
"value": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" },
"normalized_value": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" },
"source_refs": { "type": "array",
"minItems": 1,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/record_object_ref" } },
"notes": { "type": "array",
"items": { "type": "string" } } } },
"comparison": { "type": "object",
"additionalProperties": false,
"required": [ "operator",
"expected",
"observed",
"result" ],
"properties": { "operator": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/comparison_operator" },
"expected": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" },
"observed": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/result_value" },
"result": { "enum": [ "true",
"false",
"indeterminate" ] },
"unit_conversions": { "type": "array",
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/unit_conversion" } },
"rounding": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/rounding_rule" },
"calculation_ref": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"basis": { "type": "string" },
"notes": { "type": "array",
"items": { "type": "string" } } } },
"finding": { "type": "object",
"additionalProperties": false,
"required": [ "id",
"requirement_resolution_ref",
"subject_refs",
"status",
"severity",
"evaluation_mode",
"explanation" ],
"properties": { "id": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"requirement_resolution_ref": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"subject_refs": { "type": "array",
"minItems": 1,
"uniqueItems": true,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" } },
"status": { "enum": [ "pass",
"fail",
"not_applicable",
"missing_evidence",
"missing_project_input",
"requisition_gap",
"ambiguous_material_selector",
"conflicting_requirements",
"manual_review_required",
"external_evidence_required",
"unsupported_evaluation",
"not_evaluated" ] },
"severity": { "enum": [ "error",
"warning",
"information" ] },
"evaluation_mode": { "enum": [ "direct",
"computed",
"record_review",
"cross_document",
"inspection_record",
"manual_review" ] },
"observed_values": { "type": "array",
"items": { "$ref": "#/$defs/observed_value" } },
"comparison": { "$ref": "#/$defs/comparison" },
"calculation_ref": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"evidence_refs": { "type": "array",
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/record_object_ref" } },
"confidence": { "type": "number",
"minimum": 0,
"maximum": 1 },
"evaluated_at": { "type": "string",
"format": "date-time" },
"evaluator": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/actor" },
"explanation": { "type": "string",
"minLength": 1 },
"notes": { "type": "array",
"items": { "type": "string" } } } },
"finding_counts": { "type": "object",
"additionalProperties": false,
"properties": { "pass": { "type": "integer",
"minimum": 0,
"default": 0 },
"fail": { "type": "integer",
"minimum": 0,
"default": 0 },
"not_applicable": { "type": "integer",
"minimum": 0,
"default": 0 },
"missing_evidence": { "type": "integer",
"minimum": 0,
"default": 0 },
"missing_project_input": { "type": "integer",
"minimum": 0,
"default": 0 },
"requisition_gap": { "type": "integer",
"minimum": 0,
"default": 0 },
"ambiguous_material_selector": { "type": "integer",
"minimum": 0,
"default": 0 },
"conflicting_requirements": { "type": "integer",
"minimum": 0,
"default": 0 },
"manual_review_required": { "type": "integer",
"minimum": 0,
"default": 0 },
"external_evidence_required": { "type": "integer",
"minimum": 0,
"default": 0 },
"unsupported_evaluation": { "type": "integer",
"minimum": 0,
"default": 0 },
"not_evaluated": { "type": "integer",
"minimum": 0,
"default": 0 } } },
"mandatory_counts": { "type": "object",
"additionalProperties": false,
"required": [ "active",
"evaluated",
"passed",
"failed",
"unresolved" ],
"properties": { "active": { "type": "integer",
"minimum": 0 },
"evaluated": { "type": "integer",
"minimum": 0 },
"passed": { "type": "integer",
"minimum": 0 },
"failed": { "type": "integer",
"minimum": 0 },
"unresolved": { "type": "integer",
"minimum": 0 } } },
"requirement_counts": { "type": "object",
"additionalProperties": false,
"required": [ "total",
"active",
"inactive",
"not_applicable",
"unresolved" ],
"properties": { "total": { "type": "integer",
"minimum": 0 },
"active": { "type": "integer",
"minimum": 0 },
"inactive": { "type": "integer",
"minimum": 0 },
"not_applicable": { "type": "integer",
"minimum": 0 },
"unresolved": { "type": "integer",
"minimum": 0 } } },
"aggregation_policy": { "type": "object",
"additionalProperties": false,
"required": [ "id",
"version" ],
"properties": { "id": { "type": "string" },
"version": { "type": "string" },
"uri": { "type": "string",
"format": "uri-reference" },
"description": { "type": "string" },
"rules": { "type": "array",
"items": { "type": "string" } } } },
"summary": { "type": "object",
"additionalProperties": false,
"required": [ "overall_status",
"finding_counts",
"requirement_counts",
"mandatory_counts",
"aggregation_policy" ],
"properties": { "overall_status": { "enum": [ "pass",
"pass_with_warnings",
"incomplete",
"fail",
"not_evaluated" ] },
"finding_counts": { "$ref": "#/$defs/finding_counts" },
"requirement_counts": { "$ref": "#/$defs/requirement_counts" },
"mandatory_counts": { "$ref": "#/$defs/mandatory_counts" },
"blocking_finding_refs": { "type": "array",
"uniqueItems": true,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" } },
"unresolved_finding_refs": { "type": "array",
"uniqueItems": true,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" } },
"warning_finding_refs": { "type": "array",
"uniqueItems": true,
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" } },
"aggregation_policy": { "$ref": "#/$defs/aggregation_policy" },
"rationale": { "type": "string" } } },
"review_override": { "type": "object",
"additionalProperties": false,
"required": [ "finding_ref",
"original_status",
"final_status",
"reason",
"reviewer" ],
"properties": { "finding_ref": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/local_id" },
"original_status": { "enum": [ "pass",
"fail",
"not_applicable",
"missing_evidence",
"missing_project_input",
"requisition_gap",
"ambiguous_material_selector",
"conflicting_requirements",
"manual_review_required",
"external_evidence_required",
"unsupported_evaluation",
"not_evaluated" ] },
"final_status": { "enum": [ "pass",
"fail",
"not_applicable",
"missing_evidence",
"missing_project_input",
"requisition_gap",
"ambiguous_material_selector",
"conflicting_requirements",
"manual_review_required",
"external_evidence_required",
"unsupported_evaluation",
"not_evaluated" ] },
"reason": { "type": "string" },
"reviewer": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/actor" },
"reviewed_at": { "type": "string",
"format": "date-time" } } },
"review": { "type": "object",
"additionalProperties": false,
"required": [ "status" ],
"properties": { "status": { "enum": [ "unreviewed",
"in_review",
"accepted",
"accepted_with_comments",
"rejected" ] },
"reviewers": { "type": "array",
"items": { "$ref": "https://matjson.org/schema/core/0.1/schema.json#/$defs/actor" } },
"completed_at": { "type": "string",
"format": "date-time" },
"overrides": { "type": "array",
"items": { "$ref": "#/$defs/review_override" } },
"final_overall_status": { "enum": [ "pass",
"pass_with_warnings",
"incomplete",
"fail",
"not_evaluated" ] },
"comments": { "type": "array",
"items": { "type": "string" } } } } }}