HL7® FHIR® New Zealand Base Implementation Guide
3.1.0 - Draft

HL7® FHIR® New Zealand Base Implementation Guide, published by HL7 New Zealand. This guide is not an authorized publication; it is the continuous build for version 3.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/daniel-thomson/nzbase/ and changes regularly. See the Directory of published versions

## Data Type Profile: NzContactPoint - XML Profile

Active as of 2026-05-21

XML representation of the NzContactPoint data type profile.

Raw xml | Download

    <StructureDefinition xmlns="http://hl7.org/fhir">
      <id value="NzContactPoint"/>
      <text>
        <status value="additional"/>
        <div xmlns="http://www.w3.org/1999/xhtml">NZ ContactPoint datatype profile</div>
      </text>
      <url value="http://hl7.org.nz/fhir/StructureDefinition/NzContactpoint"/>
      <version value="1.0.0"/>
      <name value="NzContactPoint"/>
      <title value="Common NZ ContactPoint datatype"/>
      <status value="active"/>
      <date value="2026-05-21T23:07:28+00:00"/>
      <publisher value="HL7 New Zealand"/>
      <contact>
        <name value="HL7 New Zealand"/>
        <telecom>
          <system value="email"/>
          <value value="mailto:admin@hl7.org.nz"/>
        </telecom>
      </contact>
      <description
                   value="This profile adds the Contact Point Purpose and EDI address extensions to the standard data type"/>
      <fhirVersion value="4.0.1"/>
      <mapping>
        <identity value="v2"/>
        <uri value="http://hl7.org/v2"/>
        <name value="HL7 v2 Mapping"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <uri value="http://hl7.org/v3"/>
        <name value="RIM Mapping"/>
      </mapping>
      <mapping>
        <identity value="servd"/>
        <uri value="http://www.omg.org/spec/ServD/1.0/"/>
        <name value="ServD"/>
      </mapping>
      <kind value="complex-type"/>
      <abstract value="false"/>
      <type value="ContactPoint"/>
      <baseDefinition
                      value="http://hl7.org/fhir/StructureDefinition/ContactPoint"/>
      <derivation value="constraint"/>
      <snapshot>
        <extension
                   url="http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version">
          <valueString value="4.0.1"/>
        </extension>
        <element id="ContactPoint">
          <path value="ContactPoint"/>
          <short
                 value="Details of a Technology mediated contact point (phone, fax, email, etc.)"/>
          <definition
                      value="Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc."/>
          <min value="0"/>
          <max value="*"/>
          <base>
            <path value="ContactPoint"/>
            <min value="0"/>
            <max value="*"/>
          </base>
          <condition value="ele-1"/>
          <constraint>
            <key value="cpt-2"/>
            <severity value="error"/>
            <human value="A system is required if a value is provided."/>
            <expression value="value.empty() or system.exists()"/>
            <xpath value="not(exists(f:value)) or exists(f:system)"/>
            <source value="http://hl7.org/fhir/StructureDefinition/ContactPoint"/>
          </constraint>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <xpath value="@value|f:*|h:div"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <mapping>
            <identity value="rim"/>
            <map value="n/a"/>
          </mapping>
          <mapping>
            <identity value="v2"/>
            <map value="XTN"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="TEL"/>
          </mapping>
          <mapping>
            <identity value="servd"/>
            <map value="ContactPoint"/>
          </mapping>
        </element>
        <element id="ContactPoint.id">
          <path value="ContactPoint.id"/>
          <representation value="xmlAttr"/>
          <short value="Unique id for inter-element referencing"/>
          <definition
                      value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="Element.id"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <extension
                       url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
              <valueUrl value="string"/>
            </extension>
            <code value="http://hl7.org/fhirpath/System.String"/>
          </type>
          <isModifier value="false"/>
          <isSummary value="false"/>
          <mapping>
            <identity value="rim"/>
            <map value="n/a"/>
          </mapping>
        </element>
        <element id="ContactPoint.extension">
          <path value="ContactPoint.extension"/>
          <slicing>
            <discriminator>
              <type value="value"/>
              <path value="url"/>
            </discriminator>
            <description value="Extensions are always sliced by (at least) url"/>
            <rules value="open"/>
          </slicing>
          <short value="Additional content defined by implementations"/>
          <definition
                      value="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."/>
          <comment
                   value="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."/>
          <alias value="extensions"/>
          <alias value="user content"/>
          <min value="0"/>
          <max value="*"/>
          <base>
            <path value="Element.extension"/>
            <min value="0"/>
            <max value="*"/>
          </base>
          <type>
            <code value="Extension"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <xpath value="@value|f:*|h:div"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <constraint>
            <key value="ext-1"/>
            <severity value="error"/>
            <human value="Must have either extensions or value[x], not both"/>
            <expression value="extension.exists() != value.exists()"/>
            <xpath
                   value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), &quot;value&quot;)])"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Extension"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="false"/>
          <mapping>
            <identity value="rim"/>
            <map value="n/a"/>
          </mapping>
        </element>
        <element id="ContactPoint.extension:cp-purpose">
          <path value="ContactPoint.extension"/>
          <sliceName value="cp-purpose"/>
          <short value="The business reason this ContactPoint is being used"/>
          <definition
                      value="A specific purpose for which this ContactPoint dataType would be used. An example would be to indicate that this ContactPoint is used for video conferencing."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="Element.extension"/>
            <min value="0"/>
            <max value="*"/>
          </base>
          <type>
            <code value="Extension"/>
            <profile
                     value="http://hl7.org.nz/fhir/StructureDefinition/contactpoint-purpose"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <xpath value="@value|f:*|h:div"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <constraint>
            <key value="ext-1"/>
            <severity value="error"/>
            <human value="Must have either extensions or value[x], not both"/>
            <expression value="extension.exists() != value.exists()"/>
            <xpath
                   value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), &quot;value&quot;)])"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Extension"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="false"/>
        </element>
        <element id="ContactPoint.system">
          <path value="ContactPoint.system"/>
          <short value="phone | fax | email | pager | url | sms | other"/>
          <definition
                      value="Telecommunications form for contact point - what communications system is required to make use of the contact."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="ContactPoint.system"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="code"/>
          </type>
          <condition value="cpt-2"/>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <xpath value="@value|f:*|h:div"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="true"/>
          <binding>
            <extension
                       url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
              <valueString value="ContactPointSystem"/>
            </extension>
            <strength value="required"/>
            <description value="Telecommunications form for contact point."/>
            <valueSet
                      value="http://hl7.org/fhir/ValueSet/contact-point-system|4.0.1"/>
          </binding>
          <mapping>
            <identity value="v2"/>
            <map value="XTN.3"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="./scheme"/>
          </mapping>
          <mapping>
            <identity value="servd"/>
            <map value="./ContactPointType"/>
          </mapping>
        </element>
        <element id="ContactPoint.value">
          <path value="ContactPoint.value"/>
          <short value="The actual contact point details"/>
          <definition
                      value="The actual contact point details, in a form that is meaningful to the designated communication system (i.e. phone number or email address)."/>
          <comment
                   value="Additional text data such as phone extension numbers, or notes about use of the contact are sometimes included in the value."/>
          <requirements
                        value="Need to support legacy numbers that are not in a tightly controlled format."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="ContactPoint.value"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="string"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <xpath value="@value|f:*|h:div"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="true"/>
          <mapping>
            <identity value="v2"/>
            <map value="XTN.1 (or XTN.12)"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="./url"/>
          </mapping>
          <mapping>
            <identity value="servd"/>
            <map value="./Value"/>
          </mapping>
        </element>
        <element id="ContactPoint.use">
          <path value="ContactPoint.use"/>
          <short
                 value="home | work | temp | old | mobile - purpose of this contact point"/>
          <definition value="Identifies the purpose for the contact point."/>
          <comment
                   value="Applications can assume that a contact is current unless it explicitly says that it is temporary or old."/>
          <requirements
                        value="Need to track the way a person uses this contact, so a user can choose which is appropriate for their purpose."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="ContactPoint.use"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="code"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <xpath value="@value|f:*|h:div"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="true"/>
          <isModifierReason
                            value="This is labeled as &quot;Is Modifier&quot; because applications should not mistake a temporary or old contact etc.for a current/permanent one"/>
          <isSummary value="true"/>
          <binding>
            <extension
                       url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
              <valueString value="ContactPointUse"/>
            </extension>
            <strength value="required"/>
            <description value="Use of contact point."/>
            <valueSet
                      value="http://hl7.org/fhir/ValueSet/contact-point-use|4.0.1"/>
          </binding>
          <mapping>
            <identity value="v2"/>
            <map value="XTN.2 - but often indicated by field"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="unique(./use)"/>
          </mapping>
          <mapping>
            <identity value="servd"/>
            <map value="./ContactPointPurpose"/>
          </mapping>
        </element>
        <element id="ContactPoint.rank">
          <path value="ContactPoint.rank"/>
          <short value="Specify preferred order of use (1 = highest)"/>
          <definition
                      value="Specifies a preferred order in which to use a set of contacts. ContactPoints with lower rank values are more preferred than those with higher rank values."/>
          <comment
                   value="Note that rank does not necessarily follow the order in which the contacts are represented in the instance."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="ContactPoint.rank"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="positiveInt"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <xpath value="@value|f:*|h:div"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="true"/>
          <mapping>
            <identity value="v2"/>
            <map value="n/a"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="n/a"/>
          </mapping>
        </element>
        <element id="ContactPoint.period">
          <path value="ContactPoint.period"/>
          <short value="Time period when the contact point was/is in use"/>
          <definition value="Time period when the contact point was/is in use."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="ContactPoint.period"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="Period"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <xpath value="@value|f:*|h:div"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="true"/>
          <mapping>
            <identity value="v2"/>
            <map value="N/A"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="./usablePeriod[type=&quot;IVL&lt;TS&gt;&quot;]"/>
          </mapping>
          <mapping>
            <identity value="servd"/>
            <map value="./StartDate and ./EndDate"/>
          </mapping>
        </element>
      </snapshot>
      <differential>
        <element id="ContactPoint">
          <path value="ContactPoint"/>
        </element>
        <element id="ContactPoint.extension:cp-purpose">
          <path value="ContactPoint.extension"/>
          <sliceName value="cp-purpose"/>
          <short value="The business reason this ContactPoint is being used"/>
          <min value="0"/>
          <max value="1"/>
          <type>
            <code value="Extension"/>
            <profile
                     value="http://hl7.org.nz/fhir/StructureDefinition/contactpoint-purpose"/>
          </type>
        </element>
      </differential>
    </StructureDefinition>