FHIR © HL7.org  |  FHIRsmith 4.0.1  |  Server Home  |  XIG Home  |  XIG Stats  | 

FHIR IG analytics

Packageihe.pcc.pscc
Resource TypeStructureDefinition
IdStructureDefinition-IHE.Problem.Status.Observation.json
FHIR VersionR5
Sourcehttps://build.fhir.org/ig/IHE/PCC.PCSc/StructureDefinition-IHE.Problem.Status.Observation.html
URLhttps://profiles.ihe.net/PCC/PSCc/StructureDefinition/IHE.Problem.Status.Observation
Version0.0.1-current
Statusdraft
Date2025-11-04T19:19:26+00:00
NameIHE_Problem_Status_Observation
TitleProblem Status Observation
Realmuv
Authorityihe
DescriptionAny problem or allergy observation may reference a problem status observation. This structure is included in the target observation using the <entryRelationship> element defined in the CDA Schema. The clinical status observation records information about the current status of the problem or allergy, for example, whether it is active, in remission, resolved, et cetera. The example below shows the recording of clinical status of a condition or allergy, and is used as the context for the following sections.
Typehttp://hl7.org/cda/stds/core/StructureDefinition/Observation
Kindlogical

Resources that use this resource

StructureDefinition
IHE.PCC.Problem.EntryProblem Entry

Resources that this resource uses

StructureDefinition
CDCD: ConceptDescriptor (V3 Data Type)
ObservationObservation (CDA Class)
ValueSet
ProblemStatusObservation.Value.VSProblem Status Observation Value

Narrative

Note: links and images are rebased to the (stated) source

Generated Narrative: StructureDefinition IHE.Problem.Status.Observation

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C1..1ObservationXML Namespace: urn:hl7-org:v3
Base for all types and resources
Instance of this type are validated by templateId
Logical Container: ClinicalDocument (CDA Class)
Constraints: should-text-ref-value
... Slices for templateId S3..*IISlice: Unordered, Open by value:root, value:extension
.... templateId:status-obs 1..1II
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.1.57
.... templateId:problem-status-obs 1..1II
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.1.50
.... templateId:ihe-problem-status-obs 1..1II
..... @root 1..1oid, uuid, ruidRequired Pattern: 1.3.6.1.4.1.19376.1.5.3.1.4.1.1
... @classCode 1..1csFixed Value: OBS
... @moodCode 1..1csFixed Value: EVN
... code S1..1CDDiagnosis status
.... @code 1..1csRequired Pattern: 33999-4
.... @codeSystem 1..1oid, uuid, ruidLOINC
Required Pattern: 2.16.840.1.113883.6.1
.... @displayName 0..1stRequired Pattern: Status
... text 0..1EDThe <text> element is required and points to the text describing the problem being recorded; including any dates, comments, et cetera. The <reference> contains a URI in value attribute. This URI points to the free text description of the problem in the document that is being described.
.... reference SC1..1TELConstraints: value-starts-octothorpe
... statusCode S1..1CS
.... @code 1..1csFixed Value: completed
... value 1..1CDBinding: Problem Status Observation Value (required)

doco Documentation for this format

Source1

{
  "resourceType": "StructureDefinition",
  "id": "IHE.Problem.Status.Observation",
  "text": {
    "status": "extensions",
    "div": "<!-- snip (see above) -->"
  },
  "extension": [
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/logical-target",
      "_valueBoolean": {
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/data-absent-reason",
            "valueCode": "not-applicable"
          }
        ]
      }
    },
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
      "valueUri": "urn:hl7-org:v3"
    },
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
      "valueString": "observation"
    },
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/logical-container",
      "valueUri": "http://hl7.org/cda/stds/core/StructureDefinition/ClinicalDocument"
    },
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/type-profile-style",
      "valueUri": "cda"
    }
  ],
  "url": "https://profiles.ihe.net/PCC/PSCc/StructureDefinition/IHE.Problem.Status.Observation",
  "version": "0.0.1-current",
  "name": "IHE_Problem_Status_Observation",
  "title": "Problem Status Observation",
  "status": "draft",
  "date": "2025-11-04T19:19:26+00:00",
  "publisher": "IHE Patient Care Coordination Technical Committee",
  "contact": [
    {
      "telecom": [
        {
          "system": "url",
          "value": "https://www.ihe.net/ihe_domains/patient_care_coordination/"
        }
      ]
    },
    {
      "telecom": [
        {
          "system": "email",
          "value": "pcc@ihe.net"
        }
      ]
    },
    {
      "name": "IHE Patient Care Coordination Technical Committee",
      "telecom": [
        {
          "system": "email",
          "value": "pcc@ihe.net"
        }
      ]
    }
  ],
  "description": "Any problem or allergy observation may reference a problem status observation. This structure is included in the target observation using the <entryRelationship> element defined in the CDA Schema. The clinical status observation records information about the current status of the problem or allergy, for example, whether it is active, in remission, resolved, et cetera. The example below shows the recording of clinical status of a condition or allergy, and is used as the context for the following sections.",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code": "001"
        }
      ]
    }
  ],
  "fhirVersion": "5.0.0",
  "mapping": [
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    }
  ],
  "kind": "logical",
  "abstract": false,
  "type": "http://hl7.org/cda/stds/core/StructureDefinition/Observation",
  "baseDefinition": "http://hl7.org/cda/stds/core/StructureDefinition/Observation",
  "derivation": "constraint",
  "snapshot": {
    "extension": [
      {
        "url": "http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version",
        "valueString": "2.0.1-sd"
      }
    ],
    "element": [
      {
        "id": "Observation",
        "path": "Observation",
        "short": "Base for all types and resources",
        "definition": "Defines the basic properties of every data value. This is an abstract type, meaning that no value can be just a data value without belonging to any concrete type. Every concrete type is a specialization of this general abstract DataValue type.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Base",
          "min": 0,
          "max": "*"
        },
        "constraint": [
          {
            "key": "should-text-ref-value",
            "severity": "warning",
            "human": "SHOULD contain text/reference/@value",
            "expression": "text.reference.value.exists()",
            "source": "https://profiles.ihe.net/PCC/PSCc/StructureDefinition/IHE.Problem.Status.Observation"
          }
        ],
        "isModifier": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "Observation.nullFlavor",
        "path": "Observation.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.realmCode",
        "path": "Observation.realmCode",
        "definition": "When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question",
        "min": 0,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.realmCode",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CS"
          }
        ]
      },
      {
        "id": "Observation.typeId",
        "path": "Observation.typeId",
        "definition": "When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "InfrastructureRoot.typeId",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ],
        "constraint": [
          {
            "key": "II-1",
            "severity": "error",
            "human": "An II instance must have either a root or an nullFlavor.",
            "expression": "root.exists() or nullFlavor.exists()",
            "source": "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"
          }
        ]
      },
      {
        "id": "Observation.typeId.nullFlavor",
        "path": "Observation.typeId.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.typeId.assigningAuthorityName",
        "path": "Observation.typeId.assigningAuthorityName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Assigning Authority Name",
        "definition": "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.assigningAuthorityName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.typeId.displayable",
        "path": "Observation.typeId.displayable",
        "representation": [
          "xmlAttr"
        ],
        "label": "Displayable",
        "definition": "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.displayable",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.typeId.root",
        "path": "Observation.typeId.root",
        "representation": [
          "xmlAttr"
        ],
        "label": "Root",
        "definition": "Identifies the type as an HL7 Registered model",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.root",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "fixedString": "2.16.840.1.113883.1.3"
      },
      {
        "id": "Observation.typeId.extension",
        "path": "Observation.typeId.extension",
        "representation": [
          "xmlAttr"
        ],
        "label": "Extension",
        "definition": "A character string as a unique identifier within the scope of the identifier root.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.extension",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.templateId",
        "path": "Observation.templateId",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "root"
            },
            {
              "type": "value",
              "path": "extension"
            }
          ],
          "rules": "open"
        },
        "definition": "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
        "min": 3,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.templateId",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.templateId:status-obs",
        "path": "Observation.templateId",
        "sliceName": "status-obs",
        "definition": "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
        "min": 1,
        "max": "1",
        "base": {
          "path": "InfrastructureRoot.templateId",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Observation.templateId:status-obs.nullFlavor",
        "path": "Observation.templateId.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.templateId:status-obs.assigningAuthorityName",
        "path": "Observation.templateId.assigningAuthorityName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Assigning Authority Name",
        "definition": "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.assigningAuthorityName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.templateId:status-obs.displayable",
        "path": "Observation.templateId.displayable",
        "representation": [
          "xmlAttr"
        ],
        "label": "Displayable",
        "definition": "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.displayable",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.templateId:status-obs.root",
        "path": "Observation.templateId.root",
        "representation": [
          "xmlAttr"
        ],
        "label": "Root",
        "definition": "A unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.root",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "patternString": "2.16.840.1.113883.10.20.1.57"
      },
      {
        "id": "Observation.templateId:status-obs.extension",
        "path": "Observation.templateId.extension",
        "representation": [
          "xmlAttr"
        ],
        "label": "Extension",
        "definition": "A character string as a unique identifier within the scope of the identifier root.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.extension",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.templateId:problem-status-obs",
        "path": "Observation.templateId",
        "sliceName": "problem-status-obs",
        "definition": "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
        "min": 1,
        "max": "1",
        "base": {
          "path": "InfrastructureRoot.templateId",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Observation.templateId:problem-status-obs.nullFlavor",
        "path": "Observation.templateId.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.templateId:problem-status-obs.assigningAuthorityName",
        "path": "Observation.templateId.assigningAuthorityName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Assigning Authority Name",
        "definition": "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.assigningAuthorityName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.templateId:problem-status-obs.displayable",
        "path": "Observation.templateId.displayable",
        "representation": [
          "xmlAttr"
        ],
        "label": "Displayable",
        "definition": "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.displayable",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.templateId:problem-status-obs.root",
        "path": "Observation.templateId.root",
        "representation": [
          "xmlAttr"
        ],
        "label": "Root",
        "definition": "A unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.root",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "patternString": "2.16.840.1.113883.10.20.1.50"
      },
      {
        "id": "Observation.templateId:problem-status-obs.extension",
        "path": "Observation.templateId.extension",
        "representation": [
          "xmlAttr"
        ],
        "label": "Extension",
        "definition": "A character string as a unique identifier within the scope of the identifier root.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.extension",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.templateId:ihe-problem-status-obs",
        "path": "Observation.templateId",
        "sliceName": "ihe-problem-status-obs",
        "definition": "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
        "min": 1,
        "max": "1",
        "base": {
          "path": "InfrastructureRoot.templateId",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Observation.templateId:ihe-problem-status-obs.nullFlavor",
        "path": "Observation.templateId.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.templateId:ihe-problem-status-obs.assigningAuthorityName",
        "path": "Observation.templateId.assigningAuthorityName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Assigning Authority Name",
        "definition": "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.assigningAuthorityName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.templateId:ihe-problem-status-obs.displayable",
        "path": "Observation.templateId.displayable",
        "representation": [
          "xmlAttr"
        ],
        "label": "Displayable",
        "definition": "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.displayable",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.templateId:ihe-problem-status-obs.root",
        "path": "Observation.templateId.root",
        "representation": [
          "xmlAttr"
        ],
        "label": "Root",
        "definition": "A unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.root",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "patternString": "1.3.6.1.4.1.19376.1.5.3.1.4.1.1"
      },
      {
        "id": "Observation.templateId:ihe-problem-status-obs.extension",
        "path": "Observation.templateId.extension",
        "representation": [
          "xmlAttr"
        ],
        "label": "Extension",
        "definition": "A character string as a unique identifier within the scope of the identifier root.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.extension",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.classCode",
        "path": "Observation.classCode",
        "representation": [
          "xmlAttr"
        ],
        "comment": "SHALL contain exactly one [1..1] @classCode=\"OBS\" Observation (CodeSystem: HL7ActClass urn:oid:2.16.840.1.113883.5.6 STATIC) (CONF:1198-7357).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Observation.classCode",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode": "OBS",
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDAActClassObservation"
        }
      },
      {
        "id": "Observation.moodCode",
        "path": "Observation.moodCode",
        "representation": [
          "xmlAttr"
        ],
        "comment": "SHALL contain exactly one [1..1] @moodCode=\"EVN\" Event (CodeSystem: HL7ActMood urn:oid:2.16.840.1.113883.5.1001 STATIC) (CONF:1198-7358).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Observation.moodCode",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode": "EVN",
        "binding": {
          "strength": "required",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-xActMoodDocumentObservation|2.0.0"
        }
      },
      {
        "id": "Observation.negationInd",
        "path": "Observation.negationInd",
        "representation": [
          "xmlAttr"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Observation.negationInd",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.id",
        "path": "Observation.id",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.id",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Observation.sdtcCategory",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "category"
          }
        ],
        "path": "Observation.sdtcCategory",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.sdtcCategory",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ]
      },
      {
        "id": "Observation.code",
        "path": "Observation.code",
        "representation": [
          "typeAttr"
        ],
        "short": "Diagnosis status",
        "comment": "This observation is of clinical status, as indicated by the <code> element. This element must be present.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Observation.code",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ],
        "mustSupport": true,
        "binding": {
          "strength": "example",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-ObservationType"
        }
      },
      {
        "id": "Observation.code.nullFlavor",
        "path": "Observation.code.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.code.code",
        "path": "Observation.code.code",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code",
        "definition": "The plain code symbol defined by the code system. For example, \"784.0\" is the code symbol of the ICD-9 code \"784.0\" for headache.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "CD.code",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "patternCode": "33999-4"
      },
      {
        "id": "Observation.code.codeSystem",
        "path": "Observation.code.codeSystem",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code System",
        "short": "LOINC",
        "definition": "Specifies the code system that defines the code.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "CD.codeSystem",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "patternString": "2.16.840.1.113883.6.1"
      },
      {
        "id": "Observation.code.codeSystemName",
        "path": "Observation.code.codeSystemName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code System Name",
        "definition": "The common name of the coding system.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.codeSystemName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.code.codeSystemVersion",
        "path": "Observation.code.codeSystemVersion",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code System Version",
        "definition": "If applicable, a version descriptor defined specifically for the given code system.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.codeSystemVersion",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.code.displayName",
        "path": "Observation.code.displayName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Display Name",
        "definition": "A name or title for the code, under which the sending system shows the code value to its users.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.displayName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ],
        "patternString": "Status"
      },
      {
        "id": "Observation.code.sdtcValueSet",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "valueSet"
          }
        ],
        "path": "Observation.code.sdtcValueSet",
        "representation": [
          "xmlAttr"
        ],
        "definition": "The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.valueSet",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid"
            ]
          }
        ]
      },
      {
        "id": "Observation.code.sdtcValueSetVersion",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "valueSetVersion"
          }
        ],
        "path": "Observation.code.sdtcValueSetVersion",
        "representation": [
          "xmlAttr"
        ],
        "definition": "The valueSetVersion extension adds an attribute for elements with a CD dataType which indicates the version of the particular value set constraining the coded concept.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.sdtcValueSetVersion",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.code.originalText",
        "path": "Observation.code.originalText",
        "label": "Original Text",
        "definition": "The text or phrase used as the basis for the coding.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.originalText",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/ED"
          }
        ]
      },
      {
        "id": "Observation.code.qualifier",
        "path": "Observation.code.qualifier",
        "label": "Qualifier",
        "definition": "Specifies additional codes that increase the specificity of the the primary code.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "CD.qualifier",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CR"
          }
        ]
      },
      {
        "id": "Observation.code.translation",
        "path": "Observation.code.translation",
        "representation": [
          "typeAttr"
        ],
        "label": "Translation",
        "definition": "A set of other concept descriptors that translate this concept descriptor into other code systems.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "CD.translation",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ]
      },
      {
        "id": "Observation.derivationExpr",
        "path": "Observation.derivationExpr",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Observation.derivationExpr",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/ST"
          }
        ]
      },
      {
        "id": "Observation.text",
        "path": "Observation.text",
        "representation": [
          "typeAttr"
        ],
        "short": "The <text> element is required and points to the text describing the problem being recorded; including any dates, comments, et cetera. The <reference> contains a URI in value attribute. This URI points to the free text description of the problem in the document that is being described.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Observation.text",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/ED"
          }
        ]
      },
      {
        "id": "Observation.text.nullFlavor",
        "path": "Observation.text.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.text.compression",
        "path": "Observation.text.compression",
        "representation": [
          "xmlAttr"
        ],
        "label": "Compression",
        "definition": "Indicates whether the raw byte data is compressed, and what compression algorithm was used.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ED.compression",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDACompressionAlgorithm"
        }
      },
      {
        "id": "Observation.text.integrityCheck",
        "path": "Observation.text.integrityCheck",
        "representation": [
          "xmlAttr"
        ],
        "label": "Integrity Check",
        "definition": "The integrity check is a short binary value representing a cryptographically strong checksum that is calculated over the binary data. The purpose of this property, when communicated with a reference is for anyone to validate later whether the reference still resolved to the same data that the reference resolved to when the encapsulated data value with reference was created.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ED.integrityCheck",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "base64Binary",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bin"
            ]
          }
        ]
      },
      {
        "id": "Observation.text.integrityCheckAlgorithm",
        "path": "Observation.text.integrityCheckAlgorithm",
        "representation": [
          "xmlAttr"
        ],
        "label": "Integrity Check Algorithm",
        "definition": "Specifies the algorithm used to compute the integrityCheck value. The cryptographically strong checksum algorithm Secure Hash Algorithm-1 (SHA-1) is currently the industry standard. It has superseded the MD5 algorithm only a couple of years ago, when certain flaws in the security of MD5 were discovered. Currently the SHA-1 hash algorithm is the default choice for the integrity check algorithm. Note that SHA-256 is also entering widespread usage.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ED.integrityCheckAlgorithm",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-IntegrityCheckAlgorithm|2.0.0"
        }
      },
      {
        "id": "Observation.text.language",
        "path": "Observation.text.language",
        "representation": [
          "xmlAttr"
        ],
        "label": "Language",
        "definition": "For character based information the language property specifies the human language of the text.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ED.language",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.text.mediaType",
        "path": "Observation.text.mediaType",
        "representation": [
          "xmlAttr"
        ],
        "label": "Media Type",
        "definition": "Identifies the type of the encapsulated data and identifies a method to interpret or render the data.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ED.mediaType",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "example",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-MediaType"
        }
      },
      {
        "id": "Observation.text.representation",
        "path": "Observation.text.representation",
        "representation": [
          "xmlAttr"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "ED.representation",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/BinaryDataEncoding"
        }
      },
      {
        "id": "Observation.text.xmlText",
        "path": "Observation.text.xmlText",
        "representation": [
          "xmlText"
        ],
        "short": "Allows for mixed text content. If @representation='B64', this SHALL be a base64binary string.",
        "definition": "Data that is primarily intended for human interpretation or for further machine processing is outside the scope of HL7. This includes unformatted or formatted written language, multimedia data, or structured information as defined by a different standard (e.g., XML-signatures.)",
        "comment": "This element is represented in XML as textual content. The actual name \"xmlText\" will not appear in a CDA instance.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ED.xmlText",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.text.reference",
        "path": "Observation.text.reference",
        "label": "Reference",
        "definition": "A telecommunication address (TEL), such as a URL for HTTP or FTP, which will resolve to precisely the same binary data that could as well have been provided as inline data.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ED.reference",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/TEL"
          }
        ],
        "constraint": [
          {
            "key": "value-starts-octothorpe",
            "severity": "error",
            "human": "If reference/@value is present, it SHALL begin with a '#' and SHALL point to its corresponding narrative",
            "expression": "value.exists() implies value.startsWith('#')",
            "source": "https://profiles.ihe.net/PCC/PSCc/StructureDefinition/IHE.Problem.Status.Observation"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.text.thumbnail",
        "path": "Observation.text.thumbnail",
        "label": "Thumbnail",
        "definition": "An abbreviated rendition of the full data. A thumbnail requires significantly fewer resources than the full data, while still maintaining some distinctive similarity with the full data. A thumbnail is typically used with by-reference encapsulated data. It allows a user to select data more efficiently before actually downloading through the reference.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ED.thumbnail",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/ED"
          }
        ]
      },
      {
        "id": "Observation.statusCode",
        "path": "Observation.statusCode",
        "comment": "The code attribute of <statusCode> for all clinical status observations shall be completed. While the <statusCode> element is required in all acts to record the status of the act, the only sensible value of this element in this context is completed.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Observation.statusCode",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CS"
          }
        ],
        "mustSupport": true,
        "binding": {
          "strength": "required",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-ActStatus"
        }
      },
      {
        "id": "Observation.statusCode.nullFlavor",
        "path": "Observation.statusCode.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.statusCode.code",
        "path": "Observation.statusCode.code",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code",
        "definition": "The plain code symbol defined by the code system. For example, \"784.0\" is the code symbol of the ICD-9 code \"784.0\" for headache.",
        "comment": "This statusCode SHALL contain exactly one [1..1] @code=\"completed\" Completed (CodeSystem: HL7ActStatus urn:oid:2.16.840.1.113883.5.14 STATIC) (CONF:1198-19113).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "CD.code",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode": "completed"
      },
      {
        "id": "Observation.statusCode.codeSystem",
        "path": "Observation.statusCode.codeSystem",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code System",
        "definition": "Specifies the code system that defines the code.",
        "min": 0,
        "max": "0",
        "base": {
          "path": "CD.codeSystem",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ]
      },
      {
        "id": "Observation.statusCode.codeSystemName",
        "path": "Observation.statusCode.codeSystemName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code System Name",
        "definition": "The common name of the coding system.",
        "min": 0,
        "max": "0",
        "base": {
          "path": "CD.codeSystemName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.statusCode.codeSystemVersion",
        "path": "Observation.statusCode.codeSystemVersion",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code System Version",
        "definition": "If applicable, a version descriptor defined specifically for the given code system.",
        "min": 0,
        "max": "0",
        "base": {
          "path": "CD.codeSystemVersion",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.statusCode.displayName",
        "path": "Observation.statusCode.displayName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Display Name",
        "definition": "A name or title for the code, under which the sending system shows the code value to its users.",
        "min": 0,
        "max": "0",
        "base": {
          "path": "CD.displayName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.statusCode.sdtcValueSet",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "valueSet"
          }
        ],
        "path": "Observation.statusCode.sdtcValueSet",
        "representation": [
          "xmlAttr"
        ],
        "definition": "The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.valueSet",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid"
            ]
          }
        ]
      },
      {
        "id": "Observation.statusCode.sdtcValueSetVersion",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "valueSetVersion"
          }
        ],
        "path": "Observation.statusCode.sdtcValueSetVersion",
        "representation": [
          "xmlAttr"
        ],
        "definition": "The valueSetVersion extension adds an attribute for elements with a CD dataType which indicates the version of the particular value set constraining the coded concept.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.sdtcValueSetVersion",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.statusCode.originalText",
        "path": "Observation.statusCode.originalText",
        "label": "Original Text",
        "definition": "The text or phrase used as the basis for the coding.",
        "min": 0,
        "max": "0",
        "base": {
          "path": "CD.originalText",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/ED"
          }
        ]
      },
      {
        "id": "Observation.statusCode.qualifier",
        "path": "Observation.statusCode.qualifier",
        "label": "Qualifier",
        "definition": "Specifies additional codes that increase the specificity of the the primary code.",
        "min": 0,
        "max": "0",
        "base": {
          "path": "CD.qualifier",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CR"
          }
        ]
      },
      {
        "id": "Observation.statusCode.translation",
        "path": "Observation.statusCode.translation",
        "representation": [
          "typeAttr"
        ],
        "label": "Translation",
        "definition": "A set of other concept descriptors that translate this concept descriptor into other code systems.",
        "min": 0,
        "max": "0",
        "base": {
          "path": "CD.translation",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ]
      },
      {
        "id": "Observation.effectiveTime",
        "path": "Observation.effectiveTime",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Observation.effectiveTime",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/IVL-TS"
          }
        ]
      },
      {
        "id": "Observation.priorityCode",
        "path": "Observation.priorityCode",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Observation.priorityCode",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding": {
          "strength": "example",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-ActPriority"
        }
      },
      {
        "id": "Observation.repeatNumber",
        "path": "Observation.repeatNumber",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Observation.repeatNumber",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/IVL-INT"
          }
        ]
      },
      {
        "id": "Observation.languageCode",
        "path": "Observation.languageCode",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Observation.languageCode",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CS"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/fhir/ValueSet/all-languages"
        }
      },
      {
        "id": "Observation.value",
        "path": "Observation.value",
        "representation": [
          "typeAttr"
        ],
        "comment": "The value of @code SHALL be drawn from value set 1.3.6.1.4.1.19376.1.5.3.1.11.2 ProblemStatusObservation_value (2016‑09‑26 13:58:58)",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Observation.value",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "https://profiles.ihe.net/PCC/PSCc/ValueSet/ProblemStatusObservation.Value.VS"
        }
      },
      {
        "id": "Observation.interpretationCode",
        "path": "Observation.interpretationCode",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.interpretationCode",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDAObservationInterpretation"
        }
      },
      {
        "id": "Observation.methodCode",
        "path": "Observation.methodCode",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.methodCode",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding": {
          "strength": "example",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-ObservationMethod"
        }
      },
      {
        "id": "Observation.targetSiteCode",
        "path": "Observation.targetSiteCode",
        "definition": "Drawn from concept domain ActSite",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.targetSiteCode",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ]
      },
      {
        "id": "Observation.subject",
        "path": "Observation.subject",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Observation.subject",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Subject"
          }
        ]
      },
      {
        "id": "Observation.specimen",
        "path": "Observation.specimen",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.specimen",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Specimen"
          }
        ]
      },
      {
        "id": "Observation.performer",
        "path": "Observation.performer",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.performer",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Performer2"
          }
        ]
      },
      {
        "id": "Observation.author",
        "path": "Observation.author",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.author",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Author"
          }
        ]
      },
      {
        "id": "Observation.informant",
        "path": "Observation.informant",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.informant",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Informant"
          }
        ]
      },
      {
        "id": "Observation.participant",
        "path": "Observation.participant",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.participant",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Participant2"
          }
        ]
      },
      {
        "id": "Observation.entryRelationship",
        "path": "Observation.entryRelationship",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.entryRelationship",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/EntryRelationship"
          }
        ]
      },
      {
        "id": "Observation.reference",
        "path": "Observation.reference",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.reference",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Reference"
          }
        ]
      },
      {
        "id": "Observation.precondition",
        "path": "Observation.precondition",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.precondition",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Precondition"
          }
        ]
      },
      {
        "id": "Observation.sdtcPrecondition2",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "precondition2"
          }
        ],
        "path": "Observation.sdtcPrecondition2",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.sdtcPrecondition2",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Precondition2"
          }
        ]
      },
      {
        "id": "Observation.referenceRange",
        "path": "Observation.referenceRange",
        "definition": "Relates an Observation to the ObservationRange class, where the expected range of values for a particular observation can be specified.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.referenceRange",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"
          }
        ]
      },
      {
        "id": "Observation.referenceRange.nullFlavor",
        "path": "Observation.referenceRange.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.referenceRange.realmCode",
        "path": "Observation.referenceRange.realmCode",
        "definition": "When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question",
        "min": 0,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.realmCode",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CS"
          }
        ]
      },
      {
        "id": "Observation.referenceRange.typeId",
        "path": "Observation.referenceRange.typeId",
        "definition": "When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "InfrastructureRoot.typeId",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ],
        "constraint": [
          {
            "key": "II-1",
            "severity": "error",
            "human": "An II instance must have either a root or an nullFlavor.",
            "expression": "root.exists() or nullFlavor.exists()",
            "source": "http://hl7.org/cda/stds/core/StructureDefinition/Observation"
          }
        ]
      },
      {
        "id": "Observation.referenceRange.typeId.nullFlavor",
        "path": "Observation.referenceRange.typeId.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Observation.referenceRange.typeId.assigningAuthorityName",
        "path": "Observation.referenceRange.typeId.assigningAuthorityName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Assigning Authority Name",
        "definition": "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.assigningAuthorityName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.referenceRange.typeId.displayable",
        "path": "Observation.referenceRange.typeId.displayable",
        "representation": [
          "xmlAttr"
        ],
        "label": "Displayable",
        "definition": "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.displayable",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.referenceRange.typeId.root",
        "path": "Observation.referenceRange.typeId.root",
        "representation": [
          "xmlAttr"
        ],
        "label": "Root",
        "definition": "Identifies the type as an HL7 Registered model",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.root",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "fixedString": "2.16.840.1.113883.1.3"
      },
      {
        "id": "Observation.referenceRange.typeId.extension",
        "path": "Observation.referenceRange.typeId.extension",
        "representation": [
          "xmlAttr"
        ],
        "label": "Extension",
        "definition": "A character string as a unique identifier within the scope of the identifier root.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.extension",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Observation.referenceRange.templateId",
        "path": "Observation.referenceRange.templateId",
        "definition": "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
        "min": 0,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.templateId",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Observation.referenceRange.typeCode",
        "path": "Observation.referenceRange.typeCode",
        "representation": [
          "xmlAttr"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Observation.referenceRange.typeCode",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode": "REFV",
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDAActRelationshipType"
        }
      },
      {
        "id": "Observation.referenceRange.observationRange",
        "path": "Observation.referenceRange.observationRange",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Observation.referenceRange.observationRange",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/ObservationRange"
          }
        ]
      },
      {
        "id": "Observation.sdtcInFulfillmentOf1",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "inFulfillmentOf1"
          }
        ],
        "path": "Observation.sdtcInFulfillmentOf1",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Observation.sdtcInFulfillmentOf1",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/InFulfillmentOf1"
          }
        ]
      }
    ]
  },
  "differential": {
    "element": [
      {
        "id": "Observation",
        "path": "Observation",
        "constraint": [
          {
            "key": "should-text-ref-value",
            "severity": "warning",
            "human": "SHOULD contain text/reference/@value",
            "expression": "text.reference.value.exists()",
            "source": "https://profiles.ihe.net/PCC/PSCc/StructureDefinition/IHE.Problem.Status.Observation"
          }
        ]
      },
      {
        "id": "Observation.templateId",
        "path": "Observation.templateId",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "root"
            },
            {
              "type": "value",
              "path": "extension"
            }
          ],
          "rules": "open"
        },
        "min": 3,
        "mustSupport": true
      },
      {
        "id": "Observation.templateId:status-obs",
        "path": "Observation.templateId",
        "sliceName": "status-obs",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Observation.templateId:status-obs.root",
        "path": "Observation.templateId.root",
        "min": 1,
        "patternString": "2.16.840.1.113883.10.20.1.57"
      },
      {
        "id": "Observation.templateId:problem-status-obs",
        "path": "Observation.templateId",
        "sliceName": "problem-status-obs",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Observation.templateId:problem-status-obs.root",
        "path": "Observation.templateId.root",
        "min": 1,
        "patternString": "2.16.840.1.113883.10.20.1.50"
      },
      {
        "id": "Observation.templateId:ihe-problem-status-obs",
        "path": "Observation.templateId",
        "sliceName": "ihe-problem-status-obs",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Observation.templateId:ihe-problem-status-obs.root",
        "path": "Observation.templateId.root",
        "min": 1,
        "patternString": "1.3.6.1.4.1.19376.1.5.3.1.4.1.1"
      },
      {
        "id": "Observation.classCode",
        "path": "Observation.classCode",
        "comment": "SHALL contain exactly one [1..1] @classCode=\"OBS\" Observation (CodeSystem: HL7ActClass urn:oid:2.16.840.1.113883.5.6 STATIC) (CONF:1198-7357).",
        "fixedCode": "OBS"
      },
      {
        "id": "Observation.moodCode",
        "path": "Observation.moodCode",
        "comment": "SHALL contain exactly one [1..1] @moodCode=\"EVN\" Event (CodeSystem: HL7ActMood urn:oid:2.16.840.1.113883.5.1001 STATIC) (CONF:1198-7358).",
        "fixedCode": "EVN"
      },
      {
        "id": "Observation.code",
        "path": "Observation.code",
        "short": "Diagnosis status",
        "comment": "This observation is of clinical status, as indicated by the <code> element. This element must be present.",
        "mustSupport": true
      },
      {
        "id": "Observation.code.code",
        "path": "Observation.code.code",
        "min": 1,
        "patternCode": "33999-4"
      },
      {
        "id": "Observation.code.codeSystem",
        "path": "Observation.code.codeSystem",
        "short": "LOINC",
        "min": 1,
        "patternString": "2.16.840.1.113883.6.1"
      },
      {
        "id": "Observation.code.displayName",
        "path": "Observation.code.displayName",
        "patternString": "Status"
      },
      {
        "id": "Observation.text",
        "path": "Observation.text",
        "short": "The <text> element is required and points to the text describing the problem being recorded; including any dates, comments, et cetera. The <reference> contains a URI in value attribute. This URI points to the free text description of the problem in the document that is being described."
      },
      {
        "id": "Observation.text.reference",
        "path": "Observation.text.reference",
        "min": 1,
        "constraint": [
          {
            "key": "value-starts-octothorpe",
            "severity": "error",
            "human": "If reference/@value is present, it SHALL begin with a '#' and SHALL point to its corresponding narrative",
            "expression": "value.exists() implies value.startsWith('#')",
            "source": "https://profiles.ihe.net/PCC/PSCc/StructureDefinition/IHE.Problem.Status.Observation"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.statusCode",
        "path": "Observation.statusCode",
        "comment": "The code attribute of <statusCode> for all clinical status observations shall be completed. While the <statusCode> element is required in all acts to record the status of the act, the only sensible value of this element in this context is completed.",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Observation.statusCode.code",
        "path": "Observation.statusCode.code",
        "comment": "This statusCode SHALL contain exactly one [1..1] @code=\"completed\" Completed (CodeSystem: HL7ActStatus urn:oid:2.16.840.1.113883.5.14 STATIC) (CONF:1198-19113).",
        "min": 1,
        "fixedCode": "completed"
      },
      {
        "id": "Observation.value",
        "path": "Observation.value",
        "comment": "The value of @code SHALL be drawn from value set 1.3.6.1.4.1.19376.1.5.3.1.11.2 ProblemStatusObservation_value (2016‑09‑26 13:58:58)",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "https://profiles.ihe.net/PCC/PSCc/ValueSet/ProblemStatusObservation.Value.VS"
        }
      }
    ]
  }
}