{
  "resourceType": "StructureDefinition",
  "id": "437fee08-5040-4369-b519-68369a59efab",
  "meta": {
    "lastUpdated": "2017-12-04T14:07:28.133+00:00"
  },
  "url": "http://devices.fhir.org/StructureDefinition/EnumerationObservation",
  "name": "EnumerationObservation",
  "title": "Enumeration Observation Profile",
  "status": "draft",
  "date": "2017-12-01T14:18:08.46+00:00",
  "description": "StructureDefinition for an Enumeration Observation resource",
  "fhirVersion": "3.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Observation",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Observation",
        "path": "Observation",
        "constraint": [
          {
            "key": "pocd-obs-3",
            "severity": "error",
            "human": "If there is no value a dataAbsentReason shall be present",
            "expression": "value.exists() or dataAbsentReason.exists()"
          }
        ]
      },
      {
        "id": "Observation.extension",
        "path": "Observation.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Observation.extension:measurementStatus",
        "path": "Observation.extension",
        "sliceName": "measurementStatus",
        "short": "Measurement status",
        "definition": "The Measurement Status extension provides more detailed status information about observed values. It gets a code from the Measurement Status value set.",
        "type": [
          {
            "code": "Extension",
            "profile": "http://devices.fhir.org/StructureDefinition/observation-measurement-status"
          }
        ]
      },
      {
        "id": "Observation.code",
        "path": "Observation.code",
        "short": "Enumeration type",
        "definition": "Observation.code shall have a coding from the ISO/IEEE 11073 MDC metrics nomenclature. The Rosetta Terminology Mapping Management System (RTMMS) lists available codes. Observation.code.coding allows additional coding from other code systems."
      },
      {
        "id": "Observation.code.coding",
        "path": "Observation.code.coding",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "system"
            }
          ],
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Observation.code.coding:11073MDC",
        "path": "Observation.code.coding",
        "sliceName": "11073MDC",
        "short": "11073 MDC code",
        "definition": "Code defined by the ISO/IEEE 11073-10101 Nomenclature",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Observation.code.coding:11073MDC.system",
        "path": "Observation.code.coding.system",
        "min": 1,
        "fixedUri": "urn:iso:std:iso:11073:10101"
      },
      {
        "id": "Observation.code.coding:11073MDC.code",
        "path": "Observation.code.coding.code",
        "min": 1
      },
      {
        "id": "Observation.subject",
        "path": "Observation.subject",
        "definition": "Observation.subject shall be present and refer to a Patient resource or PoC Device resource.",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": "http://hl7.org/fhir/StructureDefinition/Patient"
          },
          {
            "code": "Reference",
            "targetProfile": "http://devices.fhir.org/StructureDefinition/PoCDevice"
          }
        ]
      },
      {
        "id": "Observation.value[x]",
        "path": "Observation.value[x]",
        "definition": "Either Observation.valueCodeableConcept or Observation.valueString or, if there is no value, Observation.dataAbsentReason shall be present.",
        "type": [
          {
            "code": "CodeableConcept"
          },
          {
            "code": "string"
          }
        ],
        "condition": [
          "pocd-obs-3"
        ]
      },
      {
        "id": "Observation.dataAbsentReason",
        "path": "Observation.dataAbsentReason",
        "condition": [
          "pocd-obs-3"
        ]
      },
      {
        "id": "Observation.device",
        "path": "Observation.device",
        "definition": "Observation.device shall be present and refer to the Enumeration DeviceMetric resource where this observation belongs to.",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": "http://devices.fhir.org/StructureDefinition/EnumerationDeviceMetric"
          }
        ]
      }
    ]
  }
}