title: "Monogenic Report Writing"
type: "object"

properties:
  toplines:
    title: Topline Finding
    type: array
    minItems: 1
    maxItems: 5
    items:
      allOf:
      - $ref: "../../structs.json#/definitions/ToplineFinding"
      - properties:
          finding:
            $ref: "../../core.json#/definitions/MonogenicToplineFinding"
  disease_information:
    title: Disease Information
    type: array
    items:
      type: string
  clinical_summary:
    title: Clinical Summary
    type: string
  next_steps:
    $ref: "../../structs.json#/definitions/ReportNextSteps"
  classifications:
    title: Classifications
    minItems: 1
    type: array
    items:
      $ref: "#/definitions/VariationClassification"
  sample_limitations:
    title: Sample Limitations
    type: array
    items:
      type: string

definitions: 
  VariationClassification:
    type: object
    additionalProperties: false
    required:
      - classification
    properties:
      variantfinding_id:
        $ref: '../../ids.json#/definitions/VariantFindingId'
      classification:
        title: ACMG Classification
        $ref: '../../core.json#/definitions/ACMGPlusNegativeClassification'
      disease:
        title: Disease
        type: string
      variation:
        title: Variation
        $ref: '../../structs.json#/definitions/Variation'
      event:
        title: Variant Event
        type: [ "string", "null" ]
      gene:
        title: Gene
        $ref: '../../structs.json#/definitions/Gene'
      mode_of_inheritance:
        title: Mode of Inheritance
        $ref: '../../core.json#/definitions/Inheritance'
      zygosity:
        title: Zygosity
        $ref: '../../core.json#/definitions/Zygosity'
      evidence:
        title: Evidence
        type: string
      references:
        title: References
        type: array
        items:
          $ref: '../../structs.json#/definitions/Reference'