DIPS Core Implementation Guide
0.1.0 - ci-build Norway

DIPS Core Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Extension: DIPSHealthcareServiceAddress - Detailed Descriptions

Draft as of 2026-09-03

Definitions for the DIPSHealthcareServiceAddress extension.

Guidance on how to interpret the contents of this table can be foundhere

0. Extension
Definition

Optional Extension Element - found in all resources.

ShortOptional 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
  • 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://dips.no/fhir/R4/StructureDefinition/DIPSHealthcareServiceAddress
    6. Extension.value[x]
    Definition

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

    ShortValue of extension
    Control0..1
    TypeChoice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta
    [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()))
    SlicingThis element introduces a set of slices on Extension.value[x]. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • type @ $this
    • 8. Extension.value[x]:valueAddress
      Slice NamevalueAddress
      Definition

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

      ShortValue of extension
      Control0..1
      TypeAddress, date, Meta, 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, string, 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
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      10. Extension.value[x]:valueAddress.use
      Definition

      The purpose of this address.

      Shorthome | work | temp | old | billing - purpose of this address
      Comments

      Applications can assume that an address is current unless it explicitly says that it is temporary or old.

      Control0..01
      BindingThe codes SHALL be taken from AddressUsehttp://hl7.org/fhir/ValueSet/address-use|4.0.1
      (required to http://hl7.org/fhir/ValueSet/address-use|4.0.1)

      The use of an address.

      Typecode
      Is Modifiertrue because This is labeled as "Is Modifier" because applications should not mistake a temporary or old address etc.for a current/permanent one
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summarytrue
      Requirements

      Allows an appropriate address to be chosen from a list of many.

      ExampleGeneral: home
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      12. Extension.value[x]:valueAddress.type
      Definition

      Distinguishes between physical addresses (those you can visit) and mailing addresses (e.g. PO Boxes and care-of addresses). Most addresses are both.

      Shortpostal | physical | both
      Comments

      The definition of Address states that "address is intended to describe postal addresses, not physical locations". However, many applications track whether an address has a dual purpose of being a location that can be visited as well as being a valid delivery destination, and Postal addresses are often used as proxies for physical locations (also see the Location resource).


      The definition of Address states that "address is intended to describe postal addresses, not physical locations". However, many applications track whether an address has a dual purpose of being a location that can be visited as well as being a valid delivery destination, and Postal addresses are often used as proxies for physical locations (also see the Location resource).

      Control0..01
      BindingThe codes SHALL be taken from AddressTypehttp://hl7.org/fhir/ValueSet/address-type|4.0.1
      (required to http://hl7.org/fhir/ValueSet/address-type|4.0.1)

      The type of an address (physical / postal).

      Typecode
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summarytrue
      ExampleGeneral: both
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      14. Extension.value[x]:valueAddress.text
      Definition

      Specifies the entire address as it should be displayed e.g. on a postal label. This may be provided instead of or as well as the specific parts.

      ShortText representation of the address
      Comments

      Can provide both a text representation and parts. Applications updating an address SHALL ensure that when both text and parts are present, no content is included in the text that isn't found in a part.

      Control0..01
      Typestring
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summarytrue
      Requirements

      A renderable, unencoded form.

      ExampleGeneral: 137 Nowhere Street, Erewhon 9132
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      16. Extension.value[x]:valueAddress.district
      Definition

      The name of the administrative area (county).

      ShortDistrict name (aka county)
      Comments

      District is sometimes known as county, but in some regions 'county' is used in place of city (municipality), so county name should be conveyed in city instead.

      Control0..01
      Typestring
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summarytrue
      Alternate NamesCounty
      ExampleGeneral: Madison
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      18. Extension.value[x]:valueAddress.state
      Definition

      Sub-unit of a country with limited sovereignty in a federally organized country. A code may be used if codes are in common use (e.g. US 2 letter state codes).

      ShortSub-unit of country (abbreviations ok)
      Control0..01
      Typestring
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summarytrue
      Alternate NamesProvince, Territory
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      20. Extension.value[x]:valueAddress.country
      Definition

      Country - a nation as commonly understood or generally accepted.

      ShortCountry (e.g. can be ISO 3166 2 or 3 letter code)
      Comments

      ISO 3166 3 letter codes can be used in place of a human readable country name.

      Control0..01
      Typestring
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summarytrue
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))

      Guidance on how to interpret the contents of this table can be foundhere

      0. Extension
      2. Extension.extension
      Control0..0
      4. Extension.url
      Fixed Valuehttp://dips.no/fhir/R4/StructureDefinition/DIPSHealthcareServiceAddress
      6. Extension.value[x]
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      SlicingThis element introduces a set of slices on Extension.value[x]. The slices areUnordered and Open, and can be differentiated using the following discriminators:
      • type @ $this
      • 8. Extension.value[x]:valueAddress
        Slice NamevalueAddress
        Control0..1
        TypeAddress
        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
        10. Extension.value[x]:valueAddress.use
        Control0..0
        12. Extension.value[x]:valueAddress.type
        Control0..0
        14. Extension.value[x]:valueAddress.text
        Control0..0
        16. Extension.value[x]:valueAddress.district
        Control0..0
        18. Extension.value[x]:valueAddress.state
        Control0..0
        20. Extension.value[x]:valueAddress.country
        Control0..0

        Guidance on how to interpret the contents of this table can be foundhere

        0. Extension
        Definition

        Optional Extension Element - found in all resources.

        ShortOptional 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())
        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
        • 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://dips.no/fhir/R4/StructureDefinition/DIPSHealthcareServiceAddress
          8. Extension.value[x]
          Definition

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

          ShortValue of extension
          Control0..1
          TypeChoice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta
          [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()))
          SlicingThis element introduces a set of slices on Extension.value[x]. The slices areUnordered and Open, and can be differentiated using the following discriminators:
          • type @ $this
          • 10. Extension.value[x]:valueAddress
            Slice NamevalueAddress
            Definition

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

            ShortValue of extension
            Control0..1
            TypeAddress
            [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
            Is Modifierfalse
            Summaryfalse
            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
            12. Extension.value[x]:valueAddress.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
            14. Extension.value[x]:valueAddress.extension
            Definition

            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.

            ShortAdditional 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..*
            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.value[x].extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
            • value @ url
            • 16. Extension.value[x]:valueAddress.use
              Definition

              The purpose of this address.

              Shorthome | work | temp | old | billing - purpose of this address
              Comments

              Applications can assume that an address is current unless it explicitly says that it is temporary or old.

              Control0..0
              BindingThe codes SHALL be taken from AddressUse
              (required to http://hl7.org/fhir/ValueSet/address-use|4.0.1)

              The use of an address.

              Typecode
              Is Modifiertrue because This is labeled as "Is Modifier" because applications should not mistake a temporary or old address etc.for a current/permanent one
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summarytrue
              Requirements

              Allows an appropriate address to be chosen from a list of many.

              ExampleGeneral: home
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              18. Extension.value[x]:valueAddress.type
              Definition

              Distinguishes between physical addresses (those you can visit) and mailing addresses (e.g. PO Boxes and care-of addresses). Most addresses are both.

              Shortpostal | physical | both
              Comments

              The definition of Address states that "address is intended to describe postal addresses, not physical locations". However, many applications track whether an address has a dual purpose of being a location that can be visited as well as being a valid delivery destination, and Postal addresses are often used as proxies for physical locations (also see the Location resource).

              Control0..0
              BindingThe codes SHALL be taken from AddressType
              (required to http://hl7.org/fhir/ValueSet/address-type|4.0.1)

              The type of an address (physical / postal).

              Typecode
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summarytrue
              ExampleGeneral: both
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              20. Extension.value[x]:valueAddress.text
              Definition

              Specifies the entire address as it should be displayed e.g. on a postal label. This may be provided instead of or as well as the specific parts.

              ShortText representation of the address
              Comments

              Can provide both a text representation and parts. Applications updating an address SHALL ensure that when both text and parts are present, no content is included in the text that isn't found in a part.

              Control0..0
              Typestring
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summarytrue
              Requirements

              A renderable, unencoded form.

              ExampleGeneral: 137 Nowhere Street, Erewhon 9132
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              22. Extension.value[x]:valueAddress.line
              Definition

              This component contains the house number, apartment number, street name, street direction, P.O. Box number, delivery hints, and similar address information.

              ShortStreet name, number, direction & P.O. Box etc.
              Control0..*
              Typestring
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summarytrue
              ExampleGeneral: 137 Nowhere Street
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              24. Extension.value[x]:valueAddress.city
              Definition

              The name of the city, town, suburb, village or other community or delivery center.

              ShortName of city, town etc.
              Control0..1
              Typestring
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summarytrue
              Alternate NamesMunicpality
              ExampleGeneral: Erewhon
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              26. Extension.value[x]:valueAddress.district
              Definition

              The name of the administrative area (county).

              ShortDistrict name (aka county)
              Comments

              District is sometimes known as county, but in some regions 'county' is used in place of city (municipality), so county name should be conveyed in city instead.

              Control0..0
              Typestring
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summarytrue
              Alternate NamesCounty
              ExampleGeneral: Madison
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              28. Extension.value[x]:valueAddress.state
              Definition

              Sub-unit of a country with limited sovereignty in a federally organized country. A code may be used if codes are in common use (e.g. US 2 letter state codes).

              ShortSub-unit of country (abbreviations ok)
              Control0..0
              Typestring
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summarytrue
              Alternate NamesProvince, Territory
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              30. Extension.value[x]:valueAddress.postalCode
              Definition

              A postal code designating a region defined by the postal service.

              ShortPostal code for area
              Control0..1
              Typestring
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summarytrue
              Alternate NamesZip
              ExampleGeneral: 9132
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              32. Extension.value[x]:valueAddress.country
              Definition

              Country - a nation as commonly understood or generally accepted.

              ShortCountry (e.g. can be ISO 3166 2 or 3 letter code)
              Comments

              ISO 3166 3 letter codes can be used in place of a human readable country name.

              Control0..0
              Typestring
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summarytrue
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              34. Extension.value[x]:valueAddress.period
              Definition

              Time period when address was/is in use.

              ShortTime period when address was/is in use
              Control0..1
              TypePeriod
              Is Modifierfalse
              Summarytrue
              Requirements

              Allows addresses to be placed in historical context.

              ExampleGeneral: { "start" : "2010-03-23", "end" : "2010-07-01" }
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))