GCMD_Keyword_Classifier_MVP / schemas /dataset_expert_source_binding.schema.json
igerasimov's picture
Deploy deterministic dataset README classifier
4af38c8
Raw History Blame Contribute Delete
5.37 kB
{
"$defs": {
"ArtifactReference": {
"additionalProperties": false,
"properties": {
"artifact_type": {
"$ref": "#/$defs/ArtifactType"
},
"relative_path": {
"minLength": 1,
"title": "Relative Path",
"type": "string"
},
"sha256": {
"pattern": "^[0-9a-f]{64}$",
"title": "Sha256",
"type": "string"
},
"byte_count": {
"minimum": 0,
"title": "Byte Count",
"type": "integer"
},
"persistence_state": {
"$ref": "#/$defs/PersistenceState"
},
"schema_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Schema Name"
},
"upstream_sha256": {
"default": [],
"items": {
"type": "string"
},
"title": "Upstream Sha256",
"type": "array"
}
},
"required": [
"artifact_type",
"relative_path",
"sha256",
"byte_count",
"persistence_state"
],
"title": "ArtifactReference",
"type": "object"
},
"ArtifactType": {
"enum": [
"cmr_response",
"collection_snapshot",
"sealed_expert",
"expert_source_binding",
"comparison",
"human_review",
"readme_pdf",
"readme_metadata",
"extraction_manifest",
"structural_index",
"product_resolution",
"evidence_selection",
"evidence_packet",
"blind_result",
"run_state",
"stage_log"
],
"title": "ArtifactType",
"type": "string"
},
"DatasetIdentity": {
"additionalProperties": false,
"description": "Authoritative CMR collection identity.",
"properties": {
"concept_id": {
"minLength": 1,
"title": "Concept Id",
"type": "string"
},
"native_id": {
"minLength": 1,
"title": "Native Id",
"type": "string"
},
"short_name": {
"minLength": 1,
"title": "Short Name",
"type": "string"
},
"version": {
"minLength": 1,
"title": "Version",
"type": "string"
},
"cmr_revision_id": {
"minimum": 1,
"title": "Cmr Revision Id",
"type": "integer"
},
"legacy_entry_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Legacy Entry Id"
}
},
"required": [
"concept_id",
"native_id",
"short_name",
"version",
"cmr_revision_id"
],
"title": "DatasetIdentity",
"type": "object"
},
"PersistenceState": {
"enum": [
"not_persisted",
"persisted",
"hash_verified",
"failed"
],
"title": "PersistenceState",
"type": "string"
},
"RunIdentity": {
"additionalProperties": false,
"properties": {
"run_id": {
"pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
"title": "Run Id",
"type": "string"
},
"concept_id": {
"pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
"title": "Concept Id",
"type": "string"
}
},
"required": [
"run_id",
"concept_id"
],
"title": "RunIdentity",
"type": "object"
}
},
"additionalProperties": false,
"description": "Expert-free immutable provenance joining CMR and sealed artifacts.",
"properties": {
"schema_version": {
"const": "expert-source-binding-v1",
"default": "expert-source-binding-v1",
"title": "Schema Version",
"type": "string"
},
"run": {
"$ref": "#/$defs/RunIdentity"
},
"identity": {
"$ref": "#/$defs/DatasetIdentity"
},
"cmr_source_artifact": {
"$ref": "#/$defs/ArtifactReference"
},
"cmr_source_sha256": {
"pattern": "^[0-9a-f]{64}$",
"title": "Cmr Source Sha256",
"type": "string"
},
"sealed_expert_artifact": {
"$ref": "#/$defs/ArtifactReference"
},
"sealed_expert_artifact_sha256": {
"pattern": "^[0-9a-f]{64}$",
"title": "Sealed Expert Artifact Sha256",
"type": "string"
},
"sealed_payload_sha256": {
"pattern": "^[0-9a-f]{64}$",
"title": "Sealed Payload Sha256",
"type": "string"
},
"binding_policy_version": {
"const": "expert-source-binding-v1",
"default": "expert-source-binding-v1",
"title": "Binding Policy Version",
"type": "string"
},
"binding_sha256": {
"pattern": "^[0-9a-f]{64}$",
"title": "Binding Sha256",
"type": "string"
}
},
"required": [
"run",
"identity",
"cmr_source_artifact",
"cmr_source_sha256",
"sealed_expert_artifact",
"sealed_expert_artifact_sha256",
"sealed_payload_sha256",
"binding_sha256"
],
"title": "ExpertSourceBinding",
"type": "object"
}