{
  "resourceType": "StructureDefinition",
  "id": "DevDaysIGtutorial-Observation",
  "url": "http://devdays-example-ig.com/fhir/StructureDefinition/DevDaysIGtutorial-Observation",
  "version": "1.1.0",
  "name": "DevDaysIGtutorialObservation",
  "title": "DevDaysIGtutorial-Observation",
  "status": "active",
  "date": "2019-06-10",
  "publisher": "Firely",
  "description": "Profile for laboratory results for an example use case in the DevDaysIGtutorial. Clients can use this profile to know which data it may receive. Server's laboratory results response SHALL conform to this profile.",
  "fhirVersion": "4.0.0",
  "kind": "resource",
  "abstract": false,
  "type": "Observation",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation",
  "derivation": "constraint",
  "snapshot": {},
  "differential": {
    "element": [
      {
        "id": "Observation.basedOn",
        "path": "Observation.basedOn",
        "max": "0"
      },
      {
        "id": "Observation.partOf",
        "path": "Observation.partOf",
        "max": "1"
      },
      {
        "id": "Observation.status",
        "path": "Observation.status",
        "mustSupport": true
      },
      {
        "id": "Observation.code",
        "path": "Observation.code",
        "mustSupport": true
      },
      {
        "id": "Observation.code.coding",
        "path": "Observation.code.coding",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Observation.code.coding.system",
        "path": "Observation.code.coding.system",
        "min": 1,
        "fixedUri": "http://loinc.org",
        "mustSupport": true
      },
      {
        "id": "Observation.code.coding.code",
        "path": "Observation.code.coding.code",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Observation.subject",
        "path": "Observation.subject",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://devdays-example-ig.com/fhir/StructureDefinition/DevDaysIGtutorial-Patient"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.effective[x]:effectiveDateTime",
        "path": "Observation.effective[x]",
        "sliceName": "effectiveDateTime",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Observation.value[x]:valueQuantity",
        "path": "Observation.value[x]",
        "sliceName": "valueQuantity",
        "type": [
          {
            "code": "Quantity"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.value[x]:valueQuantity.value",
        "path": "Observation.value[x].value",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Observation.value[x]:valueQuantity.unit",
        "path": "Observation.value[x].unit",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Observation.value[x]:valueQuantity.system",
        "path": "Observation.value[x].system",
        "min": 1,
        "fixedUri": "http://unitsofmeasure.org",
        "mustSupport": true
      },
      {
        "id": "Observation.value[x]:valueQuantity.code",
        "path": "Observation.value[x].code",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Observation.dataAbsentReason",
        "path": "Observation.dataAbsentReason",
        "mustSupport": true
      },
      {
        "id": "Observation.bodySite",
        "path": "Observation.bodySite",
        "max": "0"
      },
      {
        "id": "Observation.method",
        "path": "Observation.method",
        "min": 1
      },
      {
        "id": "Observation.method.extension",
        "path": "Observation.method.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Observation.method.extension:methodQualifier",
        "path": "Observation.method.extension",
        "sliceName": "methodQualifier",
        "min": 1,
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://devdays-example-ig.com/fhir/StructureDefinition/DevDaysIGtutorial-observation-method-qualifier"
            ]
          }
        ]
      },
      {
        "id": "Observation.method.extension:methodQualifier.value[x]:methodQualifier",
        "path": "Observation.method.extension.value[x]",
        "sliceName": "methodQualifier",
        "min": 1
      },
      {
        "id": "Observation.method.coding",
        "path": "Observation.method.coding",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Observation.method.coding.system",
        "path": "Observation.method.coding.system",
        "min": 1
      },
      {
        "id": "Observation.method.coding.code",
        "path": "Observation.method.coding.code",
        "min": 1
      },
      {
        "id": "Observation.device",
        "path": "Observation.device",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Observation.hasMember",
        "path": "Observation.hasMember",
        "max": "0"
      },
      {
        "id": "Observation.derivedFrom",
        "path": "Observation.derivedFrom",
        "max": "0"
      },
      {
        "id": "Observation.component",
        "path": "Observation.component",
        "max": "0"
      }
    ]
  }
}