Visit the HL7 website
Visit the FHIR website

Primary Care

current   Canada flag
  • Index
  • Home
  • Business Context
    • Architectural Considerations
    • Use Cases
    • Future Enhancements
    • Consolidation Methodology
  • Technical Context
    • Conformance Guidance
    • Mappings
  • FHIR Artifacts
    • FHIR Artifacts
    • Actors
    • Profiles
    • Extensions
    • Search
    • Data Types
    • Capability Statement
    • Terminology
    • Examples
    • Packages
  • Change Log
    1. Index
    2. FHIR Artifacts
    3. Data Types
    4. Range

dft-preBallot - This is the first draft of the P-Care IG. For a full list of available versions, see the Directory of published versions

Range

Links

Profile

range

Derived from

http://hl7.org/fhir/StructureDefinition/Range

Examples

Description

A set of ordered Quantities defined by a low and high limit.

References to this resource

Resource Content

  • Tree view
  • Overview
  • XML
  • JSON
PCareRange (Range)CRange
There are no (further) constraints on this element
Element id
Range
Short description

Set of values bounded by low and high

Definition

A set of ordered Quantities defined by a low and high limit.

Comments

The stated low and high value are assumed to have arbitrarily high precision when it comes to determining which values are in the range. I.e. 1.99 is not in the range 2 -> 3.

Data type

Range

Conditions

The cardinality or value of this element may be affected by these constraints: ele-1

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • rng-2: If present, low SHALL have a lower value than high
    low.empty() or high.empty() or (low <= high)
Mappings
  • rim: n/a
  • v2: NR and also possibly SN (but see also quantity)
  • rim: IVL<QTY[not(type="TS")]> [lowClosed="true" and highClosed="true"]or URG<QTY[not(type="TS")]>
id0..1string
There are no (further) constraints on this element
Element id
Range.id
Short description

Unique id for inter-element referencing

Definition

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

Data type

string

Mappings
  • rim: n/a
extensionC0..*Extension
There are no (further) constraints on this element
Element id
Range.extension
Short description

Additional content defined by implementations

Alternate names

extensions, user content

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.

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.

Data type

Extension

Slicing

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url

Conditions

The cardinality or value of this element may be affected by these constraints: ele-1

Constraints
  • ele-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()
Mappings
  • rim: n/a
  • rim: N/A
lowO Σ C0..1PCareSimpleQuantityElement id
Range.low
Short description

A fixed quantity (no comparator)

Definition

The comparator is not used on a SimpleQuantity

Comments

The context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator.

Data type

PCareSimpleQuantity

Conditions

The cardinality or value of this element may be affected by these constraints: ele-1

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • qty-3: If a code for the unit is present, the system SHALL also be present
    code.empty() or system.exists()
  • sqty-1: The comparator is not used on a SimpleQuantity
    comparator.empty()
Mappings
  • rim: n/a
  • v2: SN (see also Range) or CQ
  • rim: PQ, IVL<PQ>, MO, CO, depending on the values
  • v2: NR.1
  • rim: ./low
Obligations
NameCodeDocumentationActor
pcareSHALL:populate
SHOULD:persist
SHALL:no-error

P-Care server population, persistence, and acceptance requirements for this element.

http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server
highO Σ C0..1PCareSimpleQuantityElement id
Range.high
Short description

A fixed quantity (no comparator)

Definition

The comparator is not used on a SimpleQuantity

Comments

The context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator.

Data type

PCareSimpleQuantity

Conditions

The cardinality or value of this element may be affected by these constraints: ele-1

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • qty-3: If a code for the unit is present, the system SHALL also be present
    code.empty() or system.exists()
  • sqty-1: The comparator is not used on a SimpleQuantity
    comparator.empty()
Mappings
  • rim: n/a
  • v2: SN (see also Range) or CQ
  • rim: PQ, IVL<PQ>, MO, CO, depending on the values
  • v2: NR.2
  • rim: ./high
Obligations
NameCodeDocumentationActor
pcareSHALL:populate
SHOULD:persist
SHALL:no-error

P-Care server population, persistence, and acceptance requirements for this element.

http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server
PCareRange (Range)CRange
There are no (further) constraints on this element
Element id
Range
Short description

Set of values bounded by low and high

Definition

A set of ordered Quantities defined by a low and high limit.

Comments

The stated low and high value are assumed to have arbitrarily high precision when it comes to determining which values are in the range. I.e. 1.99 is not in the range 2 -> 3.

Data type

Range

Conditions

The cardinality or value of this element may be affected by these constraints: ele-1

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • rng-2: If present, low SHALL have a lower value than high
    low.empty() or high.empty() or (low <= high)
Mappings
  • rim: n/a
  • v2: NR and also possibly SN (but see also quantity)
  • rim: IVL<QTY[not(type="TS")]> [lowClosed="true" and highClosed="true"]or URG<QTY[not(type="TS")]>
id0..1string
There are no (further) constraints on this element
Element id
Range.id
Short description

Unique id for inter-element referencing

Definition

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

Data type

string

Mappings
  • rim: n/a
extensionC0..*Extension
There are no (further) constraints on this element
Element id
Range.extension
Short description

Additional content defined by implementations

Alternate names

extensions, user content

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.

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.

Data type

Extension

Slicing

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url

Constraints
  • ele-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()
Mappings
  • rim: n/a
lowO Σ C0..1PCareSimpleQuantity
There are no (further) constraints on this element
Element id
Range.low
Short description

Low limit

Definition

The low limit. The boundary is inclusive.

Comments

If the low element is missing, the low boundary is not known.

Data type

PCareSimpleQuantity

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • sqty-1: The comparator is not used on a SimpleQuantity
    comparator.empty()
Mappings
  • v2: NR.1
  • rim: ./low
Obligations
NameCodeDocumentationActorHttp://hl7.org/fhir/tools/StructureDefinition/snapshot-source
pcareSHALL:populate
SHOULD:persist
SHALL:no-error

P-Care server population, persistence, and acceptance requirements for this element.

http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-serverhttp://fhir.infoway-inforoute.ca/p-care/StructureDefinition/range|0.1.0
highO Σ C0..1PCareSimpleQuantity
There are no (further) constraints on this element
Element id
Range.high
Short description

High limit

Definition

The high limit. The boundary is inclusive.

Comments

If the high element is missing, the high boundary is not known.

Data type

PCareSimpleQuantity

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • sqty-1: The comparator is not used on a SimpleQuantity
    comparator.empty()
Mappings
  • v2: NR.2
  • rim: ./high
Obligations
NameCodeDocumentationActorHttp://hl7.org/fhir/tools/StructureDefinition/snapshot-source
pcareSHALL:populate
SHOULD:persist
SHALL:no-error

P-Care server population, persistence, and acceptance requirements for this element.

http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-serverhttp://fhir.infoway-inforoute.ca/p-care/StructureDefinition/range|0.1.0
<StructureDefinition xmlns="http://hl7.org/fhir">
<id value="range" />
<text>
<status value="extensions" />
--- We have skipped the narrative for better readability of the resource ---
</text>
<url value="http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/range" />
<version value="0.1.0" />
<name value="PCareRange" />
<title value="P-Care Range" />
<status value="draft" />
<date value="2026-10-19T22:14:59+00:00" />
<publisher value="Infoway" />
<description value="A set of ordered Quantities defined by a low and high limit." />
<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>
<kind value="complex-type" />
<abstract value="false" />
<type value="Range" />
<baseDefinition value="http://hl7.org/fhir/StructureDefinition/Range" />
<derivation value="constraint" />
<snapshot>
<extension url="http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version">
<valueString value="4.0.1" />
</extension>
<element id="Range">
<path value="Range" />
<short value="Set of values bounded by low and high" />
<definition value="A set of ordered Quantities defined by a low and high limit." />
<comment value="The stated low and high value are assumed to have arbitrarily high precision when it comes to determining which values are in the range. I.e. 1.99 is not in the range 2 -> 3." />
<min value="0" />
<max value="*" />
<base>
<path value="Range" />
<min value="0" />
<max value="*" />
</base>
<condition value="ele-1" />
<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() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<constraint>
<key value="rng-2" />
<severity value="error" />
<human value="If present, low SHALL have a lower value than high" />
<expression value="low.empty() or high.empty() or (low <= high)" />
<xpath value="not(exists(f:low/f:value/@value)) or not(exists(f:high/f:value/@value)) or (number(f:low/f:value/@value) <= number(f:high/f:value/@value))" />
<source value="http://hl7.org/fhir/StructureDefinition/Range" />
</constraint>
<isModifier value="false" />
<mapping>
<identity value="rim" />
<map value="n/a" />
</mapping>
<mapping>
<identity value="v2" />
<map value="NR and also possibly SN (but see also quantity)" />
</mapping>
<mapping>
<identity value="rim" />
<map value="IVL<QTY[not(type="TS")]> [lowClosed="true" and highClosed="true"]or URG<QTY[not(type="TS")]>" />
</mapping>
</element>
<element id="Range.id">
<path value="Range.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="Range.extension">
<path value="Range.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() > 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(.), "value")])" />
<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="Range.low">
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="name">
<valueString value="pcare" />
</extension>
<extension url="code">
<valueCode value="SHALL:populate" />
</extension>
<extension url="code">
<valueCode value="SHOULD:persist" />
</extension>
<extension url="code">
<valueCode value="SHALL:no-error" />
</extension>
<extension url="documentation">
<valueMarkdown value="P-Care server population, persistence, and acceptance requirements for this element." />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server" />
</extension>
<extension url="http://hl7.org/fhir/tools/StructureDefinition/snapshot-source">
<valueCanonical value="http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/range|0.1.0" />
</extension>
</extension>
<path value="Range.low" />
<short value="Low limit" />
<definition value="The low limit. The boundary is inclusive." />
<comment value="If the low element is missing, the low boundary is not known." />
<min value="0" />
<max value="1" />
<base>
<path value="Range.low" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="Quantity" />
<profile value="http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/simple-quantity">
<extension url="http://hl7.org/fhir/tools/StructureDefinition/type-profile-constraints">
<valueCode value="full" />
</extension>
</profile>
</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() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<constraint>
<key value="sqty-1" />
<severity value="error" />
<human value="The comparator is not used on a SimpleQuantity" />
<expression value="comparator.empty()" />
<source value="http://hl7.org/fhir/StructureDefinition/SimpleQuantity" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="v2" />
<map value="NR.1" />
</mapping>
<mapping>
<identity value="rim" />
<map value="./low" />
</mapping>
</element>
<element id="Range.high">
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="name">
<valueString value="pcare" />
</extension>
<extension url="code">
<valueCode value="SHALL:populate" />
</extension>
<extension url="code">
<valueCode value="SHOULD:persist" />
</extension>
<extension url="code">
<valueCode value="SHALL:no-error" />
</extension>
<extension url="documentation">
<valueMarkdown value="P-Care server population, persistence, and acceptance requirements for this element." />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server" />
</extension>
<extension url="http://hl7.org/fhir/tools/StructureDefinition/snapshot-source">
<valueCanonical value="http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/range|0.1.0" />
</extension>
</extension>
<path value="Range.high" />
<short value="High limit" />
<definition value="The high limit. The boundary is inclusive." />
<comment value="If the high element is missing, the high boundary is not known." />
<min value="0" />
<max value="1" />
<base>
<path value="Range.high" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="Quantity" />
<profile value="http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/simple-quantity">
<extension url="http://hl7.org/fhir/tools/StructureDefinition/type-profile-constraints">
<valueCode value="full" />
</extension>
</profile>
</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() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<constraint>
<key value="sqty-1" />
<severity value="error" />
<human value="The comparator is not used on a SimpleQuantity" />
<expression value="comparator.empty()" />
<source value="http://hl7.org/fhir/StructureDefinition/SimpleQuantity" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="v2" />
<map value="NR.2" />
</mapping>
<mapping>
<identity value="rim" />
<map value="./high" />
</mapping>
</element>
</snapshot>
<differential>
<element id="Range.low">
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="name">
<valueString value="pcare" />
</extension>
<extension url="code">
<valueCode value="SHALL:populate" />
</extension>
<extension url="code">
<valueCode value="SHOULD:persist" />
</extension>
<extension url="code">
<valueCode value="SHALL:no-error" />
</extension>
<extension url="documentation">
<valueMarkdown value="P-Care server population, persistence, and acceptance requirements for this element." />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server" />
</extension>
</extension>
<path value="Range.low" />
<type>
<code value="Quantity" />
<profile value="http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/simple-quantity" />
</type>
</element>
<element id="Range.high">
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="name">
<valueString value="pcare" />
</extension>
<extension url="code">
<valueCode value="SHALL:populate" />
</extension>
<extension url="code">
<valueCode value="SHOULD:persist" />
</extension>
<extension url="code">
<valueCode value="SHALL:no-error" />
</extension>
<extension url="documentation">
<valueMarkdown value="P-Care server population, persistence, and acceptance requirements for this element." />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server" />
</extension>
</extension>
<path value="Range.high" />
<type>
<code value="Quantity" />
<profile value="http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/simple-quantity" />
</type>
</element>
</differential>
</StructureDefinition>
{
"resourceType": "StructureDefinition",
"id": "range",
"text": {
"status": "extensions",
--- We have skipped the narrative for better readability of the resource ---
},
"url": "http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/range",
"version": "0.1.0",
"name": "PCareRange",
"title": "P-Care Range",
"status": "draft",
"date": "2026-10-19T22:14:59+00:00",
"publisher": "Infoway",
"description": "A set of ordered Quantities defined by a low and high limit.",
"fhirVersion": "4.0.1",
"mapping": [
{
"identity": "v2",
"uri": "http://hl7.org/v2",
"name": "HL7 v2 Mapping"
},
{
"identity": "rim",
"uri": "http://hl7.org/v3",
"name": "RIM Mapping"
}
],
"kind": "complex-type",
"abstract": false,
"type": "Range",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Range",
"derivation": "constraint",
"snapshot": {
"extension": [
{
"url": "http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version",
"valueString": "4.0.1"
}
],
"element": [
{
"id": "Range",
"path": "Range",
"short": "Set of values bounded by low and high",
"definition": "A set of ordered Quantities defined by a low and high limit.",
"comment": "The stated low and high value are assumed to have arbitrarily high precision when it comes to determining which values are in the range. I.e. 1.99 is not in the range 2 -> 3.",
"min": 0,
"max": "*",
"base": {
"path": "Range",
"min": 0,
"max": "*"
},
"condition": [
"ele-1"
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
},
{
"key": "rng-2",
"severity": "error",
"human": "If present, low SHALL have a lower value than high",
"expression": "low.empty() or high.empty() or (low <= high)",
"xpath": "not(exists(f:low/f:value/@value)) or not(exists(f:high/f:value/@value)) or (number(f:low/f:value/@value) <= number(f:high/f:value/@value))",
"source": "http://hl7.org/fhir/StructureDefinition/Range"
}
],
"isModifier": false,
"mapping": [
{
"identity": "rim",
"map": "n/a"
},
{
"identity": "v2",
"map": "NR and also possibly SN (but see also quantity)"
},
{
"identity": "rim",
"map": "IVL<QTY[not(type=\"TS\")]> [lowClosed=\"true\" and highClosed=\"true\"]or URG<QTY[not(type=\"TS\")]>"
}
]
},
{
"id": "Range.id",
"path": "Range.id",
"representation": [
"xmlAttr"
],
"short": "Unique id for inter-element referencing",
"definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
"min": 0,
"max": "1",
"base": {
"path": "Element.id",
"min": 0,
"max": "1"
},
"type": [
{
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
"valueUrl": "string"
}
],
"code": "http://hl7.org/fhirpath/System.String"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "n/a"
}
]
},
{
"id": "Range.extension",
"path": "Range.extension",
"slicing": {
"discriminator": [
{
"type": "value",
"path": "url"
}
],
"description": "Extensions are always sliced by (at least) url",
"rules": "open"
},
"short": "Additional content defined by implementations",
"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.",
"comment": "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": [
"extensions",
"user content"
],
"min": 0,
"max": "*",
"base": {
"path": "Element.extension",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Extension"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
},
{
"key": "ext-1",
"severity": "error",
"human": "Must have either extensions or value[x], not both",
"expression": "extension.exists() != value.exists()",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
"source": "http://hl7.org/fhir/StructureDefinition/Extension"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "n/a"
}
]
},
{
"id": "Range.low",
"extension": [
{
"extension": [
{
"url": "name",
"valueString": "pcare"
},
{
"url": "code",
"valueCode": "SHALL:populate"
},
{
"url": "code",
"valueCode": "SHOULD:persist"
},
{
"url": "code",
"valueCode": "SHALL:no-error"
},
{
"url": "documentation",
"valueMarkdown": "P-Care server population, persistence, and acceptance requirements for this element."
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server"
},
{
"url": "http://hl7.org/fhir/tools/StructureDefinition/snapshot-source",
"valueCanonical": "http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/range|0.1.0"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
}
],
"path": "Range.low",
"short": "Low limit",
"definition": "The low limit. The boundary is inclusive.",
"comment": "If the low element is missing, the low boundary is not known.",
"min": 0,
"max": "1",
"base": {
"path": "Range.low",
"min": 0,
"max": "1"
},
"type": [
{
"code": "Quantity",
"profile": [
"http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/simple-quantity"
],
"_profile": [
{
"extension": [
{
"url": "http://hl7.org/fhir/tools/StructureDefinition/type-profile-constraints",
"valueCode": "full"
}
]
}
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
},
{
"key": "sqty-1",
"severity": "error",
"human": "The comparator is not used on a SimpleQuantity",
"expression": "comparator.empty()",
"source": "http://hl7.org/fhir/StructureDefinition/SimpleQuantity"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "v2",
"map": "NR.1"
},
{
"identity": "rim",
"map": "./low"
}
]
},
{
"id": "Range.high",
"extension": [
{
"extension": [
{
"url": "name",
"valueString": "pcare"
},
{
"url": "code",
"valueCode": "SHALL:populate"
},
{
"url": "code",
"valueCode": "SHOULD:persist"
},
{
"url": "code",
"valueCode": "SHALL:no-error"
},
{
"url": "documentation",
"valueMarkdown": "P-Care server population, persistence, and acceptance requirements for this element."
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server"
},
{
"url": "http://hl7.org/fhir/tools/StructureDefinition/snapshot-source",
"valueCanonical": "http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/range|0.1.0"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
}
],
"path": "Range.high",
"short": "High limit",
"definition": "The high limit. The boundary is inclusive.",
"comment": "If the high element is missing, the high boundary is not known.",
"min": 0,
"max": "1",
"base": {
"path": "Range.high",
"min": 0,
"max": "1"
},
"type": [
{
"code": "Quantity",
"profile": [
"http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/simple-quantity"
],
"_profile": [
{
"extension": [
{
"url": "http://hl7.org/fhir/tools/StructureDefinition/type-profile-constraints",
"valueCode": "full"
}
]
}
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
},
{
"key": "sqty-1",
"severity": "error",
"human": "The comparator is not used on a SimpleQuantity",
"expression": "comparator.empty()",
"source": "http://hl7.org/fhir/StructureDefinition/SimpleQuantity"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "v2",
"map": "NR.2"
},
{
"identity": "rim",
"map": "./high"
}
]
}
]
},
"differential": {
"element": [
{
"id": "Range.low",
"extension": [
{
"extension": [
{
"url": "name",
"valueString": "pcare"
},
{
"url": "code",
"valueCode": "SHALL:populate"
},
{
"url": "code",
"valueCode": "SHOULD:persist"
},
{
"url": "code",
"valueCode": "SHALL:no-error"
},
{
"url": "documentation",
"valueMarkdown": "P-Care server population, persistence, and acceptance requirements for this element."
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
}
],
"path": "Range.low",
"type": [
{
"code": "Quantity",
"profile": [
"http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/simple-quantity"
]
}
]
},
{
"id": "Range.high",
"extension": [
{
"extension": [
{
"url": "name",
"valueString": "pcare"
},
{
"url": "code",
"valueCode": "SHALL:populate"
},
{
"url": "code",
"valueCode": "SHOULD:persist"
},
{
"url": "code",
"valueCode": "SHALL:no-error"
},
{
"url": "documentation",
"valueMarkdown": "P-Care server population, persistence, and acceptance requirements for this element."
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-server"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
}
],
"path": "Range.high",
"type": [
{
"code": "Quantity",
"profile": [
"http://fhir.infoway-inforoute.ca/p-care/StructureDefinition/simple-quantity"
]
}
]
}
]
}
}

Constraints

Obligations

ElementActorCode
highhttp://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-serverSHALL:populate, SHOULD:persist, SHALL:no-error
lowhttp://fhir.infoway-inforoute.ca/p-care/ActorDefinition/pcare-serverSHALL:populate, SHOULD:persist, SHALL:no-error

Terminology bindings (Differential)

Terminology bindings (Snapshot)

Additional Terminology Bindings Only

IG © based on FHIR R4 | template version 2.5.1 | Package project:p-care
Copyright © 2026 Canada Health Infoway. All rights reserved. Terms of Use & License Agreements. Privacy Policy.
HL7® and FHIR® are the registered trademarks of Health Level Seven International