SPL Mapping FHIR R5 Implementation Guide
0.2.1 - Build CI United States of America flag

SPL Mapping FHIR R5 Implementation Guide, published by HL7 International / Biomedical Research and Regulation. This guide is not an authorized publication; it is the continuous build for version 0.2.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-spl/ and changes regularly. See the Directory of published versions

Data Type Profile: SPLAddress

Official URL: http://hl7.org/fhir/us/spl/StructureDefinition/SPLAddress Version: 0.2.1
Standards status: Trial-use Maturity Level: 1 Computable Name: SPLAddress

SPL-specific Constraints on the Address datatype dealing with US addresses.

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from Address

NameFlagsCard.TypeDescription & Constraintsdoco
.. Address C 0..* Address An address expressed using postal conventions (as opposed to GPS or other location definition formats)
spl-2.1.6.4: If the country is USA, then the state and postal code exist
spl-2.1.6.5: If the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
... line 1..2 string Street name, number, direction & P.O. Box etc.
... city S 1..1 string Name of city, town etc.
... state S 0..1 string Sub-unit of country (abbreviations ok)
... country S 1..1 string Country can either be the ISO 3-letter country code or the full country name matching the code.

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
spl-2.1.6.4errorAddressIf the country is USA, then the state and postal code exist
: country = 'USA' implies (state.exists() and state.length() = 2 and postalCode.exists())
spl-2.1.6.5errorAddressIf the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
: country = 'USA' implies postalCode.matches('^[0-9]{5}(-[0-9]{4})?$')
NameFlagsCard.TypeDescription & Constraintsdoco
.. Address C 0..* Address An address expressed using postal conventions (as opposed to GPS or other location definition formats)
ele-1: All FHIR elements must have a @value or children
spl-2.1.6.4: If the country is USA, then the state and postal code exist
spl-2.1.6.5: If the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address (home / work / etc.).


ele-1: All FHIR elements must have a @value or children
Example General: home
... line Σ 1..2 string Street name, number, direction & P.O. Box etc.
ele-1: All FHIR elements must have a @value or children
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
... city SΣ 1..1 string Name of city, town etc.
ele-1: All FHIR elements must have a @value or children
Example General: Erewhon
... postalCode SΣ 1..1 string Postal code for area
ele-1: All FHIR elements must have a @value or children
Example General: 9132
... country SΣ 1..1 string Country can either be the ISO 3-letter country code or the full country name matching the code.
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
spl-2.1.6.4errorAddressIf the country is USA, then the state and postal code exist
: country = 'USA' implies (state.exists() and state.length() = 2 and postalCode.exists())
spl-2.1.6.5errorAddressIf the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
: country = 'USA' implies postalCode.matches('^[0-9]{5}(-[0-9]{4})?$')
NameFlagsCard.TypeDescription & Constraintsdoco
.. Address C 0..* Address An address expressed using postal conventions (as opposed to GPS or other location definition formats)
spl-2.1.6.4: If the country is USA, then the state and postal code exist
spl-2.1.6.5: If the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
... id 0..1 id Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address (home / work / etc.).


Example General: home
... text Σ 0..1 string Text representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
... line Σ 1..2 string Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
... city SΣ 1..1 string Name of city, town etc.
Example General: Erewhon
... district Σ 0..1 string District name (aka county)
Example General: Madison
... state SΣ 0..1 string Sub-unit of country (abbreviations ok)
... postalCode SΣ 1..1 string Postal code for area
Example General: 9132
... country SΣ 1..1 string Country can either be the ISO 3-letter country code or the full country name matching the code.
... period Σ 0..1 Period Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|5.0.0
from the FHIR Standard
Address.typerequiredAddressType
http://hl7.org/fhir/ValueSet/address-type|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
spl-2.1.6.4errorAddressIf the country is USA, then the state and postal code exist
: country = 'USA' implies (state.exists() and state.length() = 2 and postalCode.exists())
spl-2.1.6.5errorAddressIf the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
: country = 'USA' implies postalCode.matches('^[0-9]{5}(-[0-9]{4})?$')

This structure is derived from Address

Summary

Mandatory: 4 elements
Must-Support: 4 elements

Maturity: 1

Differential View

This structure is derived from Address

NameFlagsCard.TypeDescription & Constraintsdoco
.. Address C 0..* Address An address expressed using postal conventions (as opposed to GPS or other location definition formats)
spl-2.1.6.4: If the country is USA, then the state and postal code exist
spl-2.1.6.5: If the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
... line 1..2 string Street name, number, direction & P.O. Box etc.
... city S 1..1 string Name of city, town etc.
... state S 0..1 string Sub-unit of country (abbreviations ok)
... country S 1..1 string Country can either be the ISO 3-letter country code or the full country name matching the code.

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
spl-2.1.6.4errorAddressIf the country is USA, then the state and postal code exist
: country = 'USA' implies (state.exists() and state.length() = 2 and postalCode.exists())
spl-2.1.6.5errorAddressIf the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
: country = 'USA' implies postalCode.matches('^[0-9]{5}(-[0-9]{4})?$')

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Address C 0..* Address An address expressed using postal conventions (as opposed to GPS or other location definition formats)
ele-1: All FHIR elements must have a @value or children
spl-2.1.6.4: If the country is USA, then the state and postal code exist
spl-2.1.6.5: If the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address (home / work / etc.).


ele-1: All FHIR elements must have a @value or children
Example General: home
... line Σ 1..2 string Street name, number, direction & P.O. Box etc.
ele-1: All FHIR elements must have a @value or children
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
... city SΣ 1..1 string Name of city, town etc.
ele-1: All FHIR elements must have a @value or children
Example General: Erewhon
... postalCode SΣ 1..1 string Postal code for area
ele-1: All FHIR elements must have a @value or children
Example General: 9132
... country SΣ 1..1 string Country can either be the ISO 3-letter country code or the full country name matching the code.
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
spl-2.1.6.4errorAddressIf the country is USA, then the state and postal code exist
: country = 'USA' implies (state.exists() and state.length() = 2 and postalCode.exists())
spl-2.1.6.5errorAddressIf the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
: country = 'USA' implies postalCode.matches('^[0-9]{5}(-[0-9]{4})?$')

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Address C 0..* Address An address expressed using postal conventions (as opposed to GPS or other location definition formats)
spl-2.1.6.4: If the country is USA, then the state and postal code exist
spl-2.1.6.5: If the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
... id 0..1 id Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address (home / work / etc.).


Example General: home
... text Σ 0..1 string Text representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
... line Σ 1..2 string Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
... city SΣ 1..1 string Name of city, town etc.
Example General: Erewhon
... district Σ 0..1 string District name (aka county)
Example General: Madison
... state SΣ 0..1 string Sub-unit of country (abbreviations ok)
... postalCode SΣ 1..1 string Postal code for area
Example General: 9132
... country SΣ 1..1 string Country can either be the ISO 3-letter country code or the full country name matching the code.
... period Σ 0..1 Period Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|5.0.0
from the FHIR Standard
Address.typerequiredAddressType
http://hl7.org/fhir/ValueSet/address-type|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
spl-2.1.6.4errorAddressIf the country is USA, then the state and postal code exist
: country = 'USA' implies (state.exists() and state.length() = 2 and postalCode.exists())
spl-2.1.6.5errorAddressIf the country is USA, then the postal code is 5 digits with an optional dash and 4 numbers
: country = 'USA' implies postalCode.matches('^[0-9]{5}(-[0-9]{4})?$')

This structure is derived from Address

Summary

Mandatory: 4 elements
Must-Support: 4 elements

Maturity: 1

 

Other representations of profile: CSV, Excel, Schematron