PackagesCanonicalsLogsProblems
    Packages
    synapxe.sgcdi@1.1.0
    https://fhir.synapxe.sg/StructureDefinition/profile-cr-procedure
description: null
package_name: synapxe.sgcdi
derivation: constraint
name: Procedure
type: Procedure
elements:
  category: {index: 18}
  report:
    type: Reference
    refers: ['https://fhir.synapxe.sg/StructureDefinition/profile-cr-diagnosticreport']
    index: 79
    elements:
      id: {index: 80}
      extension: {index: 81}
      reference: {index: 82}
      type: {index: 83}
      identifier: {index: 84}
      display: {index: 85}
    extensions: {}
    required: [reference]
  instantiatesCanonical: {index: 12}
  instantiatesUri: {index: 13}
  focalDevice:
    elements:
      id: {index: 96}
      extension: {index: 97}
      modifierExtension: {index: 98}
      action:
        type: CodeableConcept
        index: 99
        extensions: {}
        elements:
          extension: {index: 100}
      manipulated:
        type: Reference
        refers: ['https://fhir.synapxe.sg/StructureDefinition/profile-device']
        index: 101
        elements:
          id: {index: 102}
          extension: {index: 103}
        extensions: {}
    extensions: {}
    required: [action]
  supportingInfo: {index: 115}
  encounter:
    type: Reference
    refers: ['https://fhir.synapxe.sg/StructureDefinition/profile-encounter']
    index: 27
    elements:
      id: {index: 28}
      extension: {index: 29}
      reference: {index: 30}
      type:
        pattern: {type: Uri, value: Encounter}
        index: 31
      identifier:
        index: 32
        elements:
          id: {index: 33}
          extension: {index: 34}
          use: {index: 35}
          type: {index: 36}
          system:
            pattern: {type: Uri, value: 'https://fhir.synapxe.sg/NamingSystem/event-id'}
            index: 37
          value: {index: 38}
          period: {index: 39}
          assigner: {index: 40}
        extensions: {}
        required: [value, system]
      display: {index: 41}
    extensions: {}
    required: [identifier]
  reported:
    choices: []
    index: 49
  statusReason:
    type: CodeableConcept
    index: 16
    extensions: {}
    elements:
      extension: {index: 17}
  outcome:
    type: CodeableConcept
    index: 77
    extensions: {}
    elements:
      extension: {index: 78}
  recorded: {index: 46}
  note: {type: Annotation, index: 95}
  reason:
    index: 68
    elements:
      id: {index: 69}
      extension: {index: 70}
      concept:
        type: CodeableConcept
        index: 71
        extensions: {}
        elements:
          extension: {index: 72}
          coding:
            elements:
              version: {index: 73}
      reference: {index: 74}
    extensions: {}
    required: [concept]
  contained:
    short: Item used in healthcare
    constraint:
      dom-2: {human: 'If the resource is contained in another resource, it SHALL NOT contain nested Resources', source: 'http://hl7.org/fhir/StructureDefinition/DomainResource', severity: error, expression: contained.contained.empty()}
      dom-4: {human: 'If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated', source: 'http://hl7.org/fhir/StructureDefinition/DomainResource', severity: error, expression: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()}
      dom-3: {human: 'If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource', source: 'http://hl7.org/fhir/StructureDefinition/DomainResource', severity: error, expression: 'contained.where(((''#''+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = ''#'').exists() or descendants().where(ofType(canonical) = ''#'').exists() or descendants().where(ofType(canonical) = ''#'').exists()).not()).trace(''unmatched'', id).empty()'}
      dom-6: {human: A resource should have narrative for robust management, source: 'http://hl7.org/fhir/StructureDefinition/DomainResource', severity: warning, expression: text.`div`.exists()}
      dom-5: {human: 'If a resource is contained in another resource, it SHALL NOT have a security label', source: 'http://hl7.org/fhir/StructureDefinition/DomainResource', severity: error, expression: contained.meta.security.empty()}
      dev-1: {human: only one Device.name.display SHALL be true when there is more than one Device.name, source: 'http://hl7.org/fhir/StructureDefinition/Device', severity: error, expression: name.where(display=true).count() <= 1}
    index: 0
    slicing:
      rules: open
      discriminator:
      - {path: $this, type: value}
      min: null
      slices:
        ServiceRequest:
          match: {}
          schema: {type: Resource, short: 'Contained, inline Resources', index: 1}
          max: 1
        DiagnosticReport:
          match: {}
          schema:
            type: Resource
            short: Contained, inline Resources
            index: 2
            elements:
              contained: {index: 3}
        Device:
          match: {}
          schema: {type: Resource, short: 'Contained, inline Resources', index: 4}
        MedicationAdministration:
          match: {}
          schema:
            type: Resource
            short: Contained, inline Resources
            index: 5
            elements:
              contained:
                index: 6
                elements:
                  identifier: {index: 7}
                slicing:
                  slices:
                    Medication:
                      match: {}
                      schema:
                        index: 8
                        elements:
                          identifier: {index: 9}
  complication:
    elements:
      id: {index: 86}
      extension: {index: 87}
      concept:
        type: CodeableConcept
        binding: {strength: required, valueSet: 'https://fhir.synapxe.sg/ValueSet/complication-types'}
        index: 88
        extensions: {}
        elements:
          extension: {index: 89}
          coding:
            elements:
              system:
                pattern: {type: Uri, value: 'https://fhir.synapxe.sg/CodeSystem/complication-types'}
                index: 90
      reference: {index: 91}
    extensions: {}
    required: [concept]
  occurrencePeriod: {type: Period, choiceOf: occurrence, index: 45}
  recorder: {index: 47}
  code:
    index: 19
    elements:
      coding:
        index: 20
        elements:
          system: {index: 21}
          code: {index: 22}
          display: {index: 23}
        required: [display, system, code]
    required: [coding]
  identifier:
    type: Identifier
    index: 10
    elements:
      system:
        pattern: {type: Uri, value: 'https://fhir.synapxe.sg/NamingSystem/sequence-no'}
        index: 11
  bodySite:
    type: CodeableConcept
    index: 75
    extensions: {}
    elements:
      extension: {index: 76}
  focus: {index: 26}
  basedOn:
    type: Reference
    refers: ['https://fhir.synapxe.sg/StructureDefinition/profile-cr-servicerequest']
    index: 14
  partOf: {type: Reference, index: 15}
  location:
    elements:
      id: {index: 62}
      extension: {index: 63}
      reference: {index: 64}
      type: {index: 65}
      identifier: {index: 66}
      display: {index: 67}
    extensions: {}
    required: [display]
  occurrenceDateTime: {type: dateTime, choiceOf: occurrence, index: 44}
  followUp:
    type: CodeableConcept
    index: 92
    extensions: {}
    elements:
      extension: {index: 93}
      coding:
        elements:
          system:
            pattern: {type: Uri, value: 'https://fhir.synapxe.sg/CodeSystem/followup-types'}
            index: 94
  subject:
    type: Reference
    refers: ['https://fhir.synapxe.sg/StructureDefinition/profile-patient']
    index: 24
    elements:
      display: {index: 25}
  occurrence:
    choices: [occurrenceDateTime, occurrencePeriod]
    index: 43
  performer:
    elements:
      id: {index: 50}
      extension: {index: 51}
      modifierExtension: {index: 52}
      function:
        type: CodeableConcept
        index: 53
        extensions: {}
        elements:
          extension: {index: 54}
      actor:
        type: Reference
        refers: ['https://fhir.synapxe.sg/StructureDefinition/profile-practitioner']
        index: 55
      onBehalfOf: {index: 56}
      period:
        index: 57
        elements:
          id: {index: 58}
          extension: {index: 59}
          start: {index: 60}
          end: {index: 61}
        extensions: {}
        required: [start, end]
    extensions: {}
  used:
    type: CodeableReference
    index: 104
    elements:
      id: {index: 105}
      extension: {index: 106}
      concept: {index: 107}
      reference:
        type: Reference
        refers: ['https://fhir.synapxe.sg/StructureDefinition/profile-device', 'https://fhir.synapxe.sg/StructureDefinition/profile-medicationadministration']
        index: 108
        elements:
          id: {index: 109}
          extension: {index: 110}
          reference: {index: 111}
          type: {index: 112}
          identifier: {index: 113}
          display: {index: 114}
        extensions: {}
        required: [reference]
    extensions: {}
    required: [reference]
package_version: 1.1.0
class: profile
kind: resource
url: https://fhir.synapxe.sg/StructureDefinition/profile-cr-procedure
base: http://hl7.org/fhir/StructureDefinition/Procedure
version: null
required: [note, identifier, code]