PackagesCanonicalsLogsProblems
    Packages
    ca.infoway.io.core@1.0.0-dft-preballot-beta-01
    http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/observation-resultsradiology-ca-core
description: This profile applies constraints to the Observation resource for CA Core+ to support structured radiology findings in the pan-Canadian context.
package_name: ca.infoway.io.core
derivation: constraint
name: ObservationResultsRadiologyCACore
type: Observation
elements:
  category:
    type: CodeableConcept
    mustSupport: true
    index: 1
    slicing:
      rules: open
      discriminator:
      - {path: $this, type: pattern}
      min: 1
      slices:
        radiology:
          match:
            coding:
            - {code: imaging, system: 'http://terminology.hl7.org/CodeSystem/observation-category'}
          schema:
            mustSupport: true
            pattern:
              type: CodeableConcept
              value:
                coding:
                - {code: imaging, system: 'http://terminology.hl7.org/CodeSystem/observation-category'}
            _required: true
            index: 2
          min: 1
          max: 1
  encounter:
    type: Reference
    refers: ['http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/encounter-ca-core']
    index: 6
  value:
    choices: []
    index: 12
    slicing:
      rules: open
      ordered: false
      discriminator:
      - {path: $this, type: type}
      min: null
      slices:
        valueString:
          match: {}
          schema:
            mustSupport: true
            choices: [valueString]
            index: 14
          min: 0
          max: 1
  valueString:
    type: string
    mustSupport: true
    choiceOf: value
    index: 15
    slicing:
      slices:
        valueString:
          match: {}
          schema: {type: string, mustSupport: true, choiceOf: value, index: 15}
          min: 0
          max: 1
  component:
    mustSupport: true
    index: 16
    slicing:
      rules: closed
      description: Slicing based on value[x] type.
      discriminator:
      - {path: value, type: type}
      min: null
      slices:
        observationText:
          match: {}
          schema:
            short: Observation Text
            array: true
            index: 17
            elements:
              code:
                type: CodeableConcept
                binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/uv/ips/ValueSet/results-radiology-txtobs-snomed-dicom-loinc-uv-ips'}
                index: 18
              value:
                choices: [valueString]
                index: 20
              valueString: {type: string, choiceOf: value, index: 21}
            required: [valueString, value]
        observationCode:
          match: {}
          schema:
            short: Observation Code
            array: true
            index: 22
            elements:
              code:
                type: CodeableConcept
                binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/uv/ips/ValueSet/results-radiology-observations-uv-ips'}
                index: 23
              value:
                choices: [valueCodeableConcept]
                index: 25
              valueCodeableConcept: {type: CodeableConcept, choiceOf: value, index: 26}
            required: [value, valueCodeableConcept]
        numericQuantityMeasurement:
          match: {}
          schema:
            short: Observation Measurement, including linear, area and volume quantity measurements
            array: true
            index: 27
            elements:
              code:
                type: CodeableConcept
                binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/uv/ips/ValueSet/results-radiology-numobs-snomed-dicom-uv-ips'}
                index: 28
              value:
                choices: []
                index: 30
            required: [value]
        numericRangeMeasurement:
          match: {}
          schema:
            short: Observation Measurement, including linear, area and volume range measurements
            array: true
            index: 31
            elements:
              code:
                type: CodeableConcept
                binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/uv/ips/ValueSet/results-radiology-numobs-snomed-dicom-uv-ips'}
                index: 32
              value:
                choices: []
                index: 34
            required: [value]
        numericRatioMeasurement:
          match: {}
          schema:
            short: Observation Measurement, including linear, area and volume ratio measurements
            array: true
            index: 35
            elements:
              code:
                type: CodeableConcept
                binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/uv/ips/ValueSet/results-radiology-numobs-snomed-dicom-uv-ips'}
                index: 36
              value:
                choices: []
                index: 38
            required: [value]
        numericSampledDataMeasurement:
          match: {}
          schema:
            short: Observation Measurement, including linear, area and volume sampled data measurements
            array: true
            index: 39
            elements:
              code:
                type: CodeableConcept
                binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/uv/ips/ValueSet/results-radiology-numobs-snomed-dicom-uv-ips'}
                index: 40
              value:
                choices: []
                index: 42
            required: [value]
  effective[x]:
    extensions:
      data-absent-reason: {url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', min: 0, max: 1, short: 'effective[x] absence reason', type: Extension, mustSupport: true, index: 9}
    elements:
      extension:
        short: effective[x] absence reason
        type: Extension
        mustSupport: true
        url: http://hl7.org/fhir/StructureDefinition/data-absent-reason
        index: 9
        slicing:
          slices:
            data-absent-reason:
              match: {}
              schema: {short: 'effective[x] absence reason', type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', index: 9}
              min: 0
              max: 1
  effective:
    mustSupport: true
    choices: []
    index: 8
  code:
    binding: {strength: example, valueSet: 'http://fhir.infoway-inforoute.ca/io/cacore/ValueSet/pCLOCD'}
    index: 3
  partOf:
    type: Reference
    refers: ['http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/ImagingStudy-ca-core']
    index: 0
  subject:
    type: Reference
    mustSupport: true
    refers: ['http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/patient-ca-core']
    index: 4
    elements:
      reference: {mustSupport: true, index: 5}
    required: [reference]
  performer: {mustSupport: true, index: 10}
package_version: 1.0.0-dft-preballot-beta-01
class: profile
kind: resource
url: http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/observation-resultsradiology-ca-core
base: http://hl7.org/fhir/StructureDefinition/Observation
version: null
required: [category, effective, performer]