{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Condition",
  "description": "A clinical condition, problem, diagnosis, or other event, situation, issue, or clinical concept that has risen to a level of concern.",
  "x-source": "https://api.medplum.com/openapi.json",
  "properties": {
    "resourceType": {
      "description": "This is a Condition resource",
      "type": "string"
    },
    "id": {
      "description": "The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.",
      "$ref": "#/components/schemas/id"
    },
    "meta": {
      "description": "The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.",
      "$ref": "#/components/schemas/Meta"
    },
    "implicitRules": {
      "description": "A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.",
      "$ref": "#/components/schemas/uri"
    },
    "language": {
      "description": "The base language in which the resource is written.",
      "$ref": "#/components/schemas/code"
    },
    "text": {
      "description": "A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.",
      "$ref": "#/components/schemas/Narrative"
    },
    "contained": {
      "description": "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.",
      "items": {
        "$ref": "#/components/schemas/ResourceList"
      },
      "type": "array"
    },
    "extension": {
      "description": "May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
      "items": {
        "$ref": "#/components/schemas/Extension"
      },
      "type": "array"
    },
    "modifierExtension": {
      "description": "May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).",
      "items": {
        "$ref": "#/components/schemas/Extension"
      },
      "type": "array"
    },
    "identifier": {
      "description": "Business identifiers assigned to this condition by the performer or other systems which remain constant as the resource is updated and propagates from server to server.",
      "items": {
        "$ref": "#/components/schemas/Identifier"
      },
      "type": "array"
    },
    "clinicalStatus": {
      "description": "The clinical status of the condition.",
      "$ref": "#/components/schemas/CodeableConcept"
    },
    "verificationStatus": {
      "description": "The verification status to support the clinical status of the condition.",
      "$ref": "#/components/schemas/CodeableConcept"
    },
    "category": {
      "description": "A category assigned to the condition.",
      "items": {
        "$ref": "#/components/schemas/CodeableConcept"
      },
      "type": "array"
    },
    "severity": {
      "description": "A subjective assessment of the severity of the condition as evaluated by the clinician.",
      "$ref": "#/components/schemas/CodeableConcept"
    },
    "code": {
      "description": "Identification of the condition, problem or diagnosis.",
      "$ref": "#/components/schemas/CodeableConcept"
    },
    "bodySite": {
      "description": "The anatomical location where this condition manifests itself.",
      "items": {
        "$ref": "#/components/schemas/CodeableConcept"
      },
      "type": "array"
    },
    "subject": {
      "description": "Indicates the patient or group who the condition record is associated with.",
      "$ref": "#/components/schemas/Reference"
    },
    "encounter": {
      "description": "The Encounter during which this Condition was created or to which the creation of this record is tightly associated.",
      "$ref": "#/components/schemas/Reference"
    },
    "onsetDateTime": {
      "description": "Estimated or actual date or date-time  the condition began, in the opinion of the clinician.",
      "pattern": "^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\\.[0-9]+)?(Z|(\\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)?$",
      "type": "string"
    },
    "onsetAge": {
      "description": "Estimated or actual date or date-time  the condition began, in the opinion of the clinician.",
      "$ref": "#/components/schemas/Age"
    },
    "onsetPeriod": {
      "description": "Estimated or actual date or date-time  the condition began, in the opinion of the clinician.",
      "$ref": "#/components/schemas/Period"
    },
    "onsetRange": {
      "description": "Estimated or actual date or date-time  the condition began, in the opinion of the clinician.",
      "$ref": "#/components/schemas/Range"
    },
    "onsetString": {
      "description": "Estimated or actual date or date-time  the condition began, in the opinion of the clinician.",
      "pattern": "^[ \\r\\n\\t\\S]+$",
      "type": "string"
    },
    "abatementDateTime": {
      "description": "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.",
      "pattern": "^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\\.[0-9]+)?(Z|(\\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)?$",
      "type": "string"
    },
    "abatementAge": {
      "description": "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.",
      "$ref": "#/components/schemas/Age"
    },
    "abatementPeriod": {
      "description": "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.",
      "$ref": "#/components/schemas/Period"
    },
    "abatementRange": {
      "description": "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.",
      "$ref": "#/components/schemas/Range"
    },
    "abatementString": {
      "description": "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.",
      "pattern": "^[ \\r\\n\\t\\S]+$",
      "type": "string"
    },
    "recordedDate": {
      "description": "The recordedDate represents when this particular Condition record was created in the system, which is often a system-generated date.",
      "$ref": "#/components/schemas/dateTime"
    },
    "recorder": {
      "description": "Individual who recorded the record and takes responsibility for its content.",
      "$ref": "#/components/schemas/Reference"
    },
    "asserter": {
      "description": "Individual who is making the condition statement.",
      "$ref": "#/components/schemas/Reference"
    },
    "stage": {
      "description": "Clinical stage or grade of a condition. May include formal severity assessments.",
      "items": {
        "$ref": "#/components/schemas/Condition_Stage"
      },
      "type": "array"
    },
    "evidence": {
      "description": "Supporting evidence / manifestations that are the basis of the Condition's verification status, such as evidence that confirmed or refuted the condition.",
      "items": {
        "$ref": "#/components/schemas/Condition_Evidence"
      },
      "type": "array"
    },
    "note": {
      "description": "Additional information about the Condition. This is a general notes/comments entry  for description of the Condition, its diagnosis and prognosis.",
      "items": {
        "$ref": "#/components/schemas/Annotation"
      },
      "type": "array"
    }
  },
  "additionalProperties": false,
  "required": [
    "subject",
    "resourceType"
  ]
}