NP Core Implementation Guide
1.0.0 - Release
NP Core Implementation Guide - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
This page provides an overview of all profiles defined in the NP Core Implementation Guide, grouped by clinical domain. Each profile is a constrained FHIR R4 resource tailored to the requirements of health information exchange in Nepal.
For the full definitions, see the Artifacts index.
Profile: NPCorePatient
Parent: Patient
The central demographic profile for individuals receiving healthcare in Nepal. Key constraints:
Identifiers: Patient identifiers are sliced by identifier.system.
identifier[healthId] (Nepal Health ID, issued by MoHFS) is required (1..1), while identifier[nationalId] (Nepal National ID, issued by DONIDCR) is supported and recommended but optional (0..1).
Additional optional national-document identifiers are supported:
identifier[citizenshipNumber] (citizenship certificate, MoHA)identifier[healthInsuranceId] (Health Insurance Board)identifier[passportNumber] (Department of Passports, MoFA)identifier[ssfNumber] (Social Security Fund)name is required (1..*). The invariant np-pat-1 is evaluated on each name independently and requires either a family name or a given name to be present, or else a Data Absent Reason extension to explain why the name is missing. A patient who uses a single name, and a patient carrying both an official name and a nickname, are both conformant.birthDate, gender, and telecom are all Must Support.Profile: NPCorePractitioner
Parent: Practitioner
Profile for licensed health professionals practicing in Nepal. Key constraints:
np-prac-1 (required): A practitioner MUST carry at least one council registration identifier or an NHWR code. Six identifier slices are defined — one per national registration council, plus the national workforce registry:
nhwr - National Health Workforce Registry (NHWR) code, the umbrella national identifier maintained by MoHFSnmc - Nepal Medical Councilnnc - Nepal Nursing Councilnamc - Nepal Ayurveda Medical Councilnhpc - Nepal Health Professional Councilnpc - Nepal Pharmacy CouncilProfile: NPCorePractitionerRole
Parent: PractitionerRole
Represents the role, speciality, and service location of a practitioner within a specific organization.
Profile: NPCoreOrganization
Parent: Organization
A generic base profile for any organization operating in Nepal (e.g. insurers, government bodies, NGOs). Key constraints:
partOf is constrained to NPCoreOrganization, supporting organizational hierarchies.Profile: NPCoreHealthFacility
Parent: NPCoreOrganization
A specialized profile for registered health facilities in Nepal. Extends NPCoreOrganization with facility-specific constraints:
nhfrCode identifier (NPCoreNHFRIdentifier) assigned by the National Health Facility Registry.type[organizationType] is fixed to #prov (Healthcare Provider) from http://terminology.hl7.org/CodeSystem/organization-type.type slices, each bound to Nepal-specific ValueSets, describe the authority responsible for the facility (facilityAuthority), the administrative level of that authority (authorityLevel), its ownership (ownership), and the kind/type of facility (facilityType).Profile: NPCoreLocation
Parent: Location
A physical or logical location where health services are delivered.
address is Must Support and restricted to NPCoreAddress.managingOrganization is constrained to NPCoreOrganization.partOf is constrained to NPCoreLocation, supporting hierarchical location modelling.Profile: NPCoreHealthcareService
Parent: HealthcareService
Describes a service offered by an organization at a location. providedBy is constrained to NPCoreOrganization and location / coverageArea to NPCoreLocation.
Profile: NPCoreRelatedPerson
Parent: RelatedPerson
Represents a person with a personal or non-professional relationship to a patient (e.g., next of kin, guardian).
Profile: NPCoreEncounter
Parent: Encounter
Represents a healthcare interaction between a patient and a provider. Key constraints:
identifier is mandatory (1..* MS). The invariant np-enc-1 requires at least one identifier whose system is namespaced under the assigning facility's NHFR code (i.e. http://nhfr.digitalhealth.gov.np/{nhfrCode}).status and class are mandatory (1..1 Must Support).subject is constrained to NPCorePatient or Group.participant.individual is restricted to NP Core practitioners, practitioner roles, and related persons.serviceProvider is constrained to NPCoreOrganization.reasonReference may point to NPCoreCondition, NPCoreProcedure, NPCoreObservation, or ImmunizationRecommendation.hospitalization.origin supports both organization and location references.Profile: NPCoreCondition
Parent: Condition
Records a clinical problem, diagnosis, or health concern. Key constraints:
code is mandatory (1..1 Must Support) and required-bound to ICD-11.subject is constrained to NPCorePatient.encounter is constrained to NPCoreEncounter.recorder may be a practitioner, practitioner role, patient, or related person.Profile: NPCoreProcedure
Parent: Procedure
Records a clinical procedure performed on or for a patient. Key constraints:
code is mandatory (1..1 Must Support) and required-bound to NPCoreProcedureVS.subject is mandatory and constrained to NPCorePatient or Group.encounter is constrained to NPCoreEncounter.performer.actor is mandatory and supports practitioners, organizations, patients, related persons, and devices.performer.onBehalfOf is constrained to NPCoreOrganization.location is constrained to NPCoreLocation.reasonReference may reference NP Core conditions, observations, procedures, lab reports, diagnostic reports, and document references.Profile: NPCoreObservation
Parent: Observation
General-purpose clinical observation profile.
category (1..*) and code (1..1) are mandatory Must Support.subject is constrained to NPCorePatient.performer supports practitioners, organizations, patients, related persons, and care teams.hasMember.Profile: NPCoreBloodPressureObservation
Parent: NPCoreObservation
A vital signs observation for blood pressure.
Profile: NPCoreBodyWeightObservation
Parent: NPCoreObservation
A vital signs observation for body weight.
Profile: NPCoreBodyHeightObservation
Parent: BodyHeight (FHIR R4 vital signs profile)
A vital signs observation for body height. Fixes LOINC 8302-2 and constrains the value to UCUM length units (cm or [in_i]).
Profile: NPCoreOxygenSaturationObservation
Parent: NPCoreObservation
A vital signs observation for oxygen saturation.
Profile: NPCoreBodyTemperatureObservation
Parent: NPCoreObservation
A vital signs observation for body temperature.
Profile: NPCoreHeartRateObservation
Parent: HeartRate (FHIR R4 vital signs profile)
A vital signs observation for heart rate. Fixes LOINC 8867-4 and constrains the value to UCUM beats per minute (/min).
Profile: NPCoreVitalSignsPanel
Parent: VitalSignsPanel (FHIR R4 vital signs profile)
A grouping observation (panel) that references individual vital sign observations via hasMember. The panel LOINC code 85353-1 is mandatory (code.coding[VitalsPanelCode] is raised to 1..1; the base FHIR profile leaves it optional). hasMember (1..*) SHOULD reference the NP Core heart rate, body weight, body height, body temperature, blood pressure, or oxygen saturation observations where one applies, and SHALL otherwise reference an observation conforming to the base FHIR vital signs profile - so vital signs NP Core does not yet profile, such as respiratory rate, BMI and head circumference, can still be grouped.
Profile: NPCoreLabReport
Parent: DiagnosticReport
A diagnostic report for laboratory investigations.
category (1..*) is sliced with a mandatory lab slice fixed to LAB, so additional departmental or programme categories remain permitted alongside it.code (1..1) is bound to the FHIR LOINC diagnostic report codes value set (report-codes) with extensible strength, so it SHALL carry a LOINC code naming the specific report, such as 11502-2 (Laboratory report) for a generic report or a panel code such as 58410-2 (CBC panel - Blood by Automated count). Use a single-analyte code only when the report covers exactly that one test; a non-LOINC code is permitted only where LOINC has no suitable concept.subject, encounter, issued, and performer are all mandatory.result (1..*) SHALL reference either NPCoreLabResultObservation or NPCoreLabPanelObservation.Profile: NPCoreRadiologyReport
Parent: DiagnosticReport
A diagnostic report for radiology (diagnostic imaging) investigations.
category (1..*) is sliced with a mandatory rad slice fixed to RAD, so additional departmental or programme categories remain permitted alongside it.code (1..1) is bound to the FHIR LOINC diagnostic report codes value set (report-codes) with extensible strength, so it SHALL carry a LOINC code naming the specific study, such as 36643-5 (XR Chest 2 Views) or 24627-2 (CT Chest), falling back to 18748-4 (Diagnostic imaging study) only when the modality and body site are not known. A non-LOINC code is permitted only where LOINC has no suitable concept.subject, encounter, issued, and performer are all mandatory.resultsInterpreter (0..*) is the party who interpreted the imaging findings, typically a radiologist, and is recommended, with the same reference targets as performer.imagingStudy (0..*) links the report to the underlying ImagingStudy when one is available.result (0..*) SHALL reference NPCoreObservation when discrete imaging observations are recorded; radiology findings are more commonly conveyed narratively via conclusion, conclusionCode, or presentedForm.specimen is not constrained, as specimens are not meaningful for imaging.Profile: NPCoreLabResultObservation
Parent: Observation
A single laboratory test result, intended to be referenced from an NPCoreLabReport.
Profile: NPCoreLabPanelObservation
Parent: Observation
A grouping observation (panel) that references multiple lab result observations via hasMember, enabling structured reporting of test batteries (e.g., CBC, LFT).
Profile: NPCoreSpecimen
Parent: Specimen
Represents a specimen collected from a patient for laboratory analysis. subject is mandatory and constrained to NPCorePatient or Group, and collection.collector to NP Core practitioners or practitioner roles. Referenced from NPCoreLabResultObservation, NPCoreLabPanelObservation, and NPCoreLabReport.
Profile: NPCoreDevice
Parent: Device
Represents a medical device (instrument, implant, or equipment) used in the delivery of care. patient is constrained to NPCorePatient, owner to NPCoreOrganization, and location to NPCoreLocation. Referenced as a performer/requester by the NP Core procedure, service request, and medication profiles.
Profile: NPCoreMedication
Parent: Medication
Base profile for medication resources referenced in prescriptions, administrations, and dispenses.
Profile: NPCoreMedicationRequest
Parent: MedicationRequest
A prescription or medication order.
medicationReference is restricted to NPCoreMedication.subject is constrained to NPCorePatient or Group.requester supports practitioners, practitioner roles, organizations, patients, related persons, and devices.reasonReference restricted to NP Core condition and observation profiles.priorPrescription restricted to NPCoreMedicationRequest.Profile: NPCoreMedicationDispense
Parent: MedicationDispense
Records the dispensing of a medication to a patient.
Profile: NPCoreMedicationAdministration
Parent: MedicationAdministration
Records the administration of a medication dose to a patient.
Profile: NPCoreMedicationStatement
Parent: MedicationStatement
Records a patient's medication history, including self-reported use.
Profile: NPCoreImmunization
Parent: Immunization
Records a vaccine administration as part of Nepal's Expanded Programme on Immunization (EPI) or routine care. Key constraints:
patient is constrained to NPCorePatient.encounter is constrained to NPCoreEncounter.location is constrained to NPCoreLocation.performer.actor is restricted to practitioners and organizations.lotNumber, primarySource, and protocolApplied.doseNumberPositiveInt are Must Support.Profile: NPCoreServiceRequest
Parent: ServiceRequest
A base profile for orders and service requests within the NP Core context.
Profile: NPCoreReferralRequest
Parent: NPCoreServiceRequest
A specialised referral request profile. Key constraints:
code is fixed to SNOMED 3457005 ("Patient referral").intent is fixed to #directive.subject, encounter, requester, and performer are all mandatory (1..1).requester restricted to practitioner or health facility.performer restricted to NPCoreHealthFacility — the receiving facility.Profile: NPCoreAllergyIntolerance
Parent: AllergyIntolerance
Records a patient's allergy or adverse reaction. patient is mandatory and constrained to NPCorePatient.
Profile: NPCoreClinicalDocumentReference
Parent: DocumentReference
Represents a reference to a clinical document (e.g., discharge summary, operative note). The type element is bound (extensible) to the ClinicalDocumentTypeVS ValueSet.
Profile: NPCoreAddress
Parent: Address
A general-purpose datatype profile. Its base fields (line, city, district, state, postalCode, country) carry standard FHIR Address semantics and can represent an address in any country. country is required (1..1) and bound required to the ISO 3166-1 alpha-2 code list, so a Nepali address carries "NP" rather than "Nepal" or "NPL". R4 places no binding on Address.country, and without one the np-addr-1 comparison below would be a string match against free text.
When country is Nepal ("NP"), three additional coded extensions aligned to Nepal's federal administrative geography may be used, each paired with the corresponding human-readable Address field:
| Extension | Bound ValueSet | Paired Address field |
|---|---|---|
province (0..1 MS) |
NepalProvinceVS | Address.state |
district (0..1 MS) |
NepalDistrictVS | Address.district |
localLevel (0..1 MS) |
NepalLocalLevelVS | Address.city |
The invariant np-addr-1 enforces this: these three extensions SHALL only be present when country is "NP". An optional geolocation extension may be used to carry latitude and longitude for map-based workflows, independent of country.