TRxHub IG
0.1.0 - ci-build

TRxHub IG - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: TRxHub Coverage

Official URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage Version: 0.1.0
Draft as of 2026-10-08 Computable Name: TRxHubCoverage

Coverage for TRxHub

Overview

Coverage is scoped per prescription and referenced via ServiceRequest.insurance on register-prescription ServiceRequests.

The Coverage defines who will be billed for the prescription and can either be an insurance specified in the Coverage or a Patient referenced in the Coverage.

Identifier

The identifier allows setting additional insurance information about the patient. TRxHub itself does not store the identifiers but only forwards them to the Mediservice ERP. Therefore, when reading a Coverage, the identifiers won't be returned.

Types

Coverage has either type insurance or self-pay which specifies who will be billed for the prescription.

Payor

The Payor is the insurer or patient who will be billed for the prescription.

When type is set to self-pay the Patient must be referenced in payor directly. No other entries are allowed.

If type is set to insurance the name of the insurer must be provided in payor.display. Additionally, an optional entry for supplementary insurance (Zusatzversicherung) can be added by providing the name of the insurer in payor.display

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Coverage C 0..* Coverage Insurance or medical plan or a payment agreement
Constraints: trxhub-cov-1, trxhub-cov-2, trxhub-cov-3
Coverage.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Coverage.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Coverage.Slices for identifier This element must be supported. This element is included in summaries. 0..1 Identifier Business Identifier for the coverage
Slice: Unordered, Closed by value:system

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for identifier.identifier:veka This element must be supported. This element is included in summaries. 0..1 Identifier VEKA (insurance card) number of the patient (20 digits)
Coverage.Slices for identifier.identifier:veka.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Coverage.Slices for identifier.identifier:veka.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:2.16.756.5.30.1.123.100.1.1.1
Coverage.Slices for identifier.identifier:veka.value This element must be supported. This element is included in summaries. C 1..1 string The value that is unique
Constraints: trxhub-cov-veka-length
Example General: 123456
Coverage.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code active | cancelled | draft | entered-in-error
Binding: TRxHub Coverage Status ValueSet (required)
Coverage.type This element must be supported. This element is included in summaries. 1..1 CodeableConcept Coverage category such as medical or accident
Binding: TRxHub Coverage Type ValueSet (required)
Coverage.type.coding This element must be supported. This element is included in summaries. 1..1 Coding Code defined by a terminology system
Coverage.type.coding.system This element must be supported. This element is included in summaries. 1..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-type
Coverage.type.coding.code This element must be supported. This element is included in summaries. 1..1 code Symbol in syntax defined by the system
Coverage.beneficiary This element must be supported. This element is included in summaries. C 1..1 Reference(Patient) Plan beneficiary
Constraints: trxhub-inv-patient-ref-only
Coverage.Slices for payor This element must be supported. This element is included in summaries. 1..* Reference(Organization | Patient | RelatedPerson) Issuer of the policy
Slice: Unordered, Closed by value:extension('https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).code

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer This element must be supported. This element is included in summaries. C 0..1 Reference(Patient) Reference to patient when type is self-pay
Constraints: trxhub-inv-patient-ref-only
Coverage.Slices for payor.payor:selfPayer.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: self-pay
Coverage.Slices for payor.payor:selfPayer.reference This element must be supported. This element is included in summaries. C 1..1 string Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:mainInsurance This element must be supported. This element is included in summaries. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the main insurance (Grundversicherung)
Coverage.Slices for payor.payor:mainInsurance.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:mainInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: main-insurance
Coverage.Slices for payor.payor:mainInsurance.display This element must be supported. This element is included in summaries. 1..1 string Text alternative for the resource
Coverage.Slices for payor.payor:supplementaryInsurance This element must be supported. This element is included in summaries. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the supplementary insurance (Zusatzversicherung)
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: supplementary-insurance
Coverage.Slices for payor.payor:supplementaryInsurance.display This element must be supported. This element is included in summaries. 1..1 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Coverage.identifier:veka.​use Base required IdentifierUse 📍4.0.1 FHIR Std.
Coverage.status Base required TRxHub Coverage Status ValueSet 📦0.1.0 This IG
Coverage.type Base required TRxHub Coverage Type ValueSet 📦0.1.0 This IG
Coverage.payor:selfPayer.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:mainInsurance.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:supplementaryInsurance.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
dom-2 error Coverage If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Coverage 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 contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Coverage If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Coverage If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Coverage A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
trxhub-cov-1 error Coverage If type is self-pay, exactly one payor with role self-pay must exist type.coding.where(code = 'self-pay').exists() implies (payor.count() = 1 and payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').exists())
trxhub-cov-2 error Coverage If type is insurance, a payor with role main-insurance must exist type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'main-insurance').exists()
trxhub-cov-3 error Coverage If type is insurance, a payor with role self-pay is not allowed type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').empty()
trxhub-cov-veka-length error Coverage.identifier:veka.value VEKA number must start with 807560 followed by 14 digits matches('^807560[0-9]{14}$')
trxhub-inv-patient-ref-only error Coverage.beneficiary, Coverage.payor:selfPayer Reference must point to a Patient resource reference.exists() implies (reference.startsWith('Patient/') or reference.startsWith('urn:uuid:'))

This structure is derived from Coverage

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Coverage C 0..* Coverage Insurance or medical plan or a payment agreement
Constraints: trxhub-cov-1, trxhub-cov-2, trxhub-cov-3
Coverage.Slices for identifier This element must be supported. 0..1 Identifier Business Identifier for the coverage
Slice: Unordered, Closed by value:system
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for identifier.identifier:veka This element must be supported. 0..1 Identifier VEKA (insurance card) number of the patient (20 digits)
Coverage.Slices for identifier.identifier:veka.system This element must be supported. 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:2.16.756.5.30.1.123.100.1.1.1
Coverage.Slices for identifier.identifier:veka.value This element must be supported. C 1..1 string The value that is unique
Constraints: trxhub-cov-veka-length
Coverage.status This element must be supported. 1..1 code active | cancelled | draft | entered-in-error
Binding: TRxHub Coverage Status ValueSet (required)
Coverage.type This element must be supported. 1..1 CodeableConcept Coverage category such as medical or accident
Binding: TRxHub Coverage Type ValueSet (required)
Coverage.type.coding This element must be supported. 1..1 Coding Code defined by a terminology system
Coverage.type.coding.system This element must be supported. 1..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-type
Coverage.type.coding.code This element must be supported. 1..1 code Symbol in syntax defined by the system
Coverage.Slices for payor This element must be supported. 1..* Reference(Organization | Patient | RelatedPerson) Issuer of the policy
Slice: Unordered, Closed by value:extension('https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).code
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer This element must be supported. C 0..1 Reference(Patient) Reference to patient when type is self-pay
Constraints: trxhub-inv-patient-ref-only
Coverage.Slices for payor.payor:selfPayer.extension 1..* Extension Extension
Coverage.Slices for payor.payor:selfPayer.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x]
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].system 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].code 0..1 code Symbol in syntax defined by the system
Required Pattern: self-pay
Coverage.Slices for payor.payor:selfPayer.reference This element must be supported. 1..1 string Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:selfPayer.display 0..0 Text alternative for the resource
Coverage.Slices for payor.payor:mainInsurance This element must be supported. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the main insurance (Grundversicherung)
Coverage.Slices for payor.payor:mainInsurance.extension 1..* Extension Extension
Coverage.Slices for payor.payor:mainInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x]
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].system 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].code 0..1 code Symbol in syntax defined by the system
Required Pattern: main-insurance
Coverage.Slices for payor.payor:mainInsurance.reference 0..0 Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:mainInsurance.display This element must be supported. 1..1 string Text alternative for the resource
Coverage.Slices for payor.payor:supplementaryInsurance This element must be supported. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the supplementary insurance (Zusatzversicherung)
Coverage.Slices for payor.payor:supplementaryInsurance.extension 1..* Extension Extension
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x]
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].system 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].code 0..1 code Symbol in syntax defined by the system
Required Pattern: supplementary-insurance
Coverage.Slices for payor.payor:supplementaryInsurance.reference 0..0 Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:supplementaryInsurance.display This element must be supported. 1..1 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Coverage.status Base required TRxHub Coverage Status ValueSet 📦0.1.0 This IG
Coverage.type Base required TRxHub Coverage Type ValueSet 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
trxhub-cov-1 error Coverage If type is self-pay, exactly one payor with role self-pay must exist type.coding.where(code = 'self-pay').exists() implies (payor.count() = 1 and payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').exists())
trxhub-cov-2 error Coverage If type is insurance, a payor with role main-insurance must exist type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'main-insurance').exists()
trxhub-cov-3 error Coverage If type is insurance, a payor with role self-pay is not allowed type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').empty()
trxhub-cov-veka-length error Coverage.identifier:veka.value VEKA number must start with 807560 followed by 14 digits matches('^807560[0-9]{14}$')
trxhub-inv-patient-ref-only error Coverage.beneficiary, Coverage.payor:selfPayer Reference must point to a Patient resource reference.exists() implies (reference.startsWith('Patient/') or reference.startsWith('urn:uuid:'))
NameFlagsCard.TypeDescription & Constraints    Filter: doco
Coverage C 0..* Coverage Insurance or medical plan or a payment agreement
Constraints: trxhub-cov-1, trxhub-cov-2, trxhub-cov-3
Coverage.id This element is included in summaries. 0..1 id Logical id of this artifact
Coverage.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Coverage.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Coverage.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Coverage.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Coverage.contained 0..* Resource Contained, inline Resources
Coverage.extension 0..* Extension Additional content defined by implementations
Coverage.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Coverage.Slices for identifier This element must be supported. This element is included in summaries. 0..1 Identifier Business Identifier for the coverage
Slice: Unordered, Closed by value:system

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for identifier.identifier:veka This element must be supported. This element is included in summaries. 0..1 Identifier VEKA (insurance card) number of the patient (20 digits)
Coverage.Slices for identifier.identifier:veka.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for identifier.identifier:veka.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.Slices for identifier.identifier:veka.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Coverage.Slices for identifier.identifier:veka.type This element is included in summaries. 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Coverage.Slices for identifier.identifier:veka.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:2.16.756.5.30.1.123.100.1.1.1
Coverage.Slices for identifier.identifier:veka.value This element must be supported. This element is included in summaries. C 1..1 string The value that is unique
Constraints: trxhub-cov-veka-length
Example General: 123456
Coverage.Slices for identifier.identifier:veka.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Coverage.Slices for identifier.identifier:veka.assigner This element is included in summaries. 0..1 Reference(Organization) Organization that issued id (may be just text)
Coverage.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code active | cancelled | draft | entered-in-error
Binding: TRxHub Coverage Status ValueSet (required)
Coverage.type This element must be supported. This element is included in summaries. 1..1 CodeableConcept Coverage category such as medical or accident
Binding: TRxHub Coverage Type ValueSet (required)
Coverage.type.id 0..1 string Unique id for inter-element referencing
Coverage.type.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.type.coding This element must be supported. This element is included in summaries. 1..1 Coding Code defined by a terminology system
Coverage.type.coding.id 0..1 string Unique id for inter-element referencing
Coverage.type.coding.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.type.coding.system This element must be supported. This element is included in summaries. 1..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-type
Coverage.type.coding.version This element is included in summaries. 0..1 string Version of the system - if relevant
Coverage.type.coding.code This element must be supported. This element is included in summaries. 1..1 code Symbol in syntax defined by the system
Coverage.type.coding.display This element is included in summaries. 0..1 string Representation defined by the system
Coverage.type.coding.userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Coverage.type.text This element is included in summaries. 0..1 string Plain text representation of the concept
Coverage.policyHolder This element is included in summaries. 0..1 Reference(Patient | RelatedPerson | Organization) Owner of the policy
Coverage.subscriber This element is included in summaries. 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
Coverage.subscriberId This element is included in summaries. 0..1 string ID assigned to the subscriber
Coverage.beneficiary This element must be supported. This element is included in summaries. C 1..1 Reference(Patient) Plan beneficiary
Constraints: trxhub-inv-patient-ref-only
Coverage.dependent This element is included in summaries. 0..1 string Dependent number
Coverage.relationship 0..1 CodeableConcept Beneficiary relationship to the subscriber
Binding: SubscriberRelationshipCodes (extensible): The relationship between the Subscriber and the Beneficiary (insured/covered party/patient).
Coverage.period This element is included in summaries. 0..1 Period Coverage start and end dates
Coverage.Slices for payor This element must be supported. This element is included in summaries. 1..* Reference(Organization | Patient | RelatedPerson) Issuer of the policy
Slice: Unordered, Closed by value:extension('https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).code

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer This element must be supported. This element is included in summaries. C 0..1 Reference(Patient) Reference to patient when type is self-pay
Constraints: trxhub-inv-patient-ref-only
Coverage.Slices for payor.payor:selfPayer.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:selfPayer.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].version This element is included in summaries. 0..1 string Version of the system - if relevant
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: self-pay
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].display This element is included in summaries. 0..1 string Representation defined by the system
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Coverage.Slices for payor.payor:selfPayer.reference This element must be supported. This element is included in summaries. C 1..1 string Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:selfPayer.type This element is included in summaries. 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Coverage.Slices for payor.payor:selfPayer.identifier This element is included in summaries. 0..1 Identifier Logical reference, when literal reference is not known
Coverage.Slices for payor.payor:mainInsurance This element must be supported. This element is included in summaries. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the main insurance (Grundversicherung)
Coverage.Slices for payor.payor:mainInsurance.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:mainInsurance.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:mainInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].version This element is included in summaries. 0..1 string Version of the system - if relevant
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: main-insurance
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].display This element is included in summaries. 0..1 string Representation defined by the system
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Coverage.Slices for payor.payor:mainInsurance.type This element is included in summaries. 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Coverage.Slices for payor.payor:mainInsurance.identifier This element is included in summaries. 0..1 Identifier Logical reference, when literal reference is not known
Coverage.Slices for payor.payor:mainInsurance.display This element must be supported. This element is included in summaries. 1..1 string Text alternative for the resource
Coverage.Slices for payor.payor:supplementaryInsurance This element must be supported. This element is included in summaries. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the supplementary insurance (Zusatzversicherung)
Coverage.Slices for payor.payor:supplementaryInsurance.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].version This element is included in summaries. 0..1 string Version of the system - if relevant
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: supplementary-insurance
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].display This element is included in summaries. 0..1 string Representation defined by the system
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Coverage.Slices for payor.payor:supplementaryInsurance.type This element is included in summaries. 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Coverage.Slices for payor.payor:supplementaryInsurance.identifier This element is included in summaries. 0..1 Identifier Logical reference, when literal reference is not known
Coverage.Slices for payor.payor:supplementaryInsurance.display This element must be supported. This element is included in summaries. 1..1 string Text alternative for the resource
Coverage.class 0..* BackboneElement Additional coverage classifications
Coverage.class.id 0..1 string Unique id for inter-element referencing
Coverage.class.extension 0..* Extension Additional content defined by implementations
Coverage.class.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Coverage.class.type This element is included in summaries. 1..1 CodeableConcept Type of class such as 'group' or 'plan'
Binding: CoverageClassCodes (extensible): The policy classifications, eg. Group, Plan, Class, etc.
Coverage.class.value This element is included in summaries. 1..1 string Value associated with the type
Coverage.class.name This element is included in summaries. 0..1 string Human readable description of the type and value
Coverage.order This element is included in summaries. 0..1 positiveInt Relative order of the coverage
Coverage.network This element is included in summaries. 0..1 string Insurer network
Coverage.costToBeneficiary 0..* BackboneElement Patient payments for services/products
Coverage.costToBeneficiary.id 0..1 string Unique id for inter-element referencing
Coverage.costToBeneficiary.extension 0..* Extension Additional content defined by implementations
Coverage.costToBeneficiary.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Coverage.costToBeneficiary.type This element is included in summaries. 0..1 CodeableConcept Cost category
Binding: CoverageCopayTypeCodes (extensible): The types of services to which patient copayments are specified.
Coverage.costToBeneficiary.value[x] This element is included in summaries. 1..1 The amount or percentage due from the beneficiary
Coverage.costToBeneficiary.value[x].valueQuantity Quantity(SimpleQuantity)
Coverage.costToBeneficiary.value[x].valueMoney Money
Coverage.costToBeneficiary.exception 0..* BackboneElement Exceptions for patient payments
Coverage.costToBeneficiary.exception.id 0..1 string Unique id for inter-element referencing
Coverage.costToBeneficiary.exception.extension 0..* Extension Additional content defined by implementations
Coverage.costToBeneficiary.exception.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Coverage.costToBeneficiary.exception.type This element is included in summaries. 1..1 CodeableConcept Exception category
Binding: ExampleCoverageFinancialExceptionCodes (example): The types of exceptions from the part or full value of financial obligations such as copays.
Coverage.costToBeneficiary.exception.period This element is included in summaries. 0..1 Period The effective period of the exception
Coverage.subrogation 0..1 boolean Reimbursement to insurer
Coverage.contract 0..* Reference(Contract) Contract details

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Coverage.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Coverage.identifier:veka.​use Base required IdentifierUse 📍4.0.1 FHIR Std.
Coverage.identifier:veka.​type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Coverage.status Base required TRxHub Coverage Status ValueSet 📦0.1.0 This IG
Coverage.type Base required TRxHub Coverage Type ValueSet 📦0.1.0 This IG
Coverage.relationship Base extensible SubscriberPolicyholder Relationship Codes 📍4.0.1 FHIR Std.
Coverage.payor:selfPayer.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:selfPayer.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Coverage.payor:mainInsurance.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:mainInsurance.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Coverage.payor:supplementaryInsurance.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:supplementaryInsurance.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Coverage.class.type Base extensible Coverage Class Codes 📍4.0.1 FHIR Std.
Coverage.costToBeneficiary.​type Base extensible Coverage Copay Type Codes 📍4.0.1 FHIR Std.
Coverage.costToBeneficiary.​exception.type Base example Example Coverage Financial Exception Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Coverage If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Coverage 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 contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Coverage If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Coverage If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Coverage A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
trxhub-cov-1 error Coverage If type is self-pay, exactly one payor with role self-pay must exist type.coding.where(code = 'self-pay').exists() implies (payor.count() = 1 and payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').exists())
trxhub-cov-2 error Coverage If type is insurance, a payor with role main-insurance must exist type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'main-insurance').exists()
trxhub-cov-3 error Coverage If type is insurance, a payor with role self-pay is not allowed type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').empty()
trxhub-cov-veka-length error Coverage.identifier:veka.value VEKA number must start with 807560 followed by 14 digits matches('^807560[0-9]{14}$')
trxhub-inv-patient-ref-only error Coverage.beneficiary, Coverage.payor:selfPayer Reference must point to a Patient resource reference.exists() implies (reference.startsWith('Patient/') or reference.startsWith('urn:uuid:'))

This structure is derived from Coverage

Summary

Mandatory: 4 elements(11 nested mandatory elements)
Must-Support: 20 elements
Fixed: 1 element
Prohibited: 3 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Coverage.identifier (Closed)
  • The element 1 is sliced based on the value of Coverage.payor (Closed)

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Coverage C 0..* Coverage Insurance or medical plan or a payment agreement
Constraints: trxhub-cov-1, trxhub-cov-2, trxhub-cov-3
Coverage.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Coverage.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Coverage.Slices for identifier This element must be supported. This element is included in summaries. 0..1 Identifier Business Identifier for the coverage
Slice: Unordered, Closed by value:system

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for identifier.identifier:veka This element must be supported. This element is included in summaries. 0..1 Identifier VEKA (insurance card) number of the patient (20 digits)
Coverage.Slices for identifier.identifier:veka.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Coverage.Slices for identifier.identifier:veka.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:2.16.756.5.30.1.123.100.1.1.1
Coverage.Slices for identifier.identifier:veka.value This element must be supported. This element is included in summaries. C 1..1 string The value that is unique
Constraints: trxhub-cov-veka-length
Example General: 123456
Coverage.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code active | cancelled | draft | entered-in-error
Binding: TRxHub Coverage Status ValueSet (required)
Coverage.type This element must be supported. This element is included in summaries. 1..1 CodeableConcept Coverage category such as medical or accident
Binding: TRxHub Coverage Type ValueSet (required)
Coverage.type.coding This element must be supported. This element is included in summaries. 1..1 Coding Code defined by a terminology system
Coverage.type.coding.system This element must be supported. This element is included in summaries. 1..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-type
Coverage.type.coding.code This element must be supported. This element is included in summaries. 1..1 code Symbol in syntax defined by the system
Coverage.beneficiary This element must be supported. This element is included in summaries. C 1..1 Reference(Patient) Plan beneficiary
Constraints: trxhub-inv-patient-ref-only
Coverage.Slices for payor This element must be supported. This element is included in summaries. 1..* Reference(Organization | Patient | RelatedPerson) Issuer of the policy
Slice: Unordered, Closed by value:extension('https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).code

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer This element must be supported. This element is included in summaries. C 0..1 Reference(Patient) Reference to patient when type is self-pay
Constraints: trxhub-inv-patient-ref-only
Coverage.Slices for payor.payor:selfPayer.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: self-pay
Coverage.Slices for payor.payor:selfPayer.reference This element must be supported. This element is included in summaries. C 1..1 string Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:mainInsurance This element must be supported. This element is included in summaries. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the main insurance (Grundversicherung)
Coverage.Slices for payor.payor:mainInsurance.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:mainInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: main-insurance
Coverage.Slices for payor.payor:mainInsurance.display This element must be supported. This element is included in summaries. 1..1 string Text alternative for the resource
Coverage.Slices for payor.payor:supplementaryInsurance This element must be supported. This element is included in summaries. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the supplementary insurance (Zusatzversicherung)
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: supplementary-insurance
Coverage.Slices for payor.payor:supplementaryInsurance.display This element must be supported. This element is included in summaries. 1..1 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Coverage.identifier:veka.​use Base required IdentifierUse 📍4.0.1 FHIR Std.
Coverage.status Base required TRxHub Coverage Status ValueSet 📦0.1.0 This IG
Coverage.type Base required TRxHub Coverage Type ValueSet 📦0.1.0 This IG
Coverage.payor:selfPayer.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:mainInsurance.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:supplementaryInsurance.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
dom-2 error Coverage If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Coverage 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 contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Coverage If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Coverage If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Coverage A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
trxhub-cov-1 error Coverage If type is self-pay, exactly one payor with role self-pay must exist type.coding.where(code = 'self-pay').exists() implies (payor.count() = 1 and payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').exists())
trxhub-cov-2 error Coverage If type is insurance, a payor with role main-insurance must exist type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'main-insurance').exists()
trxhub-cov-3 error Coverage If type is insurance, a payor with role self-pay is not allowed type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').empty()
trxhub-cov-veka-length error Coverage.identifier:veka.value VEKA number must start with 807560 followed by 14 digits matches('^807560[0-9]{14}$')
trxhub-inv-patient-ref-only error Coverage.beneficiary, Coverage.payor:selfPayer Reference must point to a Patient resource reference.exists() implies (reference.startsWith('Patient/') or reference.startsWith('urn:uuid:'))

Differential View

This structure is derived from Coverage

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Coverage C 0..* Coverage Insurance or medical plan or a payment agreement
Constraints: trxhub-cov-1, trxhub-cov-2, trxhub-cov-3
Coverage.Slices for identifier This element must be supported. 0..1 Identifier Business Identifier for the coverage
Slice: Unordered, Closed by value:system
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for identifier.identifier:veka This element must be supported. 0..1 Identifier VEKA (insurance card) number of the patient (20 digits)
Coverage.Slices for identifier.identifier:veka.system This element must be supported. 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:2.16.756.5.30.1.123.100.1.1.1
Coverage.Slices for identifier.identifier:veka.value This element must be supported. C 1..1 string The value that is unique
Constraints: trxhub-cov-veka-length
Coverage.status This element must be supported. 1..1 code active | cancelled | draft | entered-in-error
Binding: TRxHub Coverage Status ValueSet (required)
Coverage.type This element must be supported. 1..1 CodeableConcept Coverage category such as medical or accident
Binding: TRxHub Coverage Type ValueSet (required)
Coverage.type.coding This element must be supported. 1..1 Coding Code defined by a terminology system
Coverage.type.coding.system This element must be supported. 1..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-type
Coverage.type.coding.code This element must be supported. 1..1 code Symbol in syntax defined by the system
Coverage.beneficiary This element must be supported. C 1..1 Reference(Patient) Plan beneficiary
Constraints: trxhub-inv-patient-ref-only
Coverage.Slices for payor This element must be supported. 1..* Reference(Organization | Patient | RelatedPerson) Issuer of the policy
Slice: Unordered, Closed by value:extension('https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).code
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer This element must be supported. C 0..1 Reference(Patient) Reference to patient when type is self-pay
Constraints: trxhub-inv-patient-ref-only
Coverage.Slices for payor.payor:selfPayer.extension 1..* Extension Extension
Coverage.Slices for payor.payor:selfPayer.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x]
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].system 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].code 0..1 code Symbol in syntax defined by the system
Required Pattern: self-pay
Coverage.Slices for payor.payor:selfPayer.reference This element must be supported. 1..1 string Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:selfPayer.display 0..0 Text alternative for the resource
Coverage.Slices for payor.payor:mainInsurance This element must be supported. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the main insurance (Grundversicherung)
Coverage.Slices for payor.payor:mainInsurance.extension 1..* Extension Extension
Coverage.Slices for payor.payor:mainInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x]
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].system 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].code 0..1 code Symbol in syntax defined by the system
Required Pattern: main-insurance
Coverage.Slices for payor.payor:mainInsurance.reference 0..0 Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:mainInsurance.display This element must be supported. 1..1 string Text alternative for the resource
Coverage.Slices for payor.payor:supplementaryInsurance This element must be supported. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the supplementary insurance (Zusatzversicherung)
Coverage.Slices for payor.payor:supplementaryInsurance.extension 1..* Extension Extension
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x]
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].system 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].code 0..1 code Symbol in syntax defined by the system
Required Pattern: supplementary-insurance
Coverage.Slices for payor.payor:supplementaryInsurance.reference 0..0 Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:supplementaryInsurance.display This element must be supported. 1..1 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Coverage.status Base required TRxHub Coverage Status ValueSet 📦0.1.0 This IG
Coverage.type Base required TRxHub Coverage Type ValueSet 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
trxhub-cov-1 error Coverage If type is self-pay, exactly one payor with role self-pay must exist type.coding.where(code = 'self-pay').exists() implies (payor.count() = 1 and payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').exists())
trxhub-cov-2 error Coverage If type is insurance, a payor with role main-insurance must exist type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'main-insurance').exists()
trxhub-cov-3 error Coverage If type is insurance, a payor with role self-pay is not allowed type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').empty()
trxhub-cov-veka-length error Coverage.identifier:veka.value VEKA number must start with 807560 followed by 14 digits matches('^807560[0-9]{14}$')
trxhub-inv-patient-ref-only error Coverage.beneficiary, Coverage.payor:selfPayer Reference must point to a Patient resource reference.exists() implies (reference.startsWith('Patient/') or reference.startsWith('urn:uuid:'))

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Coverage C 0..* Coverage Insurance or medical plan or a payment agreement
Constraints: trxhub-cov-1, trxhub-cov-2, trxhub-cov-3
Coverage.id This element is included in summaries. 0..1 id Logical id of this artifact
Coverage.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Coverage.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Coverage.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Coverage.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Coverage.contained 0..* Resource Contained, inline Resources
Coverage.extension 0..* Extension Additional content defined by implementations
Coverage.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Coverage.Slices for identifier This element must be supported. This element is included in summaries. 0..1 Identifier Business Identifier for the coverage
Slice: Unordered, Closed by value:system

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for identifier.identifier:veka This element must be supported. This element is included in summaries. 0..1 Identifier VEKA (insurance card) number of the patient (20 digits)
Coverage.Slices for identifier.identifier:veka.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for identifier.identifier:veka.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.Slices for identifier.identifier:veka.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Coverage.Slices for identifier.identifier:veka.type This element is included in summaries. 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Coverage.Slices for identifier.identifier:veka.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:2.16.756.5.30.1.123.100.1.1.1
Coverage.Slices for identifier.identifier:veka.value This element must be supported. This element is included in summaries. C 1..1 string The value that is unique
Constraints: trxhub-cov-veka-length
Example General: 123456
Coverage.Slices for identifier.identifier:veka.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Coverage.Slices for identifier.identifier:veka.assigner This element is included in summaries. 0..1 Reference(Organization) Organization that issued id (may be just text)
Coverage.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code active | cancelled | draft | entered-in-error
Binding: TRxHub Coverage Status ValueSet (required)
Coverage.type This element must be supported. This element is included in summaries. 1..1 CodeableConcept Coverage category such as medical or accident
Binding: TRxHub Coverage Type ValueSet (required)
Coverage.type.id 0..1 string Unique id for inter-element referencing
Coverage.type.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.type.coding This element must be supported. This element is included in summaries. 1..1 Coding Code defined by a terminology system
Coverage.type.coding.id 0..1 string Unique id for inter-element referencing
Coverage.type.coding.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.type.coding.system This element must be supported. This element is included in summaries. 1..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-type
Coverage.type.coding.version This element is included in summaries. 0..1 string Version of the system - if relevant
Coverage.type.coding.code This element must be supported. This element is included in summaries. 1..1 code Symbol in syntax defined by the system
Coverage.type.coding.display This element is included in summaries. 0..1 string Representation defined by the system
Coverage.type.coding.userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Coverage.type.text This element is included in summaries. 0..1 string Plain text representation of the concept
Coverage.policyHolder This element is included in summaries. 0..1 Reference(Patient | RelatedPerson | Organization) Owner of the policy
Coverage.subscriber This element is included in summaries. 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
Coverage.subscriberId This element is included in summaries. 0..1 string ID assigned to the subscriber
Coverage.beneficiary This element must be supported. This element is included in summaries. C 1..1 Reference(Patient) Plan beneficiary
Constraints: trxhub-inv-patient-ref-only
Coverage.dependent This element is included in summaries. 0..1 string Dependent number
Coverage.relationship 0..1 CodeableConcept Beneficiary relationship to the subscriber
Binding: SubscriberRelationshipCodes (extensible): The relationship between the Subscriber and the Beneficiary (insured/covered party/patient).
Coverage.period This element is included in summaries. 0..1 Period Coverage start and end dates
Coverage.Slices for payor This element must be supported. This element is included in summaries. 1..* Reference(Organization | Patient | RelatedPerson) Issuer of the policy
Slice: Unordered, Closed by value:extension('https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).code

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer This element must be supported. This element is included in summaries. C 0..1 Reference(Patient) Reference to patient when type is self-pay
Constraints: trxhub-inv-patient-ref-only
Coverage.Slices for payor.payor:selfPayer.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:selfPayer.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:selfPayer.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].version This element is included in summaries. 0..1 string Version of the system - if relevant
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: self-pay
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].display This element is included in summaries. 0..1 string Representation defined by the system
Coverage.Slices for payor.payor:selfPayer.Slices for extension.extension:payorRole.value[x].userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Coverage.Slices for payor.payor:selfPayer.reference This element must be supported. This element is included in summaries. C 1..1 string Literal reference, Relative, internal or absolute URL
Coverage.Slices for payor.payor:selfPayer.type This element is included in summaries. 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Coverage.Slices for payor.payor:selfPayer.identifier This element is included in summaries. 0..1 Identifier Logical reference, when literal reference is not known
Coverage.Slices for payor.payor:mainInsurance This element must be supported. This element is included in summaries. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the main insurance (Grundversicherung)
Coverage.Slices for payor.payor:mainInsurance.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:mainInsurance.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:mainInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].version This element is included in summaries. 0..1 string Version of the system - if relevant
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: main-insurance
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].display This element is included in summaries. 0..1 string Representation defined by the system
Coverage.Slices for payor.payor:mainInsurance.Slices for extension.extension:payorRole.value[x].userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Coverage.Slices for payor.payor:mainInsurance.type This element is included in summaries. 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Coverage.Slices for payor.payor:mainInsurance.identifier This element is included in summaries. 0..1 Identifier Logical reference, when literal reference is not known
Coverage.Slices for payor.payor:mainInsurance.display This element must be supported. This element is included in summaries. 1..1 string Text alternative for the resource
Coverage.Slices for payor.payor:supplementaryInsurance This element must be supported. This element is included in summaries. 0..1 Reference(Organization | Patient | RelatedPerson) Display name of the supplementary insurance (Zusatzversicherung)
Coverage.Slices for payor.payor:supplementaryInsurance.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension Content/Rules for all slices
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole This element must be supported. 1..1 (Complex) TRxHub Coverage Payor Role
URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.extension 0..0 Extension
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.url 1..1 uri "https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension"
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x] This element must be supported. 1..1 Coding Value of extension
Binding: TRxHub Coverage Payor Role ValueSet (required)
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].id 0..1 string Unique id for inter-element referencing
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].system This element is included in summaries. 0..1 uri Identity of the terminology system
Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-coverage-payor-role
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].version This element is included in summaries. 0..1 string Version of the system - if relevant
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].code This element is included in summaries. 0..1 code Symbol in syntax defined by the system
Required Pattern: supplementary-insurance
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].display This element is included in summaries. 0..1 string Representation defined by the system
Coverage.Slices for payor.payor:supplementaryInsurance.Slices for extension.extension:payorRole.value[x].userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Coverage.Slices for payor.payor:supplementaryInsurance.type This element is included in summaries. 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Coverage.Slices for payor.payor:supplementaryInsurance.identifier This element is included in summaries. 0..1 Identifier Logical reference, when literal reference is not known
Coverage.Slices for payor.payor:supplementaryInsurance.display This element must be supported. This element is included in summaries. 1..1 string Text alternative for the resource
Coverage.class 0..* BackboneElement Additional coverage classifications
Coverage.class.id 0..1 string Unique id for inter-element referencing
Coverage.class.extension 0..* Extension Additional content defined by implementations
Coverage.class.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Coverage.class.type This element is included in summaries. 1..1 CodeableConcept Type of class such as 'group' or 'plan'
Binding: CoverageClassCodes (extensible): The policy classifications, eg. Group, Plan, Class, etc.
Coverage.class.value This element is included in summaries. 1..1 string Value associated with the type
Coverage.class.name This element is included in summaries. 0..1 string Human readable description of the type and value
Coverage.order This element is included in summaries. 0..1 positiveInt Relative order of the coverage
Coverage.network This element is included in summaries. 0..1 string Insurer network
Coverage.costToBeneficiary 0..* BackboneElement Patient payments for services/products
Coverage.costToBeneficiary.id 0..1 string Unique id for inter-element referencing
Coverage.costToBeneficiary.extension 0..* Extension Additional content defined by implementations
Coverage.costToBeneficiary.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Coverage.costToBeneficiary.type This element is included in summaries. 0..1 CodeableConcept Cost category
Binding: CoverageCopayTypeCodes (extensible): The types of services to which patient copayments are specified.
Coverage.costToBeneficiary.value[x] This element is included in summaries. 1..1 The amount or percentage due from the beneficiary
Coverage.costToBeneficiary.value[x].valueQuantity Quantity(SimpleQuantity)
Coverage.costToBeneficiary.value[x].valueMoney Money
Coverage.costToBeneficiary.exception 0..* BackboneElement Exceptions for patient payments
Coverage.costToBeneficiary.exception.id 0..1 string Unique id for inter-element referencing
Coverage.costToBeneficiary.exception.extension 0..* Extension Additional content defined by implementations
Coverage.costToBeneficiary.exception.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Coverage.costToBeneficiary.exception.type This element is included in summaries. 1..1 CodeableConcept Exception category
Binding: ExampleCoverageFinancialExceptionCodes (example): The types of exceptions from the part or full value of financial obligations such as copays.
Coverage.costToBeneficiary.exception.period This element is included in summaries. 0..1 Period The effective period of the exception
Coverage.subrogation 0..1 boolean Reimbursement to insurer
Coverage.contract 0..* Reference(Contract) Contract details

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Coverage.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Coverage.identifier:veka.​use Base required IdentifierUse 📍4.0.1 FHIR Std.
Coverage.identifier:veka.​type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Coverage.status Base required TRxHub Coverage Status ValueSet 📦0.1.0 This IG
Coverage.type Base required TRxHub Coverage Type ValueSet 📦0.1.0 This IG
Coverage.relationship Base extensible SubscriberPolicyholder Relationship Codes 📍4.0.1 FHIR Std.
Coverage.payor:selfPayer.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:selfPayer.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Coverage.payor:mainInsurance.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:mainInsurance.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Coverage.payor:supplementaryInsurance.​extension:payorRole.​value[x] Base required TRxHub Coverage Payor Role ValueSet 📦0.1.0 This IG
Coverage.payor:supplementaryInsurance.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Coverage.class.type Base extensible Coverage Class Codes 📍4.0.1 FHIR Std.
Coverage.costToBeneficiary.​type Base extensible Coverage Copay Type Codes 📍4.0.1 FHIR Std.
Coverage.costToBeneficiary.​exception.type Base example Example Coverage Financial Exception Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Coverage If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Coverage 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 contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Coverage If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Coverage If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Coverage A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
trxhub-cov-1 error Coverage If type is self-pay, exactly one payor with role self-pay must exist type.coding.where(code = 'self-pay').exists() implies (payor.count() = 1 and payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').exists())
trxhub-cov-2 error Coverage If type is insurance, a payor with role main-insurance must exist type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'main-insurance').exists()
trxhub-cov-3 error Coverage If type is insurance, a payor with role self-pay is not allowed type.coding.where(code = 'insurance').exists() implies payor.extension.where(url = 'https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-coverage-payor-role-extension').value.ofType(Coding).where(code = 'self-pay').empty()
trxhub-cov-veka-length error Coverage.identifier:veka.value VEKA number must start with 807560 followed by 14 digits matches('^807560[0-9]{14}$')
trxhub-inv-patient-ref-only error Coverage.beneficiary, Coverage.payor:selfPayer Reference must point to a Patient resource reference.exists() implies (reference.startsWith('Patient/') or reference.startsWith('urn:uuid:'))

This structure is derived from Coverage

Summary

Mandatory: 4 elements(11 nested mandatory elements)
Must-Support: 20 elements
Fixed: 1 element
Prohibited: 3 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Coverage.identifier (Closed)
  • The element 1 is sliced based on the value of Coverage.payor (Closed)

 

Other representations of profile: CSV, Excel, Schematron