title: "NDD CNA JSON Report"
type: "object"

properties:
  toplines:
    title: Topline Finding(s)
    type: array
    minItems: 1
    maxItems: 5
    items:
      allOf:
      - $ref: "../../structs.json#/definitions/ToplineFinding"
      - properties:
          finding:
            $ref: "../../core.json#/definitions/MonogenicToplineFinding"
  next_steps:
    $ref: "../../structs.json#/definitions/ReportNextSteps"
  classifications:
    title: Classifications
    minItems: 1
    type: array
    items:
      $ref: "#/definitions/CNAVariationClassification"
  hpo_terms:
    title: HPO Terms
    type: array
    items:
      type: string
  limitations:
    title: Test Limitations
    type: array
    items:
      type: string

definitions: 
  CNAVariationClassification:
    type: object
    additionalProperties: false
    required:
      - classification
      - evidence
    properties:
      classification:
        title: ACMG Classification
        anyOf:
          - $ref: '../../core.json#/definitions/ACMGClassification'
          - const: "NEGATIVE"
      evidence:
        title: Evidence
        type: array
        items: 
          type: string
      genetic_event:
        title: Genetic Event
        $ref: '../../core.json#/definitions/GeneticEventType'
      chromosome_region:
        title: Chromosome Region
        $ref: '../../core.json#/definitions/ChromosomeRegion'
      cytoband:
        title: Cytoband
        $ref: '../../core.json#/definitions/Cytoband'
      iscn_nomenclature:
        title: ISCN Nomenclature
        $ref: '../../core.json#/definitions/ISCNNomenclature'
      size_mb:
        title: Size (mb)
        type: number
      number_of_genes:
        title: No. of Genes
        type: integer