This
page
is
part
of
the
FHIR
Specification
(v3.0.2:
STU
3).
The
current
version
which
supercedes
this
version
is
5.0.0
.
For
a
full
list
Continuous
Integration
Build
of
available
versions,
see
FHIR
(will
be
incorrect/inconsistent
at
times).
See
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R4
R3
Responsible
Owner:
FHIR
Infrastructure
Work
Group
|
Normative
|
|
Compartments
:
|
Detailed Descriptions for the elements in the CompartmentDefinition resource.
| CompartmentDefinition | |||||||||
|
| CompartmentDefinition | ||||||||
| Definition |
A compartment definition that defines how resources are accessed on a server. |
||||||||
| Short Display | Compartment Definition for a resource | ||||||||
| Cardinality | 0..* | ||||||||
|
| CanonicalResource | ||||||||
|
| false | ||||||||
| Comments |
In FHIR, search is not performed directly on a resource (by XML or JSON path), but on a named parameter that maps into the resource content. |
||||||||
| Constraints |
| ||||||||
| CompartmentDefinition.url | |||||||||
|
| CompartmentDefinition.url | ||||||||
| Definition |
An
absolute
URI
that
is
used
to
identify
this
compartment
definition
when
it
is
referenced
in
a
specification,
model,
design
or
an
|
||||||||
| Short Display | Canonical identifier for this compartment definition, represented as a URI (globally unique) | ||||||||
| Cardinality | 1..1 | ||||||||
| Type | uri | ||||||||
| Requirements |
Allows the compartment definition to be referenced by a single globally unique identifier. |
||||||||
| Summary | true | ||||||||
| Comments |
Can
be
a
urn:uuid:
or
a
The determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in Technical and Business Versions . In some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the meta.source element to indicate where the current master source of the resource can be found. |
||||||||
| Constraints |
| ||||||||
| CompartmentDefinition.version | |||||||||
| Element Id | CompartmentDefinition.version | ||||||||
| Definition | The identifier that is used to identify this version of the compartment definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the compartment definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. | ||||||||
| Short Display | Business version of the compartment definition | ||||||||
| Note | This is a business versionId, not a resource version id (see discussion ) | ||||||||
| Cardinality | 0..1 | ||||||||
| Type | string | ||||||||
| Summary | true | ||||||||
| Comments | There may be different compartment definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the compartment definition with the format [url]|[version]. The version SHOULD NOT contain a '#' - see Business Version . | ||||||||
| CompartmentDefinition.versionAlgorithm[x] | |||||||||
| Element Id | CompartmentDefinition.versionAlgorithm[x] | ||||||||
| Definition | Indicates the mechanism used to compare versions to determine which is more current. | ||||||||
| Short Display | How to compare versions | ||||||||
| Cardinality | 0..1 | ||||||||
| Terminology Binding | Version Algorithm ( Extensible ) | ||||||||
| Type | string | Coding | ||||||||
| [x] Note | See Choice of Datatypes for further information about how to use [x] | ||||||||
| Summary | true | ||||||||
| Comments | If set as a string, this is a FHIRPath expression that has two additional context variables passed in - %version1 and %version2 and will return a negative number if version1 is newer, a positive number if version2 and a 0 if the version ordering can't be successfully be determined. | ||||||||
| CompartmentDefinition.name | |||||||||
|
|
CompartmentDefinition.name | ||||||||
| Definition |
A natural language name identifying the compartment definition. This name should be usable as an identifier for the module by machine processing applications such as code generation. |
||||||||
| Short Display | Name for this compartment definition (computer friendly) | ||||||||
|
|
1..1 | ||||||||
| Type | string | ||||||||
| Requirements |
Support human navigation and code generation. |
||||||||
| Summary | true | ||||||||
| Comments |
The
name
is
not
expected
to
be
globally
unique.
The
name
should
be
a
simple
|
||||||||
| Constraints |
| ||||||||
| CompartmentDefinition.title | |||||||||
|
| CompartmentDefinition.title | ||||||||
| Definition |
A
short,
descriptive,
user-friendly
title
for
the
|
||||||||
| Short Display | Name for this compartment definition (human friendly) | ||||||||
| Cardinality | 0..1 | ||||||||
| Type | string | ||||||||
| Summary | true | ||||||||
| Comments |
This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc. |
||||||||
| CompartmentDefinition.status | |||||||||
|
| CompartmentDefinition.status | ||||||||
| Definition |
The status of this compartment definition. Enables tracking the life-cycle of the content. |
||||||||
| Short Display | draft | active | retired | unknown | ||||||||
| Cardinality | 1..1 | ||||||||
| Terminology Binding | PublicationStatus ( Required ) | ||||||||
| Type | code | ||||||||
| Is Modifier | true (Reason: This is labeled as "Is Modifier" because applications should not use a retired {{title}} without due consideration) | ||||||||
| Summary | true | ||||||||
| Comments |
Allows
filtering
of
compartment
definitions
that
are
appropriate
for
use
See guidance around (not) making local changes to elements here . |
||||||||
| CompartmentDefinition.experimental | |||||||||
|
| CompartmentDefinition.experimental | ||||||||
| Definition |
A
|
||||||||
| Short Display | For testing only - never for real usage | ||||||||
| Cardinality | 0..1 | ||||||||
| Type | boolean | ||||||||
|
|
|
||||||||
| Requirements |
Enables experimental content to be developed following the same lifecycle that would be used for a production-level compartment definition. |
||||||||
| Summary | true | ||||||||
| Comments |
Allows
filtering
of
compartment
Experimental resources are not expected to be stable and may well have breaking changes without a corresponding change to the 'version' element. |
||||||||
| CompartmentDefinition.date | |||||||||
|
|
CompartmentDefinition.date | ||||||||
| Definition |
The
date
(and
optionally
time)
when
the
compartment
definition
was
|
||||||||
| Short Display | Date last changed | ||||||||
| Cardinality | 0..1 | ||||||||
| Type | dateTime | ||||||||
| Alternate Names | Revision Date | ||||||||
| Summary | true | ||||||||
| Comments |
The date is often not tracked until the resource is published, but may be present on draft content. Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the compartment definition. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource. See guidance around (not) making local changes to elements here . |
||||||||
| CompartmentDefinition.publisher | |||||||||
|
| CompartmentDefinition.publisher | ||||||||
| Definition |
The
name
of
the
|
||||||||
| Short Display | Name of the publisher/steward (organization or individual) | ||||||||
| Cardinality | 0..1 | ||||||||
| Type | string | ||||||||
| Requirements |
Helps
establish
the
|
||||||||
| Summary | true | ||||||||
| Comments |
Usually
an
|
||||||||
| CompartmentDefinition.contact | |||||||||
|
|
CompartmentDefinition.contact | ||||||||
| Definition |
Contact details to assist a user in finding and communicating with the publisher. |
||||||||
| Short Display | Contact details for the publisher | ||||||||
|
|
0..* | ||||||||
| Type | ContactDetail | ||||||||
| Summary | true | ||||||||
| Comments |
May be a web site, an email address, a telephone number, etc. See guidance around (not) making local changes to elements here . |
||||||||
| CompartmentDefinition.description | |||||||||
|
|
CompartmentDefinition.description | ||||||||
| Definition |
A free text natural language description of the compartment definition from a consumer's perspective. |
||||||||
| Short Display | Natural language description of the compartment definition | ||||||||
| Cardinality | 0..1 | ||||||||
| Type | markdown | ||||||||
|
| false | ||||||||
| Comments |
This
description
can
be
used
to
capture
details
such
as
|
||||||||
|
|
|||||||||
|
|
|
||||||||
| Definition |
The
content
was
developed
with
a
focus
and
intent
of
supporting
the
contexts
that
are
listed.
These
|
||||||||
| Short Display | The context that the content is intended to support | ||||||||
| Cardinality | 0..* | ||||||||
| Type | UsageContext | ||||||||
| Requirements |
Assist in searching for appropriate content. |
||||||||
| Summary | true | ||||||||
| Comments |
When
multiple
useContexts
are
specified,
there
is
no
expectation
|
||||||||
|
|
|||||||||
|
| CompartmentDefinition.purpose | ||||||||
| Definition |
|
||||||||
|
|
|
||||||||
|
|
|
||||||||
| Type |
|
||||||||
| Summary |
|
||||||||
| Comments |
|
||||||||
| CompartmentDefinition.code | |||||||||
|
| CompartmentDefinition.code | ||||||||
| Definition |
Which compartment this definition describes. |
||||||||
| Short Display | Patient | Encounter | RelatedPerson | Practitioner | Device | EpisodeOfCare | ||||||||
| Cardinality | 1..1 | ||||||||
| Terminology Binding |
|
||||||||
| Type | code | ||||||||
| Summary | true | ||||||||
| Comments |
Only the specification can define the compartments that can exist. Servers can choose to support them. |
||||||||
| CompartmentDefinition.search | |||||||||
|
|
CompartmentDefinition.search | ||||||||
| Definition |
Whether the search syntax is supported,. |
||||||||
| Short Display | Whether the search syntax is supported | ||||||||
| Cardinality | 1..1 | ||||||||
| Type | boolean | ||||||||
| Summary | true | ||||||||
| Comments |
Servers may define and use compartments to manage logical access without implementing the compartment related syntax. |
||||||||
| CompartmentDefinition.resource | |||||||||
|
|
CompartmentDefinition.resource | ||||||||
| Definition |
Information about how a resource is related to the compartment. |
||||||||
| Short Display | How a resource is related to the compartment | ||||||||
| Cardinality | 0..* | ||||||||
| Summary | true | ||||||||
| CompartmentDefinition.resource.code | |||||||||
|
| CompartmentDefinition.resource.code | ||||||||
| Definition |
The name of a resource supported by the server. |
||||||||
| Short Display | Name of resource type | ||||||||
| Cardinality | 1..1 | ||||||||
| Terminology Binding |
|
||||||||
| Type | code | ||||||||
| Summary | true | ||||||||
| CompartmentDefinition.resource.param | |||||||||
|
| CompartmentDefinition.resource.param | ||||||||
| Definition |
The
|
||||||||
| Short Display | Search Parameter Name, or chained parameters | ||||||||
| Cardinality | 0..* | ||||||||
| Type | string | ||||||||
| Summary | true | ||||||||
| Comments |
More than one may be listed because a resource may be linked to a compartment in more than one way. Note that a given server might use a different 'code' for the SearchParameter in their CapabilityStatement. The inclusion rules are based on the 'base' HL7 search parameter code value, not the server-specific code value. E.g. if a server uses code 'doc' instead of 'performer' for their Procedure performer search performer, the 'doc' search would still apply when determining membership in the Practitioner compartment. If no search parameters are listed, then the resource is not linked to the compartment. |
||||||||
|
|
|||||||||
|
| CompartmentDefinition.resource.startParam | ||||||||
| Definition |
|
||||||||
| Short Display | Search Param for interpreting $everything.start | ||||||||
| Cardinality | 0..1 | ||||||||
| Type | uri | ||||||||
| Summary | false | ||||||||
| CompartmentDefinition.resource.endParam | |||||||||
| Element Id | CompartmentDefinition.resource.endParam | ||||||||
| Definition | Search Parameter for mapping requests made with $everything.end (e.g. on Patient.$everything ). | ||||||||
| Short Display | Search Param for interpreting $everything.end | ||||||||
| Cardinality | 0..1 | ||||||||
| Type | uri | ||||||||
|
|
false | ||||||||