description: Base profile for Helsenorge Appointment information. Defined by Helsenorge based on national profile. package_name: no.nhn.fhir.helsenorge.profiles derivation: constraint name: HnBasisAppointment type: Appointment elements: description: constraint: must-be-max-1000-chars: {human: Length MUST be <= 1000, source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: error, expression: $this.length() <= 1000} index: 43 serviceCategory: binding: {strength: required, valueSet: 'http://helsenorge.no/fhir/ValueSet/hn-appointment-ServiceCategory-code-vs'} index: 31 elements: coding: constraint: inv-4: {human: If code is used in a codable consept the system must be used, source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: error, expression: code > '' implies (system > '' )} index: 32 slot: {index: 48} meta: short: Metadata used for Appointment in Helsenorge index: 0 elements: lastUpdated: {short: Last updated timestamp for the resource, mustSupport: true, index: 1} security: index: 2 slicing: rules: open discriminator: - {path: system, type: value} min: null slices: tilgangsbegrensning: match: {system: 'urn:oid:2.16.578.1.12.4.1.1.9603'} schema: short: Betinget tilgangsbegrensning metadata mustSupport: true binding: {strength: required, valueSet: 'http://helsenorge.no/fhir/ValueSet/hn-tilgangsbegrensning-vs'} index: 3 elements: system: pattern: {type: Uri, value: 'urn:oid:2.16.578.1.12.4.1.1.9603'} index: 4 code: {index: 5} required: [system, code] tag: index: 6 slicing: rules: open discriminator: - {path: system, type: value} min: null slices: varsling: match: {system: 'http://helsenorge.no/fhir/varsling'} schema: short: Varsling metadata mustSupport: true array: true binding: {strength: required, valueSet: 'http://helsenorge.no/fhir/ValueSet/hn-varsling-vs'} index: 7 extensions: varselorganisasjon: {url: 'http://helsenorge.no/fhir/StructureDefinition/hn-extension-varselorganisasjon', min: 0, max: 1, type: Extension, index: 8} elements: extension: type: Extension url: http://helsenorge.no/fhir/StructureDefinition/hn-extension-varselorganisasjon index: 8 slicing: slices: varselorganisasjon: match: {} schema: {type: Extension, url: 'http://helsenorge.no/fhir/StructureDefinition/hn-extension-varselorganisasjon', index: 8} min: 0 max: 1 system: pattern: {type: Uri, value: 'http://helsenorge.no/fhir/varsling'} index: 9 code: {index: 10} required: [system, code] paminnelse: match: {system: 'http://helsenorge.no/fhir/paminnelse'} schema: short: PÄminnelse metadata mustSupport: true binding: {strength: required, valueSet: 'http://helsenorge.no/fhir/ValueSet/hn-paminnelse-vs'} index: 11 elements: system: pattern: {type: Uri, value: 'http://helsenorge.no/fhir/paminnelse'} index: 12 code: {index: 13} required: [system, code] required: [lastUpdated] specialty: index: 35 elements: coding: constraint: inv-4: {human: If code is used in a codable consept the system must be used, source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: error, expression: code > '' implies (system > '' )} index: 36 cancelationReason: short: Reason for cancellation binding: {strength: required, valueSet: 'http://helsenorge.no/fhir/ValueSet/hn-cancellation-reason-vs'} index: 29 elements: coding: constraint: inv-4: {human: If code is used in a codable consept the system must be used, source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: error, expression: code > '' implies (system > '' )} index: 30 requestedPeriod: {index: 54} patientInstruction: constraint: must-be-max-1000-chars: {human: Length MUST be <= 1000, source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: error, expression: $this.length() <= 1000} index: 50 implicitRules: {index: 14} reasonCode: {index: 40} participant: constraint: appointment-participant-actor-patient-reference-identifier: {human: When actor is a Patient logical reference MUST be used, source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: warning, expression: actor.type = 'Patient' implies actor.identifier.exists()} appointment-participant-actor-patient-reference-reference: {human: 'When actor is a Patient, literal reference (relative, internal or absolute) MUST not be used', source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: warning, expression: (actor.type = 'Patient') implies actor.reference.exists().not()} index: 51 elements: type: elements: coding: constraint: inv-4: {human: If code is used in a codable consept the system must be used, source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: error, expression: code > '' implies (system > '' )} index: 52 actor: type: Reference short: When actor is a Patient logical reference MUST be used refers: ['http://hl7.no/fhir/StructureDefinition/no-basis-Location', 'http://hl7.no/fhir/StructureDefinition/no-basis-Patient', 'http://hl7.no/fhir/StructureDefinition/no-basis-Practitioner', 'http://hl7.no/fhir/StructureDefinition/no-basis-PractitionerRole'] index: 53 required: [actor] serviceType: index: 33 elements: coding: constraint: inv-4: {human: If code is used in a codable consept the system must be used, source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: error, expression: code > '' implies (system > '' )} index: 34 extension: index: 17 slicing: slices: virtualService: match: {} schema: index: 17 extensions: channelType: url: null index: 18 elements: value: choices: [] index: 20 elements: extension: index: 18 slicing: slices: channelType: match: {} schema: index: 18 elements: value: choices: [] index: 20 recurring: match: {} schema: {type: Extension, mustSupport: true, url: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-Recurring', index: 21} min: 0 max: 1 postponementReason: match: {} schema: {type: Extension, url: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-postponementreason', index: 22} min: 0 max: 1 consultationType: match: {} schema: {type: Extension, mustSupport: true, url: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-consultationType', index: 23} min: 0 max: 0 supportingInformation: index: 44 slicing: rules: open discriminator: - {path: resolve(), type: type} min: 1 slices: kommunikasjonspart: match: {} schema: short: Kommunikasjonspart refers: ['http://hl7.org/fhir/StructureDefinition/Organization'] type: Reference _required: true index: 45 min: 1 max: 1 documentReference: match: {} schema: short: Document reference refers: ['http://hl7.no/fhir/StructureDefinition/no-basis-DocumentReference'] type: Reference index: 46 min: 0 max: 1 flag: match: {} schema: short: Flag refers: ['http://helsenorge.no/fhir/StructureDefinition/hn-basis-Flag'] type: Reference array: true max: 4 index: 47 min: 0 max: 4 priority: {index: 42} appointmentType: index: 37 elements: coding: constraint: inv-4: {human: If code is used in a codable consept the system must be used, source: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment', severity: error, expression: code > '' implies (system > '' )} index: 38 slicing: slices: helsenorge: match: {} schema: short: Codes from value set mustSupport: true binding: {strength: required, valueSet: 'http://helsenorge.no/fhir/ValueSet/hn-appointment-AppointmentType-code-vs'} index: 39 min: 0 max: 1 status: binding: {strength: required, valueSet: 'http://helsenorge.no/fhir/ValueSet/hn-appointment-status-vs'} index: 28 language: {index: 15} comment: {index: 49} identifier: index: 24 elements: system: {index: 25} value: {index: 26} assigner: type: Reference refers: ['http://hl7.no/fhir/StructureDefinition/no-basis-Organization', 'http://hl7.org/fhir/StructureDefinition/Organization'] index: 27 required: [assigner, value, system] reasonReference: {index: 41} text: {index: 16} package_version: 2.5.13-beta extensions: virtualService: url: null index: 17 extensions: channelType: url: null index: 18 elements: value: choices: [] index: 20 elements: extension: index: 18 slicing: slices: channelType: match: {} schema: index: 18 elements: value: choices: [] index: 20 recurring: {url: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-Recurring', min: 0, max: 1, type: Extension, mustSupport: true, index: 21} postponementReason: {url: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-postponementreason', min: 0, max: 1, type: Extension, index: 22} consultationType: {url: 'http://helsenorge.no/fhir/StructureDefinition/hn-basis-consultationType', min: 0, max: 0, type: Extension, mustSupport: true, index: 23} class: profile kind: resource url: http://helsenorge.no/fhir/StructureDefinition/hn-basis-appointment base: http://hl7.no/fhir/StructureDefinition/no-basis-Appointment version: 2.5.4 required: [supportingInformation, identifier, appointmentType, serviceCategory]