{
  "resourceType": "StructureDefinition",
  "meta": {
    "lastUpdated": "2018-02-20T12:45:02.729+00:00"
  },
  "url": "http://hl7.org/fhir/ips/StructureDefinition/observation-imaging-uv-ips",
  "name": "Observation-imaging-uv-ips",
  "status": "draft",
  "experimental": false,
  "date": "2018-02-06T08:53:52.315+00:00",
  "contact": [
    {
      "name": "Giorgio Cangioli"
    }
  ],
  "description": "This profile represents the contraints applied to the Observation resource by the IPS project, which specifies an imaging observation for the international patient summary based on the FHIR standard STU3. \r\n\r\nThis observation may represent the conclusions of a diagnostic procedure such a Chest RX, or it may group the set of results produced by that single or multi modality procedure. \r\n\r\nIn the latter case, the main observation (this one) carries the overall conclusion of the study and/or a global interpretation by the observer of the study as value of this observation; and may references the atomic results of the study  as \"child observations\".\r\n\r\nIt allows also to provide details about the related study using the event-partOf extension referring an ImagingStudy 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"
      },
      {
        "id": "Observation.extension",
        "path": "Observation.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Observation.extension:partOf",
        "path": "Observation.extension",
        "sliceName": "partOf",
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/event-partOf"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.extension:partOf.valueReference:valueReference",
        "path": "Observation.extension.valueReference",
        "sliceName": "valueReference",
        "type": [
          {
            "code": "Reference",
            "profile": "http://hl7.org/fhir/ips/StructureDefinition/imagingstudy-uv-ips"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.extension:partOf.valueReference:valueReference.identifier",
        "path": "Observation.extension.valueReference.identifier",
        "max": "0"
      },
      {
        "id": "Observation.category",
        "path": "Observation.category",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": "http://hl7.org/fhir/ips/StructureDefinition/CodeableConcept-uv-ips"
          }
        ],
        "fixedCodeableConcept": {
          "coding": [
            {
              "system": "http://hl7.org/fhir/observation-category",
              "code": "imaging",
              "display": "Imaging"
            }
          ]
        },
        "mustSupport": true
      },
      {
        "id": "Observation.code",
        "path": "Observation.code",
        "label": "Diagnostic Procedure Code",
        "definition": "Describes what was observed. Sometimes this is called the observation \"name\".\r\nIn this profile the code of the containing observation (the organizer result in the CDA implementation) may correspond to the procedure code (e.g. Chest X-Ray).",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": "http://hl7.org/fhir/ips/StructureDefinition/CodeableConcept-uv-ips"
          }
        ],
        "mustSupport": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "ObservationCode"
            }
          ],
          "strength": "extensible",
          "valueSetUri": "http://hl7.org/fhir/ips/ValueSet/imaging-observations-uv-ips"
        }
      },
      {
        "id": "Observation.subject",
        "path": "Observation.subject",
        "definition": "The patient, or group of patients, location, or device whose characteristics (direct or indirect) are described by the observation and into whose record the observation is placed.  Comments: Indirect characteristics may be those of a specimen, fetus, donor,  other observer (for example a relative or EMT), or any observation made about the subject.\r\n\r\nIn this profile is constrained to the patient",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": "http://hl7.org/fhir/ips/StructureDefinition/patient-uv-ips"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.subject.reference",
        "path": "Observation.subject.reference",
        "label": "Patient ID"
      },
      {
        "id": "Observation.subject.identifier",
        "path": "Observation.subject.identifier",
        "max": "0"
      },
      {
        "id": "Observation.effective[x]",
        "path": "Observation.effective[x]",
        "label": "Date/Time of the Imaging Procedure",
        "definition": "The time or time-period the observed value is asserted as being true. For biological subjects - e.g. human patients - this is usually called the \"physiologically relevant time\". This is usually either the time of the procedure or of specimen collection, but very often the source of the date/time is not known, only the date/time itself.",
        "mustSupport": true
      },
      {
        "id": "Observation.performer",
        "path": "Observation.performer",
        "label": "Human Observer",
        "type": [
          {
            "code": "Reference",
            "targetProfile": "http://hl7.org/fhir/ips/StructureDefinition/practitioner-uv-ips"
          },
          {
            "code": "Reference",
            "targetProfile": "http://hl7.org/fhir/ips/StructureDefinition/organization-observation-uv-ips"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.performer.identifier",
        "path": "Observation.performer.identifier",
        "max": "0"
      },
      {
        "id": "Observation.valueString:valueString",
        "path": "Observation.valueString",
        "sliceName": "valueString",
        "label": "Overall Conclusion",
        "type": [
          {
            "code": "string"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.bodySite",
        "path": "Observation.bodySite",
        "label": "body site",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": "http://hl7.org/fhir/ips/StructureDefinition/CodeableConcept-uv-ips"
          }
        ],
        "mustSupport": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "BodySite"
            }
          ],
          "strength": "example",
          "valueSetReference": {
            "reference": "http://hl7.org/fhir/ips/ValueSet/target-site-uv-ips"
          }
        }
      },
      {
        "id": "Observation.device",
        "path": "Observation.device",
        "type": [
          {
            "code": "Reference",
            "targetProfile": "http://hl7.org/fhir/ips/StructureDefinition/device-observer-uv-ips"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.device.identifier",
        "path": "Observation.device.identifier",
        "max": "0"
      },
      {
        "id": "Observation.related",
        "path": "Observation.related",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "type"
            }
          ],
          "rules": "open"
        },
        "mustSupport": true
      },
      {
        "id": "Observation.related:hasMember",
        "path": "Observation.related",
        "sliceName": "hasMember",
        "constraint": [
          {
            "key": "hasMemberOrComponent",
            "severity": "error",
            "human": "component and hasMember are mutually exclusive",
            "expression": "../related[type='has-member'] or ../component"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.related:hasMember.type",
        "path": "Observation.related.type",
        "min": 1,
        "fixedCode": "has-member"
      },
      {
        "id": "Observation.related:hasMember.target",
        "path": "Observation.related.target",
        "type": [
          {
            "code": "Reference",
            "targetProfile": "http://hl7.org/fhir/ips/StructureDefinition/observation-member-imaging-uv-ips"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.related:hasMember.target.reference",
        "path": "Observation.related.target.reference",
        "mustSupport": true
      },
      {
        "id": "Observation.related:hasMember.target.identifier",
        "path": "Observation.related.target.identifier",
        "max": "0"
      },
      {
        "id": "Observation.component",
        "path": "Observation.component",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "value[x]"
            }
          ],
          "rules": "open"
        },
        "requirements": "Required if not(exists(Observation.valueString))",
        "constraint": [
          {
            "key": "hasMemberOrComponent",
            "severity": "error",
            "human": "component and hasMember are mutually exclusive",
            "expression": "../related[type='has-member'] or ../component"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Observation.component:observationText",
        "path": "Observation.component",
        "sliceName": "observationText",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Observation.component:observationText.code",
        "path": "Observation.component.code",
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "ObservationCode"
            }
          ],
          "strength": "example",
          "valueSetReference": {
            "reference": "http://hl7.org/fhir/ips/ValueSet/imaging-obs-code"
          }
        }
      },
      {
        "id": "Observation.component:observationText.code.coding",
        "path": "Observation.component.code.coding",
        "binding": {
          "strength": "extensible",
          "valueSetUri": "http://hl7.org/fhir/ips/ValueSet/imaging-txtobs-code"
        }
      },
      {
        "id": "Observation.component:observationText.valueString:valueString",
        "path": "Observation.component.valueString",
        "sliceName": "valueString",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "Observation.component:observationText.dataAbsentReason",
        "path": "Observation.component.dataAbsentReason",
        "max": "0"
      },
      {
        "id": "Observation.component:observationText.interpretation",
        "path": "Observation.component.interpretation",
        "max": "0"
      },
      {
        "id": "Observation.component:observationText.referenceRange",
        "path": "Observation.component.referenceRange",
        "max": "0"
      },
      {
        "id": "Observation.component:observationCode",
        "path": "Observation.component",
        "sliceName": "observationCode",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Observation.component:observationCode.code.coding",
        "path": "Observation.component.code.coding",
        "binding": {
          "strength": "extensible",
          "valueSetUri": "http://hl7.org/fhir/ips/ValueSet/imaging-codedobs-code"
        }
      },
      {
        "id": "Observation.component:observationCode.valueCodeableConcept:valueCodeableConcept",
        "path": "Observation.component.valueCodeableConcept",
        "sliceName": "valueCodeableConcept",
        "min": 1,
        "type": [
          {
            "code": "CodeableConcept"
          }
        ]
      },
      {
        "id": "Observation.component:observationCode.valueCodeableConcept:valueCodeableConcept.coding",
        "path": "Observation.component.valueCodeableConcept.coding",
        "binding": {
          "strength": "example",
          "valueSetUri": "http://hl7.org/fhir/ips/ValueSet/imaging-codedobs-value"
        }
      },
      {
        "id": "Observation.component:observationCode.dataAbsentReason",
        "path": "Observation.component.dataAbsentReason",
        "max": "0"
      },
      {
        "id": "Observation.component:observationCode.interpretation",
        "path": "Observation.component.interpretation",
        "max": "0"
      },
      {
        "id": "Observation.component:observationCode.referenceRange",
        "path": "Observation.component.referenceRange",
        "max": "0"
      },
      {
        "id": "Observation.component:numericMeasurement",
        "path": "Observation.component",
        "sliceName": "numericMeasurement",
        "mustSupport": true
      },
      {
        "id": "Observation.component:numericMeasurement.code",
        "path": "Observation.component.code",
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "ObservationCode"
            }
          ],
          "strength": "extensible",
          "description": "Codes identifying names of numeric measurements",
          "valueSetUri": "http://hl7.org/fhir/ips/ValueSet/imaging-num-measure-code"
        }
      },
      {
        "id": "Observation.component:numericMeasurement.value[x]",
        "path": "Observation.component.value[x]",
        "type": [
          {
            "code": "Quantity"
          },
          {
            "code": "Range"
          },
          {
            "code": "Ratio"
          }
        ]
      },
      {
        "id": "Observation.component:numericMeasurement.dataAbsentReason",
        "path": "Observation.component.dataAbsentReason",
        "max": "0"
      },
      {
        "id": "Observation.component:numericMeasurement.interpretation",
        "path": "Observation.component.interpretation",
        "max": "0"
      },
      {
        "id": "Observation.component:linearMeasurement",
        "path": "Observation.component",
        "sliceName": "linearMeasurement",
        "mustSupport": true
      },
      {
        "id": "Observation.component:linearMeasurement.code",
        "path": "Observation.component.code",
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "ObservationCode"
            }
          ],
          "strength": "extensible",
          "valueSetUri": "http://hl7.org/fhir/ips/ValueSet/imaging-linear-measure-code"
        }
      },
      {
        "id": "Observation.component:linearMeasurement.value[x]",
        "path": "Observation.component.value[x]",
        "type": [
          {
            "code": "Quantity"
          },
          {
            "code": "Range"
          },
          {
            "code": "Ratio"
          },
          {
            "code": "SampledData"
          }
        ]
      },
      {
        "id": "Observation.component:linearMeasurement.dataAbsentReason",
        "path": "Observation.component.dataAbsentReason",
        "max": "0"
      },
      {
        "id": "Observation.component:linearMeasurement.interpretation",
        "path": "Observation.component.interpretation",
        "max": "0"
      },
      {
        "id": "Observation.component:areaMeasurement",
        "path": "Observation.component",
        "sliceName": "areaMeasurement",
        "mustSupport": true
      },
      {
        "id": "Observation.component:areaMeasurement.code",
        "path": "Observation.component.code",
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "ObservationCode"
            }
          ],
          "strength": "extensible",
          "valueSetReference": {
            "reference": "http://hl7.org/fhir/ips/ValueSet/imaging-area-measure-code"
          }
        }
      },
      {
        "id": "Observation.component:areaMeasurement.value[x]",
        "path": "Observation.component.value[x]",
        "type": [
          {
            "code": "Quantity"
          },
          {
            "code": "Range"
          },
          {
            "code": "Ratio"
          }
        ]
      },
      {
        "id": "Observation.component:areaMeasurement.dataAbsentReason",
        "path": "Observation.component.dataAbsentReason",
        "max": "0"
      },
      {
        "id": "Observation.component:areaMeasurement.interpretation",
        "path": "Observation.component.interpretation",
        "max": "0"
      },
      {
        "id": "Observation.component:volumeMeasurement",
        "path": "Observation.component",
        "sliceName": "volumeMeasurement",
        "mustSupport": true
      },
      {
        "id": "Observation.component:volumeMeasurement.code",
        "path": "Observation.component.code",
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "ObservationCode"
            }
          ],
          "strength": "extensible",
          "valueSetUri": "http://hl7.org/fhir/ips/ValueSet/imaging-volume-measure-code"
        }
      },
      {
        "id": "Observation.component:volumeMeasurement.value[x]",
        "path": "Observation.component.value[x]",
        "type": [
          {
            "code": "Quantity"
          },
          {
            "code": "Range"
          },
          {
            "code": "Ratio"
          }
        ]
      },
      {
        "id": "Observation.component:volumeMeasurement.dataAbsentReason",
        "path": "Observation.component.dataAbsentReason",
        "max": "0"
      },
      {
        "id": "Observation.component:volumeMeasurement.interpretation",
        "path": "Observation.component.interpretation",
        "max": "0"
      }
    ]
  }
}