R6 Ballot (1st Draft)

This page is part of the FHIR Specification v6.0.0-ballot1: Release 6 Ballot (1st Draft) (see Ballot Notes). The current version is 5.0.0. For a full list of available versions, see the Directory of published versions

8.3 Resource Group - Content

FHIR Infrastructure icon Work GroupMaturity Level: 3 Trial UseSecurity Category: Business Compartments: Device, Patient, Practitioner

Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively, and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization.

The Group resource is used in one of two ways:

  1. To define a group of specific people, animals, devices, etc. that is being tracked, examined or otherwise referenced as part of healthcare-related activities
  2. To define a set of possible people, animals, devices, etc. that are of interest for some intended future healthcare-related activities

Examples of the former could include group therapy or treatment sessions, exposed entities tracked as part of public health, etc. The latter might be used to define expected subjects for a clinical study.

Both use cases are handled by a single resource because the data elements captured tend to be similar.

NOTE: While Specimen does not quite fit with this definition, it is being retained as part of Group to avoid making a breaking change to the Observation resource.

There are a number of mechanisms in FHIR for communicating collections of resources:

  • The List resource - enumerates a flat collection of resources and provides features for managing the collection. While a particular List instance may represent a "snapshot", from a business process perspective the notion of "List" is dynamic – items are added and removed over time. The List resource references other resources. Lists may be curated and have specific business meaning. For use cases where Group is suitable (e.g. for a list of Patients to be viewed on a dashboard), the Group resource should be preferred to the List resource. The underlying rationale is that a collection of patients, practitioners, etc. is likely to be of interest as the subject of a measure, observation, communication, etc., which Group is intended to support.
  • This Group resource - defines a group of specific people, animals, devices etc. by enumerating them, or by describing qualities that group members have. The group resource refers to other resources, possibly implicitly. Groups are intended to be acted upon or observed as a whole; e.g. performing therapy on a group, calculating risk for a group, etc. This resource will commonly be used for public health (e.g. describing an at-risk population), clinical trials (e.g. defining a test subject pool) and similar purposes.
  • CareTeam. Group is distinct from CareTeam. Group is patient-independent and identifies an undifferentiated set of individuals who are intended to be the target of one or more clinical activities (e.g. set of clinical trial participants, set of individuals impacted by or at risk of a public health event, a herd or flock, etc.) The CareTeam resource establishes a set of relationships and roles and is specific to a particular Patient. The actors are the individual members or organized group of individuals. CareTeam can be referenced by EpisodeOfCare, Encounter, or CarePlan to identify the set of individuals (and their respective roles) who are intended to be involved in providing the care defined by those resources.
  • The Bundle resource - is an infrastructure container for a group of resources. It does not have narrative and is used to group collections of resources for transmission, persistence or processing (e.g. messages, documents, transactions, query responses, etc.) The content of bundles is typically algorithmically determined for a particular exchange or persistence purpose.
  • The Composition resource - defines a set of healthcare-related information that is assembled together into a single logical document that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. The composition resource provides the basic structure of a FHIR document. The full content of the document is expressed using a bundle. Compositions will often reference Lists as the focus of particular sections.
  • The DomainResource.contained element - allows multiple resources to be nested inside any DomainResource. This is a special type of grouping where the grouped resources lose independent existence - they no longer have their own identifiers, can't easily be queried independently, etc. Use of this grouping is a technical mechanism for managing the independence of resources and has no impact on meaning.
Contained, bundled and remotely referenced resources convey the same meaning.

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Group TUDomainResourceGroup of multiple entities
+ Rule: Group.type SHALL be defined if Group.membership is either 'definitional' or 'enumerated'

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
Interfaces Implemented: CanonicalResource
... url ΣC0..1uriCanonical identifier for this Group, represented as an absolute URI (globally unique)
+ Warning: URL should not contain | or # - these characters make processing canonical references problematic
... identifier Σ0..*IdentifierBusiness Identifier for this Group

... version Σ0..1stringBusiness version of the Group
.... versionAlgorithmStringstring
.... versionAlgorithmCodingCoding
... name Σ0..1stringLabel for Group
... title Σ0..1stringName for this Group (human friendly)
... status ?!Σ0..1codedraft | active | retired | unknown
Binding: PublicationStatus (Required)
... experimental Σ0..1booleanFor testing purposes, not real usage
... date Σ0..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher/steward (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher

... description 0..1markdownNatural language description of the group
... useContext Σ0..*UsageContextThe context that the content is intended to support

... purpose 0..1markdownWhy this Group is defined
... copyright 0..1markdownUse and/or publishing restrictions
... copyrightLabel T0..1stringCopyright holder and year(s)
... type Σ0..1codeperson | animal | practitioner | device | careteam | healthcareservice | location | organization | relatedperson | specimen
Binding: Group Type (Required)
... membership Σ1..1codedefinitional | conceptual | enumerated
Binding: Group Membership Basis (Required)
... code Σ0..1CodeableConceptKind of Group members
Binding: GroupKind (Example)
... quantity Σ0..1unsignedIntNumber of members
... managingEntity Σ0..1Reference(Organization | RelatedPerson | Practitioner | PractitionerRole)Entity that is the custodian of the Group's definition
... combinationMethod ?!Σ0..1codeall-of | any-of | at-least | at-most | except-subset
Binding: Group Characteristic Combination (Required)
... combinationThreshold 0..1positiveIntProvides the value of "n" when "at-least" or "at-most" codes are used
... characteristic Σ0..*BackboneElementInclude / Exclude group members by Trait

.... code Σ1..1CodeableConceptKind of characteristic
Binding: GroupCharacteristicKind (Example)
.... value[x] Σ1..1Value held by characteristic
Binding: GroupCharacteristicValue (Example)
..... valueCodeableConceptCodeableConcept
..... valueBooleanboolean
..... valueQuantityQuantity
..... valueRangeRange
..... valueReferenceReference()
..... valueUriuri
..... valueExpressionExpression
.... exclude Σ1..1booleanGroup includes or excludes
.... description 0..1markdownNatural language description of the characteristic
.... method 0..*CodeableConceptMethod for how the characteristic value was determined
Binding: Definition Method (Example)

.... determinedBy[x] 0..1Defines the characteristic
..... determinedByReferenceReference(Device | DeviceDefinition | DeviceMetric)
..... determinedByExpressionExpression
.... offset ?!Σ0..1CodeableConceptReference point for comparison
Binding: Characteristic Offset (Example)
.... instances[x] 0..1Number of occurrences meeting the characteristic
..... instancesQuantityQuantity
..... instancesRangeRange
.... duration[x] 0..1Length of time in which the characteristic is met
..... durationDurationDuration
..... durationRangeRange
.... period 0..1PeriodPeriod over which characteristic is tested
.... timing 0..*RelativeTimeTiming in which the characteristic is determined

... member 0..*BackboneElementWho or what is in group

.... entity 1..1Reference(CareTeam | Device | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Specimen)Reference to the group member
.... period 0..1PeriodPeriod member belonged to the group
.... inactive 0..1booleanIf member is no longer in group

doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Group (DomainResource) +CanonicalResourceAn absolute URI that is used to identify this Group when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Group is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Group is stored on different serversurl : uri [0..1]Business identifiers assigned to this participant by one of the applications involved. These identifiers remain constant as the resource is updated and propagates from server to serveridentifier : Identifier [0..*]The identifier that is used to identify this version of the Group when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Group 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 without additional knowledgeversion : string [0..1]Indicates the mechanism used to compare versions to determine which is more currentversionAlgorithm[x] : DataType [0..1] « string|Coding; null (Strength=Extensible) VersionAlgorithm+ »A label assigned to the group for human identification and communicationname : string [0..1]A short, descriptive, user-friendly title for the Grouptitle : string [0..1]The current state of this Group (this element modifies the meaning of other elements)status : code [0..1] « null (Strength=Required)PublicationStatus! »A Boolean value to indicate that this Group is authored for testing purposes (or education/evaluation/marketing) and is not intended for genuine usageexperimental : boolean [0..1]The date (and optionally time) when the Group was last significantly changed. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the Group changesdate : dateTime [0..1]The name of the organization or individual responsible for the release and ongoing maintenance of the Grouppublisher : string [0..1]Contact details to assist a user in finding and communicating with the publishercontact : ContactDetail [0..*]Explanation of what the group represents and how it is intended to be useddescription : markdown [0..1]The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate GroupsuseContext : UsageContext [0..*]Explanation of why this Group is needed and why it has been designed as it haspurpose : markdown [0..1]A copyright statement relating to the Group and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Groupcopyright : markdown [0..1]A short string (<50 characters), suitable for inclusion in a page footer that identifies the copyright holder, effective period, and optionally whether rights are resctricted. (e.g. 'All rights reserved', 'Some rights reserved')copyrightLabel : string [0..1]Identifies the broad classification of the kind of resources the group includestype : code [0..1] « null (Strength=Required)GroupType! »Basis for membership in the Group: * 'definitional': The Group.characteristics specified are both necessary and sufficient to determine membership. All entities that meet the criteria are considered to be members of the group, whether referenced by the group or not. If members are present, they are individuals that happen to be known as meeting the Group.characteristics. The list cannot be presumed to be complete. * 'conceptual': The Group.characteristics specified are both necessary and sufficient to determine membership. The 'conceptual' Group is a 'definitional' Group in which the Group.type is not bound to FHIR types. * 'enumerated': The Group.characteristics are necessary but not sufficient to determine membership. Membership is determined by being listed as one of the Group.membermembership : code [1..1] « null (Strength=Required)GroupMembershipBasis! »Provides a specific type of resource the group includes; e.g. "cow", "syringe", etccode : CodeableConcept [0..1] « null (Strength=Example)GroupKind?? »A count of the number of resource instances that are part of the groupquantity : unsignedInt [0..1]Entity responsible for defining and maintaining Group characteristics and/or registered membersmanagingEntity : Reference [0..1] « Organization|RelatedPerson| Practitioner|PractitionerRole »Used to specify how two or more characteristics are combined (this element modifies the meaning of other elements)combinationMethod : code [0..1] « null (Strength=Required)GroupCharacteristicCombination! »Provides the value of "n" when "at-least" or "at-most" codes are used for combinationMethodcombinationThreshold : positiveInt [0..1]CharacteristicA code that identifies the kind of trait being assertedcode : CodeableConcept [1..1] « null (Strength=Example)GroupCharacteristicKind?? »The value of the trait that holds (or does not hold - see 'exclude') for members of the groupvalue[x] : DataType [1..1] « CodeableConcept|boolean|Quantity|Range| Reference|uri|Expression; null (Strength=Example)GroupCharacteristicValue?? »If true, indicates the characteristic is one that is NOT held by members of the groupexclude : boolean [1..1]A short, natural language description of the characteristic that could be used to communicate the criteria to an end-userdescription : markdown [0..1]Method for how the characteristic value was determinedmethod : CodeableConcept [0..*] « null (Strength=Example)DefinitionMethod?? »Defines the characteristic (without using type and value) by either a Reference or an ExpressiondeterminedBy[x] : DataType [0..1] « Reference(Device| DeviceDefinition|DeviceMetric)|Expression »Defines the reference point for comparison when other than 0 (this element modifies the meaning of other elements)offset : CodeableConcept [0..1] « null (Strength=Example)CharacteristicOffset?? »Number of occurrences meeting the characteristicinstances[x] : DataType [0..1] « Quantity|Range »Length of time in which the characteristic is metduration[x] : DataType [0..1] « Duration|Range »The period over which the characteristic is tested; e.g. the patient had an operation during the month of Juneperiod : Period [0..1]Timing in which the characteristic is determinedtiming : RelativeTime [0..*]MemberA reference to the entity that is a member of the group. Must be consistent with Group.type. If the entity is another group, then the type must be the sameentity : Reference [1..1] « CareTeam|Device|Group|HealthcareService| Location|Organization|Patient|Practitioner|PractitionerRole| RelatedPerson|Specimen »The period that the member was in the group, if knownperiod : Period [0..1]A flag to indicate that the member is no longer in the group, but previously may have been a memberinactive : boolean [0..1]Identifies traits whose presence r absence is shared by members of the groupcharacteristic[0..*]Identifies the resource instances that are members of the groupmember[0..*]

XML Template

<Group xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <url value="[uri]"/><!-- 0..1 Canonical identifier for this Group, represented as an absolute URI (globally unique) -->
 <identifier><!-- 0..* Identifier Business Identifier for this Group --></identifier>
 <version value="[string]"/><!-- 0..1 Business version of the Group -->
 <versionAlgorithm[x]><!-- 0..1 string|Coding How to compare versions --></versionAlgorithm[x]>
 <name value="[string]"/><!-- 0..1 Label for Group -->
 <title value="[string]"/><!-- 0..1 Name for this Group (human friendly) -->
 <status value="[code]"/><!-- 0..1 draft | active | retired | unknown -->
 <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage -->
 <date value="[dateTime]"/><!-- 0..1 Date last changed -->
 <publisher value="[string]"/><!-- 0..1 Name of the publisher/steward (organization or individual) -->
 <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact>
 <description value="[markdown]"/><!-- 0..1 Natural language description of the group -->
 <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext>
 <purpose value="[markdown]"/><!-- 0..1 Why this Group is defined -->
 <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions -->
 <copyrightLabel value="[string]"/><!-- 0..1 Copyright holder and year(s) -->
 <type value="[code]"/><!-- 0..1 person | animal | practitioner | device | careteam | healthcareservice | location | organization | relatedperson | specimen -->
 <membership value="[code]"/><!-- 1..1 definitional | conceptual | enumerated -->
 <code><!-- 0..1 CodeableConcept Kind of Group members --></code>
 <quantity value="[unsignedInt]"/><!-- 0..1 Number of members -->
 <managingEntity><!-- 0..1 Reference(Organization|Practitioner|PractitionerRole|
   RelatedPerson) Entity that is the custodian of the Group's definition --></managingEntity>
 <combinationMethod value="[code]"/><!-- 0..1 all-of | any-of | at-least | at-most | except-subset -->
 <combinationThreshold value="[positiveInt]"/><!-- 0..1 Provides the value of "n" when "at-least" or "at-most" codes are used -->
 <characteristic>  <!-- 0..* Include / Exclude group members by Trait -->
  <code><!-- 1..1 CodeableConcept Kind of characteristic --></code>
  <value[x]><!-- 1..1 CodeableConcept|boolean|Quantity|Range|Reference|uri|
    Expression Value held by characteristic --></value[x]>
  <exclude value="[boolean]"/><!-- 1..1 Group includes or excludes -->
  <description value="[markdown]"/><!-- 0..1 Natural language description of the characteristic -->
  <method><!-- 0..* CodeableConcept Method for how the characteristic value was determined --></method>
  <determinedBy[x]><!-- 0..1 Reference(Device|DeviceDefinition|DeviceMetric)|
    Expression Defines the characteristic --></determinedBy[x]>
  <offset><!-- 0..1 CodeableConcept Reference point for comparison --></offset>
  <instances[x]><!-- 0..1 Quantity|Range Number of occurrences meeting the characteristic --></instances[x]>
  <duration[x]><!-- 0..1 Duration|Range Length of time in which the characteristic is met --></duration[x]>
  <period><!-- 0..1 Period Period over which characteristic is tested --></period>
  <timing><!-- 0..* RelativeTime Timing in which the characteristic is determined --></timing>
 </characteristic>
 <member>  <!-- 0..* Who or what is in group -->
  <entity><!-- 1..1 Reference(CareTeam|Device|Group|HealthcareService|Location|
    Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Specimen) Reference to the group member --></entity>
  <period><!-- 0..1 Period Period member belonged to the group --></period>
  <inactive value="[boolean]"/><!-- 0..1 If member is no longer in group -->
 </member>
</Group>

JSON Template

{doco
  "resourceType" : "Group",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "url" : "<uri>", // Canonical identifier for this Group, represented as an absolute URI (globally unique)
  "identifier" : [{ Identifier }], // Business Identifier for this Group
  "version" : "<string>", // Business version of the Group
  // versionAlgorithm[x]: How to compare versions. One of these 2:
  "versionAlgorithmString" : "<string>",
  "versionAlgorithmCoding" : { Coding },
  "name" : "<string>", // Label for Group
  "title" : "<string>", // Name for this Group (human friendly)
  "status" : "<code>", // draft | active | retired | unknown
  "experimental" : <boolean>, // For testing purposes, not real usage
  "date" : "<dateTime>", // Date last changed
  "publisher" : "<string>", // Name of the publisher/steward (organization or individual)
  "contact" : [{ ContactDetail }], // Contact details for the publisher
  "description" : "<markdown>", // Natural language description of the group
  "useContext" : [{ UsageContext }], // The context that the content is intended to support
  "purpose" : "<markdown>", // Why this Group is defined
  "copyright" : "<markdown>", // Use and/or publishing restrictions
  "copyrightLabel" : "<string>", // Copyright holder and year(s)
  "type" : "<code>", // person | animal | practitioner | device | careteam | healthcareservice | location | organization | relatedperson | specimen
  "membership" : "<code>", // R!  definitional | conceptual | enumerated
  "code" : { CodeableConcept }, // Kind of Group members
  "quantity" : "<unsignedInt>", // Number of members
  "managingEntity" : { Reference(Organization|Practitioner|PractitionerRole|
   RelatedPerson) }, // Entity that is the custodian of the Group's definition
  "combinationMethod" : "<code>", // all-of | any-of | at-least | at-most | except-subset
  "combinationThreshold" : "<positiveInt>", // Provides the value of "n" when "at-least" or "at-most" codes are used
  "characteristic" : [{ // Include / Exclude group members by Trait
    "code" : { CodeableConcept }, // R!  Kind of characteristic
    // value[x]: Value held by characteristic. One of these 7:
    "valueCodeableConcept" : { CodeableConcept },
    "valueBoolean" : <boolean>,
    "valueQuantity" : { Quantity },
    "valueRange" : { Range },
    "valueReference" : { Reference },
    "valueUri" : "<uri>",
    "valueExpression" : { Expression },
    "exclude" : <boolean>, // R!  Group includes or excludes
    "description" : "<markdown>", // Natural language description of the characteristic
    "method" : [{ CodeableConcept }], // Method for how the characteristic value was determined
    // determinedBy[x]: Defines the characteristic. One of these 2:
    "determinedByReference" : { Reference(Device|DeviceDefinition|DeviceMetric) },
    "determinedByExpression" : { Expression },
    "offset" : { CodeableConcept }, // Reference point for comparison
    // instances[x]: Number of occurrences meeting the characteristic. One of these 2:
    "instancesQuantity" : { Quantity },
    "instancesRange" : { Range },
    // duration[x]: Length of time in which the characteristic is met. One of these 2:
    "durationDuration" : { Duration },
    "durationRange" : { Range },
    "period" : { Period }, // Period over which characteristic is tested
    "timing" : [{ RelativeTime }] // Timing in which the characteristic is determined
  }],
  "member" : [{ // Who or what is in group
    "entity" : { Reference(CareTeam|Device|Group|HealthcareService|Location|
    Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Specimen) }, // R!  Reference to the group member
    "period" : { Period }, // Period member belonged to the group
    "inactive" : <boolean> // If member is no longer in group
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Group;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:url [ uri ] ; # 0..1 Canonical identifier for this Group, represented as an absolute URI (globally unique)
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* Business Identifier for this Group
  fhir:version [ string ] ; # 0..1 Business version of the Group
  # versionAlgorithm[x] : 0..1 How to compare versions. One of these 2
    fhir:versionAlgorithm [  a fhir:string ; string ]
    fhir:versionAlgorithm [  a fhir:Coding ; Coding ]
  fhir:name [ string ] ; # 0..1 Label for Group
  fhir:title [ string ] ; # 0..1 Name for this Group (human friendly)
  fhir:status [ code ] ; # 0..1 draft | active | retired | unknown
  fhir:experimental [ boolean ] ; # 0..1 For testing purposes, not real usage
  fhir:date [ dateTime ] ; # 0..1 Date last changed
  fhir:publisher [ string ] ; # 0..1 Name of the publisher/steward (organization or individual)
  fhir:contact  ( [ ContactDetail ] ... ) ; # 0..* Contact details for the publisher
  fhir:description [ markdown ] ; # 0..1 Natural language description of the group
  fhir:useContext  ( [ UsageContext ] ... ) ; # 0..* The context that the content is intended to support
  fhir:purpose [ markdown ] ; # 0..1 Why this Group is defined
  fhir:copyright [ markdown ] ; # 0..1 Use and/or publishing restrictions
  fhir:copyrightLabel [ string ] ; # 0..1 Copyright holder and year(s)
  fhir:type [ code ] ; # 0..1 person | animal | practitioner | device | careteam | healthcareservice | location | organization | relatedperson | specimen
  fhir:membership [ code ] ; # 1..1 definitional | conceptual | enumerated
  fhir:code [ CodeableConcept ] ; # 0..1 Kind of Group members
  fhir:quantity [ unsignedInt ] ; # 0..1 Number of members
  fhir:managingEntity [ Reference(Organization|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Entity that is the custodian of the Group's definition
  fhir:combinationMethod [ code ] ; # 0..1 all-of | any-of | at-least | at-most | except-subset
  fhir:combinationThreshold [ positiveInt ] ; # 0..1 Provides the value of "n" when "at-least" or "at-most" codes are used
  fhir:characteristic ( [ # 0..* Include / Exclude group members by Trait
    fhir:code [ CodeableConcept ] ; # 1..1 Kind of characteristic
    # value[x] : 1..1 Value held by characteristic. One of these 7
      fhir:value [  a fhir:CodeableConcept ; CodeableConcept ]
      fhir:value [  a fhir:boolean ; boolean ]
      fhir:value [  a fhir:Quantity ; Quantity ]
      fhir:value [  a fhir:Range ; Range ]
      fhir:value [  a fhir:Reference ; Reference ]
      fhir:value [  a fhir:uri ; uri ]
      fhir:value [  a fhir:Expression ; Expression ]
    fhir:exclude [ boolean ] ; # 1..1 Group includes or excludes
    fhir:description [ markdown ] ; # 0..1 Natural language description of the characteristic
    fhir:method  ( [ CodeableConcept ] ... ) ; # 0..* Method for how the characteristic value was determined
    # determinedBy[x] : 0..1 Defines the characteristic. One of these 2
      fhir:determinedBy [  a fhir:Reference ; Reference(Device|DeviceDefinition|DeviceMetric) ]
      fhir:determinedBy [  a fhir:Expression ; Expression ]
    fhir:offset [ CodeableConcept ] ; # 0..1 Reference point for comparison
    # instances[x] : 0..1 Number of occurrences meeting the characteristic. One of these 2
      fhir:instances [  a fhir:Quantity ; Quantity ]
      fhir:instances [  a fhir:Range ; Range ]
    # duration[x] : 0..1 Length of time in which the characteristic is met. One of these 2
      fhir:duration [  a fhir:Duration ; Duration ]
      fhir:duration [  a fhir:Range ; Range ]
    fhir:period [ Period ] ; # 0..1 Period over which characteristic is tested
    fhir:timing  ( [ RelativeTime ] ... ) ; # 0..* Timing in which the characteristic is determined
  ] ... ) ;
  fhir:member ( [ # 0..* Who or what is in group
    fhir:entity [ Reference(CareTeam|Device|Group|HealthcareService|Location|Organization|Patient|
  Practitioner|PractitionerRole|RelatedPerson|Specimen) ] ; # 1..1 Reference to the group member
    fhir:period [ Period ] ; # 0..1 Period member belonged to the group
    fhir:inactive [ boolean ] ; # 0..1 If member is no longer in group
  ] ... ) ;
]

Changes from both R4 and R4B

Group
Group.url
  • Added Element
Group.version
  • Added Element
Group.versionAlgorithm[x]
  • Added Element
Group.title
  • Added Element
Group.status
  • Added Element
Group.experimental
  • Added Element
Group.date
  • Added Element
Group.publisher
  • Added Element
Group.contact
  • Added Element
Group.description
  • Added Element
Group.useContext
  • Added Element
Group.purpose
  • Added Element
Group.copyright
  • Added Element
Group.copyrightLabel
  • Added Element
Group.type
  • Min Cardinality changed from 1 to 0
  • Remove codes medication, substance
  • Add codes careteam, healthcareservice, location, organization, relatedperson, specimen
Group.membership
  • Added Mandatory Element
Group.combinationMethod
  • Added Element
Group.combinationThreshold
  • Added Element
Group.characteristic.value[x]
  • Add Types uri, Expression
Group.characteristic.description
  • Added Element
Group.characteristic.method
  • Added Element
Group.characteristic.determinedBy[x]
  • Added Element
Group.characteristic.offset
  • Added Element
Group.characteristic.instances[x]
  • Added Element
Group.characteristic.duration[x]
  • Added Element
Group.characteristic.timing
  • Added Element
Group.member.entity
  • Type Reference: Added Target Types CareTeam, HealthcareService, Location, Organization, RelatedPerson, Specimen
  • Type Reference: Removed Target Types Medication, Substance
Group.active
  • Deleted
Group.actual
  • Deleted (-> Group.membership)

See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.

See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Group TUDomainResourceGroup of multiple entities
+ Rule: Group.type SHALL be defined if Group.membership is either 'definitional' or 'enumerated'

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
Interfaces Implemented: CanonicalResource
... url ΣC0..1uriCanonical identifier for this Group, represented as an absolute URI (globally unique)
+ Warning: URL should not contain | or # - these characters make processing canonical references problematic
... identifier Σ0..*IdentifierBusiness Identifier for this Group

... version Σ0..1stringBusiness version of the Group
.... versionAlgorithmStringstring
.... versionAlgorithmCodingCoding
... name Σ0..1stringLabel for Group
... title Σ0..1stringName for this Group (human friendly)
... status ?!Σ0..1codedraft | active | retired | unknown
Binding: PublicationStatus (Required)
... experimental Σ0..1booleanFor testing purposes, not real usage
... date Σ0..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher/steward (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher

... description 0..1markdownNatural language description of the group
... useContext Σ0..*UsageContextThe context that the content is intended to support

... purpose 0..1markdownWhy this Group is defined
... copyright 0..1markdownUse and/or publishing restrictions
... copyrightLabel T0..1stringCopyright holder and year(s)
... type Σ0..1codeperson | animal | practitioner | device | careteam | healthcareservice | location | organization | relatedperson | specimen
Binding: Group Type (Required)
... membership Σ1..1codedefinitional | conceptual | enumerated
Binding: Group Membership Basis (Required)
... code Σ0..1CodeableConceptKind of Group members
Binding: GroupKind (Example)
... quantity Σ0..1unsignedIntNumber of members
... managingEntity Σ0..1Reference(Organization | RelatedPerson | Practitioner | PractitionerRole)Entity that is the custodian of the Group's definition
... combinationMethod ?!Σ0..1codeall-of | any-of | at-least | at-most | except-subset
Binding: Group Characteristic Combination (Required)
... combinationThreshold 0..1positiveIntProvides the value of "n" when "at-least" or "at-most" codes are used
... characteristic Σ0..*BackboneElementInclude / Exclude group members by Trait

.... code Σ1..1CodeableConceptKind of characteristic
Binding: GroupCharacteristicKind (Example)
.... value[x] Σ1..1Value held by characteristic
Binding: GroupCharacteristicValue (Example)
..... valueCodeableConceptCodeableConcept
..... valueBooleanboolean
..... valueQuantityQuantity
..... valueRangeRange
..... valueReferenceReference()
..... valueUriuri
..... valueExpressionExpression
.... exclude Σ1..1booleanGroup includes or excludes
.... description 0..1markdownNatural language description of the characteristic
.... method 0..*CodeableConceptMethod for how the characteristic value was determined
Binding: Definition Method (Example)

.... determinedBy[x] 0..1Defines the characteristic
..... determinedByReferenceReference(Device | DeviceDefinition | DeviceMetric)
..... determinedByExpressionExpression
.... offset ?!Σ0..1CodeableConceptReference point for comparison
Binding: Characteristic Offset (Example)
.... instances[x] 0..1Number of occurrences meeting the characteristic
..... instancesQuantityQuantity
..... instancesRangeRange
.... duration[x] 0..1Length of time in which the characteristic is met
..... durationDurationDuration
..... durationRangeRange
.... period 0..1PeriodPeriod over which characteristic is tested
.... timing 0..*RelativeTimeTiming in which the characteristic is determined

... member 0..*BackboneElementWho or what is in group

.... entity 1..1Reference(CareTeam | Device | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Specimen)Reference to the group member
.... period 0..1PeriodPeriod member belonged to the group
.... inactive 0..1booleanIf member is no longer in group

doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Group (DomainResource) +CanonicalResourceAn absolute URI that is used to identify this Group when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Group is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Group is stored on different serversurl : uri [0..1]Business identifiers assigned to this participant by one of the applications involved. These identifiers remain constant as the resource is updated and propagates from server to serveridentifier : Identifier [0..*]The identifier that is used to identify this version of the Group when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Group 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 without additional knowledgeversion : string [0..1]Indicates the mechanism used to compare versions to determine which is more currentversionAlgorithm[x] : DataType [0..1] « string|Coding; null (Strength=Extensible) VersionAlgorithm+ »A label assigned to the group for human identification and communicationname : string [0..1]A short, descriptive, user-friendly title for the Grouptitle : string [0..1]The current state of this Group (this element modifies the meaning of other elements)status : code [0..1] « null (Strength=Required)PublicationStatus! »A Boolean value to indicate that this Group is authored for testing purposes (or education/evaluation/marketing) and is not intended for genuine usageexperimental : boolean [0..1]The date (and optionally time) when the Group was last significantly changed. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the Group changesdate : dateTime [0..1]The name of the organization or individual responsible for the release and ongoing maintenance of the Grouppublisher : string [0..1]Contact details to assist a user in finding and communicating with the publishercontact : ContactDetail [0..*]Explanation of what the group represents and how it is intended to be useddescription : markdown [0..1]The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate GroupsuseContext : UsageContext [0..*]Explanation of why this Group is needed and why it has been designed as it haspurpose : markdown [0..1]A copyright statement relating to the Group and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Groupcopyright : markdown [0..1]A short string (<50 characters), suitable for inclusion in a page footer that identifies the copyright holder, effective period, and optionally whether rights are resctricted. (e.g. 'All rights reserved', 'Some rights reserved')copyrightLabel : string [0..1]Identifies the broad classification of the kind of resources the group includestype : code [0..1] « null (Strength=Required)GroupType! »Basis for membership in the Group: * 'definitional': The Group.characteristics specified are both necessary and sufficient to determine membership. All entities that meet the criteria are considered to be members of the group, whether referenced by the group or not. If members are present, they are individuals that happen to be known as meeting the Group.characteristics. The list cannot be presumed to be complete. * 'conceptual': The Group.characteristics specified are both necessary and sufficient to determine membership. The 'conceptual' Group is a 'definitional' Group in which the Group.type is not bound to FHIR types. * 'enumerated': The Group.characteristics are necessary but not sufficient to determine membership. Membership is determined by being listed as one of the Group.membermembership : code [1..1] « null (Strength=Required)GroupMembershipBasis! »Provides a specific type of resource the group includes; e.g. "cow", "syringe", etccode : CodeableConcept [0..1] « null (Strength=Example)GroupKind?? »A count of the number of resource instances that are part of the groupquantity : unsignedInt [0..1]Entity responsible for defining and maintaining Group characteristics and/or registered membersmanagingEntity : Reference [0..1] « Organization|RelatedPerson| Practitioner|PractitionerRole »Used to specify how two or more characteristics are combined (this element modifies the meaning of other elements)combinationMethod : code [0..1] « null (Strength=Required)GroupCharacteristicCombination! »Provides the value of "n" when "at-least" or "at-most" codes are used for combinationMethodcombinationThreshold : positiveInt [0..1]CharacteristicA code that identifies the kind of trait being assertedcode : CodeableConcept [1..1] « null (Strength=Example)GroupCharacteristicKind?? »The value of the trait that holds (or does not hold - see 'exclude') for members of the groupvalue[x] : DataType [1..1] « CodeableConcept|boolean|Quantity|Range| Reference|uri|Expression; null (Strength=Example)GroupCharacteristicValue?? »If true, indicates the characteristic is one that is NOT held by members of the groupexclude : boolean [1..1]A short, natural language description of the characteristic that could be used to communicate the criteria to an end-userdescription : markdown [0..1]Method for how the characteristic value was determinedmethod : CodeableConcept [0..*] « null (Strength=Example)DefinitionMethod?? »Defines the characteristic (without using type and value) by either a Reference or an ExpressiondeterminedBy[x] : DataType [0..1] « Reference(Device| DeviceDefinition|DeviceMetric)|Expression »Defines the reference point for comparison when other than 0 (this element modifies the meaning of other elements)offset : CodeableConcept [0..1] « null (Strength=Example)CharacteristicOffset?? »Number of occurrences meeting the characteristicinstances[x] : DataType [0..1] « Quantity|Range »Length of time in which the characteristic is metduration[x] : DataType [0..1] « Duration|Range »The period over which the characteristic is tested; e.g. the patient had an operation during the month of Juneperiod : Period [0..1]Timing in which the characteristic is determinedtiming : RelativeTime [0..*]MemberA reference to the entity that is a member of the group. Must be consistent with Group.type. If the entity is another group, then the type must be the sameentity : Reference [1..1] « CareTeam|Device|Group|HealthcareService| Location|Organization|Patient|Practitioner|PractitionerRole| RelatedPerson|Specimen »The period that the member was in the group, if knownperiod : Period [0..1]A flag to indicate that the member is no longer in the group, but previously may have been a memberinactive : boolean [0..1]Identifies traits whose presence r absence is shared by members of the groupcharacteristic[0..*]Identifies the resource instances that are members of the groupmember[0..*]

XML Template

<Group xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <url value="[uri]"/><!-- 0..1 Canonical identifier for this Group, represented as an absolute URI (globally unique) -->
 <identifier><!-- 0..* Identifier Business Identifier for this Group --></identifier>
 <version value="[string]"/><!-- 0..1 Business version of the Group -->
 <versionAlgorithm[x]><!-- 0..1 string|Coding How to compare versions --></versionAlgorithm[x]>
 <name value="[string]"/><!-- 0..1 Label for Group -->
 <title value="[string]"/><!-- 0..1 Name for this Group (human friendly) -->
 <status value="[code]"/><!-- 0..1 draft | active | retired | unknown -->
 <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage -->
 <date value="[dateTime]"/><!-- 0..1 Date last changed -->
 <publisher value="[string]"/><!-- 0..1 Name of the publisher/steward (organization or individual) -->
 <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact>
 <description value="[markdown]"/><!-- 0..1 Natural language description of the group -->
 <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext>
 <purpose value="[markdown]"/><!-- 0..1 Why this Group is defined -->
 <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions -->
 <copyrightLabel value="[string]"/><!-- 0..1 Copyright holder and year(s) -->
 <type value="[code]"/><!-- 0..1 person | animal | practitioner | device | careteam | healthcareservice | location | organization | relatedperson | specimen -->
 <membership value="[code]"/><!-- 1..1 definitional | conceptual | enumerated -->
 <code><!-- 0..1 CodeableConcept Kind of Group members --></code>
 <quantity value="[unsignedInt]"/><!-- 0..1 Number of members -->
 <managingEntity><!-- 0..1 Reference(Organization|Practitioner|PractitionerRole|
   RelatedPerson) Entity that is the custodian of the Group's definition --></managingEntity>
 <combinationMethod value="[code]"/><!-- 0..1 all-of | any-of | at-least | at-most | except-subset -->
 <combinationThreshold value="[positiveInt]"/><!-- 0..1 Provides the value of "n" when "at-least" or "at-most" codes are used -->
 <characteristic>  <!-- 0..* Include / Exclude group members by Trait -->
  <code><!-- 1..1 CodeableConcept Kind of characteristic --></code>
  <value[x]><!-- 1..1 CodeableConcept|boolean|Quantity|Range|Reference|uri|
    Expression Value held by characteristic --></value[x]>
  <exclude value="[boolean]"/><!-- 1..1 Group includes or excludes -->
  <description value="[markdown]"/><!-- 0..1 Natural language description of the characteristic -->
  <method><!-- 0..* CodeableConcept Method for how the characteristic value was determined --></method>
  <determinedBy[x]><!-- 0..1 Reference(Device|DeviceDefinition|DeviceMetric)|
    Expression Defines the characteristic --></determinedBy[x]>
  <offset><!-- 0..1 CodeableConcept Reference point for comparison --></offset>
  <instances[x]><!-- 0..1 Quantity|Range Number of occurrences meeting the characteristic --></instances[x]>
  <duration[x]><!-- 0..1 Duration|Range Length of time in which the characteristic is met --></duration[x]>
  <period><!-- 0..1 Period Period over which characteristic is tested --></period>
  <timing><!-- 0..* RelativeTime Timing in which the characteristic is determined --></timing>
 </characteristic>
 <member>  <!-- 0..* Who or what is in group -->
  <entity><!-- 1..1 Reference(CareTeam|Device|Group|HealthcareService|Location|
    Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Specimen) Reference to the group member --></entity>
  <period><!-- 0..1 Period Period member belonged to the group --></period>
  <inactive value="[boolean]"/><!-- 0..1 If member is no longer in group -->
 </member>
</Group>

JSON Template

{doco
  "resourceType" : "Group",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "url" : "<uri>", // Canonical identifier for this Group, represented as an absolute URI (globally unique)
  "identifier" : [{ Identifier }], // Business Identifier for this Group
  "version" : "<string>", // Business version of the Group
  // versionAlgorithm[x]: How to compare versions. One of these 2:
  "versionAlgorithmString" : "<string>",
  "versionAlgorithmCoding" : { Coding },
  "name" : "<string>", // Label for Group
  "title" : "<string>", // Name for this Group (human friendly)
  "status" : "<code>", // draft | active | retired | unknown
  "experimental" : <boolean>, // For testing purposes, not real usage
  "date" : "<dateTime>", // Date last changed
  "publisher" : "<string>", // Name of the publisher/steward (organization or individual)
  "contact" : [{ ContactDetail }], // Contact details for the publisher
  "description" : "<markdown>", // Natural language description of the group
  "useContext" : [{ UsageContext }], // The context that the content is intended to support
  "purpose" : "<markdown>", // Why this Group is defined
  "copyright" : "<markdown>", // Use and/or publishing restrictions
  "copyrightLabel" : "<string>", // Copyright holder and year(s)
  "type" : "<code>", // person | animal | practitioner | device | careteam | healthcareservice | location | organization | relatedperson | specimen
  "membership" : "<code>", // R!  definitional | conceptual | enumerated
  "code" : { CodeableConcept }, // Kind of Group members
  "quantity" : "<unsignedInt>", // Number of members
  "managingEntity" : { Reference(Organization|Practitioner|PractitionerRole|
   RelatedPerson) }, // Entity that is the custodian of the Group's definition
  "combinationMethod" : "<code>", // all-of | any-of | at-least | at-most | except-subset
  "combinationThreshold" : "<positiveInt>", // Provides the value of "n" when "at-least" or "at-most" codes are used
  "characteristic" : [{ // Include / Exclude group members by Trait
    "code" : { CodeableConcept }, // R!  Kind of characteristic
    // value[x]: Value held by characteristic. One of these 7:
    "valueCodeableConcept" : { CodeableConcept },
    "valueBoolean" : <boolean>,
    "valueQuantity" : { Quantity },
    "valueRange" : { Range },
    "valueReference" : { Reference },
    "valueUri" : "<uri>",
    "valueExpression" : { Expression },
    "exclude" : <boolean>, // R!  Group includes or excludes
    "description" : "<markdown>", // Natural language description of the characteristic
    "method" : [{ CodeableConcept }], // Method for how the characteristic value was determined
    // determinedBy[x]: Defines the characteristic. One of these 2:
    "determinedByReference" : { Reference(Device|DeviceDefinition|DeviceMetric) },
    "determinedByExpression" : { Expression },
    "offset" : { CodeableConcept }, // Reference point for comparison
    // instances[x]: Number of occurrences meeting the characteristic. One of these 2:
    "instancesQuantity" : { Quantity },
    "instancesRange" : { Range },
    // duration[x]: Length of time in which the characteristic is met. One of these 2:
    "durationDuration" : { Duration },
    "durationRange" : { Range },
    "period" : { Period }, // Period over which characteristic is tested
    "timing" : [{ RelativeTime }] // Timing in which the characteristic is determined
  }],
  "member" : [{ // Who or what is in group
    "entity" : { Reference(CareTeam|Device|Group|HealthcareService|Location|
    Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Specimen) }, // R!  Reference to the group member
    "period" : { Period }, // Period member belonged to the group
    "inactive" : <boolean> // If member is no longer in group
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Group;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:url [ uri ] ; # 0..1 Canonical identifier for this Group, represented as an absolute URI (globally unique)
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* Business Identifier for this Group
  fhir:version [ string ] ; # 0..1 Business version of the Group
  # versionAlgorithm[x] : 0..1 How to compare versions. One of these 2
    fhir:versionAlgorithm [  a fhir:string ; string ]
    fhir:versionAlgorithm [  a fhir:Coding ; Coding ]
  fhir:name [ string ] ; # 0..1 Label for Group
  fhir:title [ string ] ; # 0..1 Name for this Group (human friendly)
  fhir:status [ code ] ; # 0..1 draft | active | retired | unknown
  fhir:experimental [ boolean ] ; # 0..1 For testing purposes, not real usage
  fhir:date [ dateTime ] ; # 0..1 Date last changed
  fhir:publisher [ string ] ; # 0..1 Name of the publisher/steward (organization or individual)
  fhir:contact  ( [ ContactDetail ] ... ) ; # 0..* Contact details for the publisher
  fhir:description [ markdown ] ; # 0..1 Natural language description of the group
  fhir:useContext  ( [ UsageContext ] ... ) ; # 0..* The context that the content is intended to support
  fhir:purpose [ markdown ] ; # 0..1 Why this Group is defined
  fhir:copyright [ markdown ] ; # 0..1 Use and/or publishing restrictions
  fhir:copyrightLabel [ string ] ; # 0..1 Copyright holder and year(s)
  fhir:type [ code ] ; # 0..1 person | animal | practitioner | device | careteam | healthcareservice | location | organization | relatedperson | specimen
  fhir:membership [ code ] ; # 1..1 definitional | conceptual | enumerated
  fhir:code [ CodeableConcept ] ; # 0..1 Kind of Group members
  fhir:quantity [ unsignedInt ] ; # 0..1 Number of members
  fhir:managingEntity [ Reference(Organization|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Entity that is the custodian of the Group's definition
  fhir:combinationMethod [ code ] ; # 0..1 all-of | any-of | at-least | at-most | except-subset
  fhir:combinationThreshold [ positiveInt ] ; # 0..1 Provides the value of "n" when "at-least" or "at-most" codes are used
  fhir:characteristic ( [ # 0..* Include / Exclude group members by Trait
    fhir:code [ CodeableConcept ] ; # 1..1 Kind of characteristic
    # value[x] : 1..1 Value held by characteristic. One of these 7
      fhir:value [  a fhir:CodeableConcept ; CodeableConcept ]
      fhir:value [  a fhir:boolean ; boolean ]
      fhir:value [  a fhir:Quantity ; Quantity ]
      fhir:value [  a fhir:Range ; Range ]
      fhir:value [  a fhir:Reference ; Reference ]
      fhir:value [  a fhir:uri ; uri ]
      fhir:value [  a fhir:Expression ; Expression ]
    fhir:exclude [ boolean ] ; # 1..1 Group includes or excludes
    fhir:description [ markdown ] ; # 0..1 Natural language description of the characteristic
    fhir:method  ( [ CodeableConcept ] ... ) ; # 0..* Method for how the characteristic value was determined
    # determinedBy[x] : 0..1 Defines the characteristic. One of these 2
      fhir:determinedBy [  a fhir:Reference ; Reference(Device|DeviceDefinition|DeviceMetric) ]
      fhir:determinedBy [  a fhir:Expression ; Expression ]
    fhir:offset [ CodeableConcept ] ; # 0..1 Reference point for comparison
    # instances[x] : 0..1 Number of occurrences meeting the characteristic. One of these 2
      fhir:instances [  a fhir:Quantity ; Quantity ]
      fhir:instances [  a fhir:Range ; Range ]
    # duration[x] : 0..1 Length of time in which the characteristic is met. One of these 2
      fhir:duration [  a fhir:Duration ; Duration ]
      fhir:duration [  a fhir:Range ; Range ]
    fhir:period [ Period ] ; # 0..1 Period over which characteristic is tested
    fhir:timing  ( [ RelativeTime ] ... ) ; # 0..* Timing in which the characteristic is determined
  ] ... ) ;
  fhir:member ( [ # 0..* Who or what is in group
    fhir:entity [ Reference(CareTeam|Device|Group|HealthcareService|Location|Organization|Patient|
  Practitioner|PractitionerRole|RelatedPerson|Specimen) ] ; # 1..1 Reference to the group member
    fhir:period [ Period ] ; # 0..1 Period member belonged to the group
    fhir:inactive [ boolean ] ; # 0..1 If member is no longer in group
  ] ... ) ;
]

Changes from both R4 and R4B

Group
Group.url
  • Added Element
Group.version
  • Added Element
Group.versionAlgorithm[x]
  • Added Element
Group.title
  • Added Element
Group.status
  • Added Element
Group.experimental
  • Added Element
Group.date
  • Added Element
Group.publisher
  • Added Element
Group.contact
  • Added Element
Group.description
  • Added Element
Group.useContext
  • Added Element
Group.purpose
  • Added Element
Group.copyright
  • Added Element
Group.copyrightLabel
  • Added Element
Group.type
  • Min Cardinality changed from 1 to 0
  • Remove codes medication, substance
  • Add codes careteam, healthcareservice, location, organization, relatedperson, specimen
Group.membership
  • Added Mandatory Element
Group.combinationMethod
  • Added Element
Group.combinationThreshold
  • Added Element
Group.characteristic.value[x]
  • Add Types uri, Expression
Group.characteristic.description
  • Added Element
Group.characteristic.method
  • Added Element
Group.characteristic.determinedBy[x]
  • Added Element
Group.characteristic.offset
  • Added Element
Group.characteristic.instances[x]
  • Added Element
Group.characteristic.duration[x]
  • Added Element
Group.characteristic.timing
  • Added Element
Group.member.entity
  • Type Reference: Added Target Types CareTeam, HealthcareService, Location, Organization, RelatedPerson, Specimen
  • Type Reference: Removed Target Types Medication, Substance
Group.active
  • Deleted
Group.actual
  • Deleted (-> Group.membership)

See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.

See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)

 

Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) , the spreadsheet version & the dependency analysis

PathValueSetTypeDocumentation
Group.versionAlgorithm[x] VersionAlgorithm Extensible

Indicates the mechanism used to compare versions to determine which is more current.

Group.status PublicationStatus Required

The lifecycle status of an artifact.

Group.type GroupType Required

Types of resources that are part of group.

Group.membership GroupMembershipBasis Required

Basis for membership in a group

Group.code ??Example
Group.combinationMethod GroupCharacteristicCombination Required

Logical grouping of characteristics for the Group Resource.

Group.characteristic.code ??Example
Group.characteristic.value[x] ??Example
Group.characteristic.method DefinitionMethod Example

The method used to define, describe, or determine a characteristic value.

Group.characteristic.offset CharacteristicOffset Example

Reference point for characteristic.valueQuantity.

UniqueKeyLevelLocationDescriptionExpression
img cnl-1Warning Group.urlURL should not contain | or # - these characters make processing canonical references problematicexists() implies matches('^[^|# ]+$')
img cnl-2Rule (base)Group.type SHALL be defined if Group.membership is either 'definitional' or 'enumerated'Group.type.exists() or (Group.membership = 'conceptual')

If both Group.characteristic and Group.member are present, then the members are the individuals who were found who met the characteristic. It's possible that there might be other candidate members who meet the characteristic and aren't (yet) in the list. All members SHALL have the listed characteristics.

For operations to assist in adding to, removing from, or filtering contents of large Groups, see Operations for Large Resources.

Membership testing is used to test for active members of a Group. At a minimum, servers supporting membership testing on Group resources SHALL be able to correctly identify active enumerated entities. Active enumerated entities in a group are entities:

  • listed in Group.member.entity,
  • that do not have Group.member.inactive with a value of true, and
  • do not have an expired Group.member.period (e.g., either the element is not present or has a period covering 'now').

Membership testing MAY also be applied to characteristic-defined Groups. If supported, membership testing is based on the characteristic testing of the Group. Any entity meeting the required characteristics is considered to be active.

Servers SHOULD declare whether they support only the enumerated or characteristic group filters. Servers MAY impose additional membership constraints (e.g. based on modifier extensions).

Search parameters for this resource. See also the full list of search parameters for this resource, and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
characteristictokenKind of characteristicGroup.characteristic.code
characteristic-referencereferenceAn entity referenced in a characteristic(Group.characteristic.value.ofType(Reference))
characteristic-valuecompositeA composite of both characteristic and valueOn Group.characteristic:
  characteristic: code
  value: (value.ofType(CodeableConcept)) | (value.ofType(boolean))
codetokenThe kind of resources containedGroup.code
excludetokenGroup includes or excludesGroup.characteristic.exclude
identifiertokenUnique idGroup.identifier35 Resources
managing-entityreferenceEntity that is the custodian of the Group's definitionGroup.managingEntity
(Practitioner, Organization, PractitionerRole, RelatedPerson)
memberreferenceReference to the group memberGroup.member.entity
(Practitioner, Group, Specimen, Organization, CareTeam, Device, Patient, HealthcareService, PractitionerRole, RelatedPerson, Location)
membershiptokenDefinitional or enumerated groupGroup.membership
namestringA portion of the Group's nameGroup.name27 Resources
statustokenThe current status of the GroupGroup.status36 Resources
typetokenThe type of resources the group containsGroup.type
urluriThe uri that identifies the GroupGroup.url35 Resources
valuetokenValue held by characteristic(Group.characteristic.value.ofType(CodeableConcept)) | (Group.characteristic.value.ofType(boolean))