{
  "additionalProperties": {},
  "description": "Generic schema to allow alternative CWL requirements/hints not explicitly defined in schemas.",
  "properties": {
    "class": {
      "description": "CWL requirement class specification.",
      "example": "UnknownRequirement",
      "not": {
        "enum": [
          "cwltool:CUDARequirement",
          "DockerRequirement",
          "SoftwareRequirement",
          "ShellCommandRequirement",
          "EnvVarRequirement",
          "SchemaDefRequirement",
          "InitialWorkDirRequirement",
          "InlineJavascriptRequirement",
          "InplaceUpdateRequirement",
          "LoadListingRequirement",
          "NetworkAccess",
          "ResourceRequirement",
          "ScatterFeatureRequirement",
          "ToolTimeLimit",
          "WorkReuse",
          "MultipleInputFeatureRequirement",
          "StepInputExpressionRequirement",
          "SubworkflowFeatureRequirement"
        ]
      },
      "title": "Requirement Class Identifier",
      "type": "string"
    }
  },
  "type": "object"
}