{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "$anchor": "cdm.event.instructioncomposition.reset",
  "type": "string",
  "title": "ResetInstructionCompositionStepsEnum",
  "description": "Defines the strictly sequenced lifecycle of a Reset process. Each enum value represents a discrete atomic action required to transition the Instruction Composition from initial trade parameters to the final Reset execution output.",
  "enum": [
    "AdjustDateInstruction",
    "AdjustObservationDatesInstruction",
    "AdjustPeriodInstruction",
    "CalculateResetValueInstruction",
    "CollectFloatingRateOptionInstruction",
    "DetermineUnadjustedCalculationPeriodInstruction",
    "DetermineUnadjustedObservationDatesInstruction",
    "ResetInstructionOutput"
  ],
  "oneOf": [
    {
      "enum": [
        "AdjustDateInstruction"
      ],
      "title": "AdjustDateInstruction"
    },
    
    {
      "enum": [
        "AdjustObservationDatesInstruction"
      ],
      "title": "AdjustObservationDatesInstruction"
    },
    
    {
      "enum": [
        "AdjustPeriodInstruction"
      ],
      "title": "AdjustPeriodInstruction"
    },
    
    {
      "enum": [
        "CalculateResetValueInstruction"
      ],
      "title": "CalculateResetValueInstruction"
    },
    
    {
      "enum": [
        "CollectFloatingRateOptionInstruction"
      ],
      "title": "CollectFloatingRateOptionInstruction"
    },
    
    {
      "enum": [
        "DetermineUnadjustedCalculationPeriodInstruction"
      ],
      "title": "DetermineUnadjustedCalculationPeriodInstruction"
    },
    
    {
      "enum": [
        "DetermineUnadjustedObservationDatesInstruction"
      ],
      "title": "DetermineUnadjustedObservationDatesInstruction"
    },
    
    {
      "enum": [
        "ResetInstructionOutput"
      ],
      "title": "ResetInstructionOutput"
    }
  ]
}
