{
  "resourceType": "StructureDefinition",
  "id": "ghpr-2-condition",
  "url": "https://fhir.kemkes.go.id/r4/ghpr/StructureDefinition/Condition",
  "version": "4.0.1",
  "name": "GhprCondition2",
  "status": "draft",
  "date": "2019-10-31T22:29:23+00:00",
  "description": "{{Resource Description}}",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Condition",
  "baseDefinition": "https://fhir.kemkes.go.id/r4/StructureDefinition/Condition",
  "derivation": "specialization",
  "meta": {
    "lastUpdated": "2021-12-31T09:24:23.849+00:00"
  },
  "differential": {
    "element": [
      {
        "id": "Condition",
        "path": "Condition",
        "constraint": [
          {
            "key": "con-5",
            "severity": "error",
            "human": "Condition.clinicalStatus SHALL NOT be present if verification Status is entered-in-error",
            "expression": "verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code='entered-in-error').empty() or clinicalStatus.empty()",
            "xpath": "not(exists(f:verificationStatus/f:coding[f:system/@value='http://terminology.hl7.org/CodeSystem/condition-ver-status' and f:code/@value='entered-in-error'])) or not(exists(f:clinicalStatus))",
            "source": "http://hl7.org/fhir/StructureDefinition/Condition"
          },
          {
            "key": "con-4",
            "severity": "error",
            "human": "If condition is abated, then clinicalStatus must be either inactive, resolved, or remission",
            "expression": "abatement.empty() or clinicalStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-clinical' and (code='resolved' or code='remission' or code='inactive')).exists()",
            "xpath": "not(exists(*[starts-with(local-name(.), 'abatement')])) or exists(f:clinicalStatus/f:coding[f:system/@value='http://terminology.hl7.org/CodeSystem/condition-clinical' and f:code/@value=('resolved', 'remission', 'inactive')])",
            "source": "http://hl7.org/fhir/StructureDefinition/Condition"
          },
          {
            "extension": [
              {
                "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice",
                "valueBoolean": true
              },
              {
                "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation",
                "valueMarkdown": "Most systems will expect a clinicalStatus to be valued for problem-list-items that are managed over time, but might not need a clinicalStatus for point in time encounter-diagnosis."
              }
            ],
            "key": "con-3",
            "severity": "warning",
            "human": "Condition.clinicalStatus SHALL be present if verificationStatus is not entered-in-error and category is problem-list-item",
            "expression": "clinicalStatus.exists() or verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code = 'entered-in-error').exists() or category.select($this='problem-list-item').empty()",
            "xpath": "exists(f:clinicalStatus) or exists(f:verificationStatus/f:coding/f:code/@value='entered-in-error') or not(exists(category[@value='problem-list-item']))",
            "source": "http://hl7.org/fhir/StructureDefinition/Condition"
          }
        ],
        "mapping": [
          {
            "identity": "workflow",
            "map": "Event"
          },
          {
            "identity": "sct-concept",
            "map": "< 243796009 |Situation with explicit context| : 246090004 |Associated finding| = ( ( < 404684003 |Clinical finding| MINUS ( << 420134006 |Propensity to adverse reactions| OR << 473010000 |Hypersensitivity condition| OR << 79899007 |Drug interaction| OR << 69449002 |Drug action| OR << 441742003 |Evaluation finding| OR << 307824009 |Administrative status| OR << 385356007 |Tumor stage finding|)) OR < 272379006 |Event|)"
          },
          {
            "identity": "v2",
            "map": "PPR message"
          },
          {
            "identity": "rim",
            "map": "Observation[classCode=OBS, moodCode=EVN, code=ASSERTION, value<Diagnosis]"
          }
        ]
      }
    ]
  }
}