| { |
| "$defs": { |
| "Modification": { |
| "additionalProperties": false, |
| "properties": { |
| "position": { |
| "minimum": 1, |
| "title": "Position", |
| "type": "integer" |
| }, |
| "residue": { |
| "maxLength": 1, |
| "minLength": 1, |
| "title": "Residue", |
| "type": "string" |
| }, |
| "ccd": { |
| "minLength": 1, |
| "title": "Ccd", |
| "type": "string" |
| } |
| }, |
| "required": [ |
| "position", |
| "residue", |
| "ccd" |
| ], |
| "title": "Modification", |
| "type": "object" |
| }, |
| "Molecule": { |
| "additionalProperties": false, |
| "properties": { |
| "sequence": { |
| "title": "Sequence", |
| "type": "string" |
| }, |
| "modifications": { |
| "items": { |
| "$ref": "#/$defs/Modification" |
| }, |
| "title": "Modifications", |
| "type": "array" |
| }, |
| "bonds": { |
| "items": { |
| "maxItems": 4, |
| "minItems": 4, |
| "prefixItems": [ |
| { |
| "type": "integer" |
| }, |
| { |
| "type": "string" |
| }, |
| { |
| "type": "integer" |
| }, |
| { |
| "type": "string" |
| } |
| ], |
| "type": "array" |
| }, |
| "title": "Bonds", |
| "type": "array" |
| }, |
| "n_terminus": { |
| "default": "free", |
| "title": "N Terminus", |
| "type": "string" |
| }, |
| "c_terminus": { |
| "default": "free", |
| "title": "C Terminus", |
| "type": "string" |
| }, |
| "smiles": { |
| "anyOf": [ |
| { |
| "type": "string" |
| }, |
| { |
| "type": "null" |
| } |
| ], |
| "default": null, |
| "title": "Smiles" |
| } |
| }, |
| "required": [ |
| "sequence" |
| ], |
| "title": "Molecule", |
| "type": "object" |
| }, |
| "Requirement": { |
| "additionalProperties": false, |
| "properties": { |
| "endpoint": { |
| "title": "Endpoint", |
| "type": "string" |
| }, |
| "unit": { |
| "title": "Unit", |
| "type": "string" |
| }, |
| "direction": { |
| "enum": [ |
| "ge", |
| "le" |
| ], |
| "title": "Direction", |
| "type": "string" |
| }, |
| "threshold": { |
| "title": "Threshold", |
| "type": "number" |
| }, |
| "assay": { |
| "title": "Assay", |
| "type": "string" |
| }, |
| "scale": { |
| "exclusiveMinimum": 0, |
| "title": "Scale", |
| "type": "number" |
| }, |
| "required": { |
| "default": true, |
| "title": "Required", |
| "type": "boolean" |
| } |
| }, |
| "required": [ |
| "endpoint", |
| "unit", |
| "direction", |
| "threshold", |
| "assay", |
| "scale" |
| ], |
| "title": "Requirement", |
| "type": "object" |
| }, |
| "Target": { |
| "additionalProperties": false, |
| "properties": { |
| "id": { |
| "title": "Id", |
| "type": "string" |
| }, |
| "accession": { |
| "title": "Accession", |
| "type": "string" |
| }, |
| "molecule": { |
| "$ref": "#/$defs/Molecule" |
| }, |
| "species": { |
| "default": "Homo sapiens", |
| "title": "Species", |
| "type": "string" |
| }, |
| "compartment": { |
| "title": "Compartment", |
| "type": "string" |
| }, |
| "structure_paths": { |
| "items": { |
| "type": "string" |
| }, |
| "title": "Structure Paths", |
| "type": "array" |
| }, |
| "construct_start": { |
| "default": 1, |
| "minimum": 1, |
| "title": "Construct Start", |
| "type": "integer" |
| } |
| }, |
| "required": [ |
| "id", |
| "accession", |
| "molecule", |
| "compartment" |
| ], |
| "title": "Target", |
| "type": "object" |
| } |
| }, |
| "additionalProperties": false, |
| "properties": { |
| "episode_id": { |
| "title": "Episode Id", |
| "type": "string" |
| }, |
| "task": { |
| "enum": [ |
| "binding", |
| "ptm", |
| "ternary", |
| "direction" |
| ], |
| "title": "Task", |
| "type": "string" |
| }, |
| "objective": { |
| "title": "Objective", |
| "type": "string" |
| }, |
| "targets": { |
| "items": { |
| "$ref": "#/$defs/Target" |
| }, |
| "minItems": 1, |
| "title": "Targets", |
| "type": "array" |
| }, |
| "countertargets": { |
| "items": { |
| "$ref": "#/$defs/Target" |
| }, |
| "title": "Countertargets", |
| "type": "array" |
| }, |
| "requirements": { |
| "items": { |
| "$ref": "#/$defs/Requirement" |
| }, |
| "minItems": 1, |
| "title": "Requirements", |
| "type": "array" |
| }, |
| "administration": { |
| "title": "Administration", |
| "type": "string" |
| }, |
| "peptide_format": { |
| "default": "linear", |
| "enum": [ |
| "linear", |
| "head_to_tail", |
| "modified" |
| ], |
| "title": "Peptide Format", |
| "type": "string" |
| }, |
| "sequence_lengths": { |
| "items": { |
| "type": "integer" |
| }, |
| "title": "Sequence Lengths", |
| "type": "array" |
| }, |
| "budgets": { |
| "additionalProperties": { |
| "type": "number" |
| }, |
| "title": "Budgets", |
| "type": "object" |
| }, |
| "seed": { |
| "default": 2027, |
| "title": "Seed", |
| "type": "integer" |
| } |
| }, |
| "required": [ |
| "episode_id", |
| "task", |
| "objective", |
| "targets", |
| "requirements", |
| "administration" |
| ], |
| "title": "DesignSpec", |
| "type": "object" |
| } |