NP Core Implementation Guide
1.0.0 - Release Nepal flag

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

Extension: Bikram Sambat Date - Detailed Descriptions

Active as of 2026-10-14

Definitions for the np-core-bikram-sambat-date extension

See the documentation on how to interpret the contents of this table

0. Extension
Definition

Carries the original Bikram Sambat (BS) date captured by the source system, as a numeric string in YYYY, YYYY-MM or YYYY-MM-DD form. It may be used on any date or dateTime element; it is deliberately not available on instant, which records a machine timestamp rather than a calendar date a person entered. The Gregorian (AD) element this extension is attached to remains the value of record; this extension only preserves the original BS capture for display and audit. FHIR cannot validate agreement between the two calendars, so keeping the BS value consistent with the Gregorian value is the responsibility of the capturing system. Populate this extension only where a faithful Bikram Sambat capture exists; never derive it and never use it in place of the Gregorian value. The precision of the BS value SHOULD match the precision of the Gregorian element, since a year-only birth year is a common and legitimate capture for elderly patients. There is deliberately no separate Bikram Sambat dateTime form: Bikram Sambat is a calendar with no time component, so on elements that carry a dateTime this extension records only the BS calendar date and the time of day lives solely in the Gregorian value. Where the Gregorian value carries a time, the BS date SHALL correspond to the Asia/Kathmandu local date of that instant rather than its UTC date, because the two can fall on different days across midnight.


Optional Extension Element - found in all resources.

ShortBikram Sambat DateOptional Extensions Element
Control0..*
This element is affected by the following invariants: ele-1
Is Modifierfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
2. Extension.extension
Definition

An Extension


May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

ShortExtensionAdditional content defined by implementations
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control0..0*
TypeExtension
Is Modifierfalse
Summaryfalse
Alternate Namesextensions, user content
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
SlicingThis element introduces a set of slices on Extension.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ url
  • Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them

    4. Extension.url
    Definition

    Source of the definition for the extension code - a logical name or a URL.

    Shortidentifies the meaning of the extension
    Comments

    The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.

    Control1..1
    Typeuri
    Is Modifierfalse
    XML FormatIn the XML format, this property is represented as an attribute.
    Summaryfalse
    Fixed Valuehttp://fhir.digitalhealth.gov.np/core/StructureDefinition/np-core-bikram-sambat-date
    6. Extension.value[x]
    Definition

    Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

    ShortOriginal Bikram Sambat date as YYYY, YYYY-MM or YYYY-MM-DDValue of extension
    Control10..1
    Typestring, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
    [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    np-bs-1: A Bikram Sambat date SHALL be a numeric string in YYYY, YYYY-MM or YYYY-MM-DD form. Days run to 32 because Bikram Sambat months vary between 29 and 32 days. ($this.matches('^[12][0-9]{3}(-(0[1-9]|1[0-2])(-(0[1-9]|[12][0-9]|3[0-2]))?)?$'))

    See the documentation on how to interpret the contents of this table

    0. Extension
    Definition

    Carries the original Bikram Sambat (BS) date captured by the source system, as a numeric string in YYYY, YYYY-MM or YYYY-MM-DD form. It may be used on any date or dateTime element; it is deliberately not available on instant, which records a machine timestamp rather than a calendar date a person entered. The Gregorian (AD) element this extension is attached to remains the value of record; this extension only preserves the original BS capture for display and audit. FHIR cannot validate agreement between the two calendars, so keeping the BS value consistent with the Gregorian value is the responsibility of the capturing system. Populate this extension only where a faithful Bikram Sambat capture exists; never derive it and never use it in place of the Gregorian value. The precision of the BS value SHOULD match the precision of the Gregorian element, since a year-only birth year is a common and legitimate capture for elderly patients. There is deliberately no separate Bikram Sambat dateTime form: Bikram Sambat is a calendar with no time component, so on elements that carry a dateTime this extension records only the BS calendar date and the time of day lives solely in the Gregorian value. Where the Gregorian value carries a time, the BS date SHALL correspond to the Asia/Kathmandu local date of that instant rather than its UTC date, because the two can fall on different days across midnight.

    ShortBikram Sambat Date
    2. Extension.extension
    Control0..0
    4. Extension.url
    Fixed Valuehttp://fhir.digitalhealth.gov.np/core/StructureDefinition/np-core-bikram-sambat-date
    6. Extension.value[x]
    ShortOriginal Bikram Sambat date as YYYY, YYYY-MM or YYYY-MM-DD
    Control1..?
    Typestring, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
    [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Invariantsnp-bs-1: A Bikram Sambat date SHALL be a numeric string in YYYY, YYYY-MM or YYYY-MM-DD form. Days run to 32 because Bikram Sambat months vary between 29 and 32 days. ($this.matches('^[12][0-9]{3}(-(0[1-9]|1[0-2])(-(0[1-9]|[12][0-9]|3[0-2]))?)?$'))

    See the documentation on how to interpret the contents of this table

    0. Extension
    Definition

    Carries the original Bikram Sambat (BS) date captured by the source system, as a numeric string in YYYY, YYYY-MM or YYYY-MM-DD form. It may be used on any date or dateTime element; it is deliberately not available on instant, which records a machine timestamp rather than a calendar date a person entered. The Gregorian (AD) element this extension is attached to remains the value of record; this extension only preserves the original BS capture for display and audit. FHIR cannot validate agreement between the two calendars, so keeping the BS value consistent with the Gregorian value is the responsibility of the capturing system. Populate this extension only where a faithful Bikram Sambat capture exists; never derive it and never use it in place of the Gregorian value. The precision of the BS value SHOULD match the precision of the Gregorian element, since a year-only birth year is a common and legitimate capture for elderly patients. There is deliberately no separate Bikram Sambat dateTime form: Bikram Sambat is a calendar with no time component, so on elements that carry a dateTime this extension records only the BS calendar date and the time of day lives solely in the Gregorian value. Where the Gregorian value carries a time, the BS date SHALL correspond to the Asia/Kathmandu local date of that instant rather than its UTC date, because the two can fall on different days across midnight.

    ShortBikram Sambat Date
    Control0..*
    This element is affected by the following invariants: ele-1
    Is Modifierfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    2. Extension.id
    Definition

    Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

    ShortUnique id for inter-element referencing
    Control0..1
    Typestring
    Is Modifierfalse
    XML FormatIn the XML format, this property is represented as an attribute.
    Summaryfalse
    4. Extension.extension
    Definition

    An Extension

    ShortExtension
    Control0..0
    TypeExtension
    Is Modifierfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    SlicingThis element introduces a set of slices on Extension.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • value @ url
    • Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them

      6. Extension.url
      Definition

      Source of the definition for the extension code - a logical name or a URL.

      Shortidentifies the meaning of the extension
      Comments

      The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.

      Control1..1
      Typeuri
      Is Modifierfalse
      XML FormatIn the XML format, this property is represented as an attribute.
      Summaryfalse
      Fixed Valuehttp://fhir.digitalhealth.gov.np/core/StructureDefinition/np-core-bikram-sambat-date
      8. Extension.value[x]
      Definition

      Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

      ShortOriginal Bikram Sambat date as YYYY, YYYY-MM or YYYY-MM-DD
      Control1..1
      Typestring
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      np-bs-1: A Bikram Sambat date SHALL be a numeric string in YYYY, YYYY-MM or YYYY-MM-DD form. Days run to 32 because Bikram Sambat months vary between 29 and 32 days. ($this.matches('^[12][0-9]{3}(-(0[1-9]|1[0-2])(-(0[1-9]|[12][0-9]|3[0-2]))?)?$'))