DHIN 2025Connectathon FHIR IG
0.1.0 - draft

DHIN 2025Connectathon FHIR IG, published by DHIN. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/Nigeria-FHIR-Community/2025Connectathon/ and changes regularly. See the Directory of published versions

Resource Profile: NG Claim Coverage

Official URL: https://sandbox.dhin-hie.org/ig/StructureDefinition/ng-claim-coverage Version: 0.1.0
Draft as of 2025-10-02 Computable Name: NgCoverage

A profile capturing a patient's insurance coverage details.

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: Filtersdoco
.. Coverage 0..* Coverage Insurance or medical plan or a payment agreement
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code active | cancelled | draft | entered-in-error
Binding: FinancialResourceStatusCodes (required): A code specifying the state of the resource instance.
... subscriber SΣ 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
... beneficiary SΣ 1..1 Reference(Patient) Plan beneficiary
... payor SΣ 1..1 Reference(Organization | Patient | RelatedPerson) Issuer of the policy

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Coverage.status Base required Financial Resource Status Codes 📍4.0.1 FHIR Std.
Coverage.type Base preferred Coverage Type and Self-Pay 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()

This structure is derived from Coverage

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Coverage 0..* Coverage Insurance or medical plan or a payment agreement
... status S 1..1 code active | cancelled | draft | entered-in-error
... type S 1..1 CodeableConcept Coverage category such as medical or accident
... subscriber S 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
... payor S 1..1 Reference(Organization | Patient | RelatedPerson) Issuer of the policy

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Coverage 0..* Coverage Insurance or medical plan or a payment agreement
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... 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
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Business Identifier for the coverage
... status ?!SΣ 1..1 code active | cancelled | draft | entered-in-error
Binding: FinancialResourceStatusCodes (required): A code specifying the state of the resource instance.
... type SΣ 1..1 CodeableConcept Coverage category such as medical or accident
Binding: CoverageTypeAndSelf-PayCodes (preferred): The type of insurance: public health, worker compensation; private accident, auto, private health, etc.) or a direct payment by an individual or organization.
... policyHolder Σ 0..1 Reference(Patient | RelatedPerson | Organization) Owner of the policy
... subscriber SΣ 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
... subscriberId Σ 0..1 string ID assigned to the subscriber
... beneficiary SΣ 1..1 Reference(Patient) Plan beneficiary
... dependent Σ 0..1 string Dependent number
... relationship 0..1 CodeableConcept Beneficiary relationship to the subscriber
Binding: SubscriberRelationshipCodes (extensible): The relationship between the Subscriber and the Beneficiary (insured/covered party/patient).
... period Σ 0..1 Period Coverage start and end dates
... payor SΣ 1..1 Reference(Organization | Patient | RelatedPerson) Issuer of the policy
... class 0..* BackboneElement Additional coverage classifications
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type Σ 1..1 CodeableConcept Type of class such as 'group' or 'plan'
Binding: CoverageClassCodes (extensible): The policy classifications, eg. Group, Plan, Class, etc.
.... value Σ 1..1 string Value associated with the type
.... name Σ 0..1 string Human readable description of the type and value
... order Σ 0..1 positiveInt Relative order of the coverage
... network Σ 0..1 string Insurer network
... costToBeneficiary 0..* BackboneElement Patient payments for services/products
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type Σ 0..1 CodeableConcept Cost category
Binding: CoverageCopayTypeCodes (extensible): The types of services to which patient copayments are specified.
.... value[x] Σ 1..1 The amount or percentage due from the beneficiary
..... valueQuantity Quantity(SimpleQuantity)
..... valueMoney Money
.... exception 0..* BackboneElement Exceptions for patient payments
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 1..1 CodeableConcept Exception category
Binding: ExampleCoverageFinancialExceptionCodes (example): The types of exceptions from the part or full value of financial obligations such as copays.
..... period Σ 0..1 Period The effective period of the exception
... subrogation 0..1 boolean Reimbursement to insurer
... 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.status Base required Financial Resource Status Codes 📍4.0.1 FHIR Std.
Coverage.type Base preferred Coverage Type and Self-Pay Codes 📍4.0.1 FHIR Std.
Coverage.relationship Base extensible SubscriberPolicyholder Relationship Codes 📍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()

This structure is derived from Coverage

Summary

Mandatory: 1 element
Must-Support: 5 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Coverage 0..* Coverage Insurance or medical plan or a payment agreement
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code active | cancelled | draft | entered-in-error
Binding: FinancialResourceStatusCodes (required): A code specifying the state of the resource instance.
... subscriber SΣ 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
... beneficiary SΣ 1..1 Reference(Patient) Plan beneficiary
... payor SΣ 1..1 Reference(Organization | Patient | RelatedPerson) Issuer of the policy

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Coverage.status Base required Financial Resource Status Codes 📍4.0.1 FHIR Std.
Coverage.type Base preferred Coverage Type and Self-Pay 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()

Differential View

This structure is derived from Coverage

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Coverage 0..* Coverage Insurance or medical plan or a payment agreement
... status S 1..1 code active | cancelled | draft | entered-in-error
... type S 1..1 CodeableConcept Coverage category such as medical or accident
... subscriber S 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
... payor S 1..1 Reference(Organization | Patient | RelatedPerson) Issuer of the policy

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Coverage 0..* Coverage Insurance or medical plan or a payment agreement
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... 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
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Business Identifier for the coverage
... status ?!SΣ 1..1 code active | cancelled | draft | entered-in-error
Binding: FinancialResourceStatusCodes (required): A code specifying the state of the resource instance.
... type SΣ 1..1 CodeableConcept Coverage category such as medical or accident
Binding: CoverageTypeAndSelf-PayCodes (preferred): The type of insurance: public health, worker compensation; private accident, auto, private health, etc.) or a direct payment by an individual or organization.
... policyHolder Σ 0..1 Reference(Patient | RelatedPerson | Organization) Owner of the policy
... subscriber SΣ 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
... subscriberId Σ 0..1 string ID assigned to the subscriber
... beneficiary SΣ 1..1 Reference(Patient) Plan beneficiary
... dependent Σ 0..1 string Dependent number
... relationship 0..1 CodeableConcept Beneficiary relationship to the subscriber
Binding: SubscriberRelationshipCodes (extensible): The relationship between the Subscriber and the Beneficiary (insured/covered party/patient).
... period Σ 0..1 Period Coverage start and end dates
... payor SΣ 1..1 Reference(Organization | Patient | RelatedPerson) Issuer of the policy
... class 0..* BackboneElement Additional coverage classifications
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type Σ 1..1 CodeableConcept Type of class such as 'group' or 'plan'
Binding: CoverageClassCodes (extensible): The policy classifications, eg. Group, Plan, Class, etc.
.... value Σ 1..1 string Value associated with the type
.... name Σ 0..1 string Human readable description of the type and value
... order Σ 0..1 positiveInt Relative order of the coverage
... network Σ 0..1 string Insurer network
... costToBeneficiary 0..* BackboneElement Patient payments for services/products
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type Σ 0..1 CodeableConcept Cost category
Binding: CoverageCopayTypeCodes (extensible): The types of services to which patient copayments are specified.
.... value[x] Σ 1..1 The amount or percentage due from the beneficiary
..... valueQuantity Quantity(SimpleQuantity)
..... valueMoney Money
.... exception 0..* BackboneElement Exceptions for patient payments
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 1..1 CodeableConcept Exception category
Binding: ExampleCoverageFinancialExceptionCodes (example): The types of exceptions from the part or full value of financial obligations such as copays.
..... period Σ 0..1 Period The effective period of the exception
... subrogation 0..1 boolean Reimbursement to insurer
... 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.status Base required Financial Resource Status Codes 📍4.0.1 FHIR Std.
Coverage.type Base preferred Coverage Type and Self-Pay Codes 📍4.0.1 FHIR Std.
Coverage.relationship Base extensible SubscriberPolicyholder Relationship Codes 📍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()

This structure is derived from Coverage

Summary

Mandatory: 1 element
Must-Support: 5 elements

 

Other representations of profile: CSV, Excel, Schematron