| Left: | Bulk Cohort Group (http://hl7.org/fhir/uv/bulkdata/StructureDefinition/bulk-cohort-group) |
| Right: | Bulk Cohort Group (http://hl7.org/fhir/uv/bulkdata/StructureDefinition/bulk-cohort-group) |
| Error | StructureDefinition.version | Values for version differ: '3.0.0' vs '4.0.0' |
| Information | StructureDefinition.date | Values for date differ: '2025-12-11T13:43:06+08:00' vs '2026-05-06T20:38:15+00:00' |
| Information | StructureDefinition.definition | Values for definition differ: 'If a group's membership is calculated periodically from the `member-filter` criteria, a server SHALL populate a `valueDateTime` with the date the group's membership was last updated. When a `date` element is populated for the Group, the `valueDateTime` element SHALL NOT be later than the date in that element, but may be the same datetime or an earlier datetime. If members are calculated dynamically for the group (for example, when a Bulk Export operation is kicked off) this value SHALL be omitted. The server's refresh cycle capabilities and relevant configuration options SHOULD be described in the server's documentation.' vs 'If a group's membership is calculated periodically from the `member-filter` criteria, a server SHALL populate a `valueDateTime` with the date the group's membership was last updated. When a `date` element is populated for the Group, the `valueDateTime` element SHALL NOT be later than the date in that element, but might be the same or an earlier datetime. If members are calculated dynamically for the group (for example, when a Bulk Export operation is kicked off) this value SHALL be omitted. The server's refresh cycle capabilities and relevant configuration options SHOULD be described in the server's documentation.' |
| Information | StructureDefinition.definition | Values for definition differ: 'A server SHALL support the inclusion of one or more `member-filter` modifier extensions containing a `valueExpression` with a language of `application/x-fhir-query` and an `expression` populated with a FHIR REST API query, and SHALL support REST queries for one or more of the Patient, Practitioner, or Device resource types. For supported resource types, the server SHALL also support querying the resources in that resource type's compartment. If multiple `member-filter` extensions are provided, servers SHALL filter the group to only include resources that meet the conditions in all of the expressions or resources that have resources in their compartments that meet the conditions in all of the expressions. A server MAY also support other expression languages such as `text/cql`. When more than one language is supported by a server a client SHALL use a single language type for all of the member-filter expressions included in a single Group. FHIR [search result parameters](https://www.hl7.org/fhir/search.html#modifyingresults) (such as _sort, _include, and _elements) SHALL NOT be used as `member-filter` criteria. Additionally, a query in the `member-filter` parameter SHALL have the search context of a single FHIR Resource Type. The contexts 'all resource types' and 'a specified compartment' are not allowed. Clients should consult the server's capability statement to identify supported search parameters. Servers SHALL reject Group creation requests that include unsupported search parameters in a `member-filter` expression. Implementation guides that reference the Bulk Cohort API, should specify required search parameters must be supported for their use case. Other implementations guides that incorporate the Bulk Export operation MAY provide a set of core search parameters that servers implementing the guide need to support.' vs 'A server SHALL support the inclusion of one or more `member-filter` modifier extensions containing a `valueExpression` with a language of `application/x-fhir-query` and an `expression` populated with a FHIR REST API query, and SHALL support REST queries for one or more of the Patient, Practitioner, or Device resource types. For supported resource types, the server SHALL also support querying the resources in that resource type's compartment. If multiple `member-filter` extensions are provided, servers SHALL filter the group to only include resources that meet the conditions in all of the expressions or resources that have resources in their compartments that meet the conditions in all of the expressions. A server MAY also support other expression languages such as `text/cql`. When more than one language is supported by a server a client SHALL use a single language type for all of the member-filter expressions included in a single Group. FHIR [search result parameters](https://www.hl7.org/fhir/search.html#modifyingresults) (such as _sort, _include, and _elements) SHALL NOT be used as `member-filter` criteria. Additionally, a query in the `member-filter` parameter SHALL have the search context of a single FHIR Resource Type. The contexts 'all resource types' and 'a specified compartment' are not allowed. Clients SHOULD consult the server's capability statement to identify supported search parameters. Servers SHALL reject Group creation requests that include unsupported search parameters in a `member-filter` expression. Implementation guides that reference the Bulk Cohort API SHOULD specify the search parameters that need to be supported for their use case. Other implementation guides that incorporate the Bulk Export operation MAY provide a set of core search parameters that servers implementing the guide need to support.' |
| Name | Value | Comments | |
|---|---|---|---|
abstract | false | ||
baseDefinition | http://hl7.org/fhir/StructureDefinition/Group | ||
copyright | |||
date | 2025-12-11T13:43:06+08:00 | 2026-05-06T20:38:15+00:00 |
|
description | This Group resource profile enables the creation of patient cohorts, practitioner cohorts, and sets of devices based on characteristics defined using FHIR RESTful search filters. It can be used to constrain the population included in a bulk export request. | ||
experimental | |||
fhirVersion | 4.0.1 | ||
jurisdiction | |||
![]() jurisdiction[0] | http://unstats.un.org/unsd/methods/m49/m49.htm#001 | ||
kind | resource | ||
name | BulkCohortGroup | ||
publisher | HL7 International / FHIR Infrastructure | ||
purpose | |||
status | active | ||
title | Bulk Cohort Group | ||
type | Group | ||
url | http://hl7.org/fhir/uv/bulkdata/StructureDefinition/bulk-cohort-group | ||
version | 3.0.0 | 4.0.0 |
|
| Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | R Type | R Description & Constraints | Comments![]() | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
![]() | C | 0..* | Group | Group of multiple entities | C | 0..* | Group | Group of multiple entities | |||||||||
![]() ![]() | Σ | 0..1 | id | Logical id of this artifact | Σ | 0..1 | id | Logical id of this artifact | |||||||||
![]() ![]() | Σ | 0..1 | Meta | Metadata about the resource | Σ | 0..1 | Meta | Metadata about the resource | |||||||||
![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ?!Σ | 0..1 | uri | A set of rules under which this content was created | |||||||||
![]() ![]() | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
| 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
| |||||||||||
![]() ![]() | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||||||||
![]() ![]() | 0..* | Resource | Contained, inline Resources | 0..* | Resource | Contained, inline Resources | |||||||||||
![]() ![]() | 0..* | Extension | when membership in this group was updated Slice: Unordered, Open by value:url | 0..* | Extension | when membership in this group was updated Slice: Unordered, Open by value:url | |||||||||||
![]() ![]() | ?! | 1..* | Extension | Filter for members of this group Slice: Unordered, Open by value:url | ?! | 1..* | Extension | Filter for members of this group Slice: Unordered, Open by value:url | |||||||||
![]() ![]() | Σ | 0..* | Identifier | Unique id | Σ | 0..* | Identifier | Unique id | |||||||||
![]() ![]() | Σ | 0..1 | boolean | Whether this group's record is in active use | Σ | 0..1 | boolean | Whether this group's record is in active use | |||||||||
![]() ![]() | Σ | 1..1 | code | person | animal | practitioner | device | medication | substance Binding: ?? (required) | Σ | 1..1 | code | person | animal | practitioner | device | medication | substance Binding: ?? (required) | |||||||||
![]() ![]() | ΣC | 1..1 | boolean | True if the member element is populated, otherwise false. | ΣC | 1..1 | boolean | True if the member element is populated, otherwise false. | |||||||||
![]() ![]() | Σ | 0..1 | CodeableConcept | Kind of Group members Binding Description: (example): Kind of particular resource; e.g. cow, syringe, lake, etc. | Σ | 0..1 | CodeableConcept | Kind of Group members Binding Description: (example): Kind of particular resource; e.g. cow, syringe, lake, etc. | |||||||||
![]() ![]() | Σ | 1..1 | string | Label for Group | Σ | 1..1 | string | Label for Group | |||||||||
![]() ![]() | Σ | 0..1 | unsignedInt | Number of members | Σ | 0..1 | unsignedInt | Number of members | |||||||||
![]() ![]() | Σ | 0..1 | Reference(Organization | RelatedPerson | Practitioner | PractitionerRole) | Entity that is the custodian of the Group's definition | Σ | 0..1 | Reference(Organization | RelatedPerson | Practitioner | PractitionerRole) | Entity that is the custodian of the Group's definition | |||||||||
![]() ![]() | 0..0 | This element is not used in groups complying with this profile | 0..0 | This element is not used in groups complying with this profile | |||||||||||||
![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | 0..1 | string | Unique id for inter-element referencing | |||||||||||
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | 0..* | Extension | Additional content defined by implementations | |||||||||||
![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||||||
![]() ![]() ![]() | 1..1 | CodeableConcept | Kind of characteristic Binding Description: (example): List of characteristics used to describe group members; e.g. gender, age, owner, location, etc. | 1..1 | CodeableConcept | Kind of characteristic Binding Description: (example): List of characteristics used to describe group members; e.g. gender, age, owner, location, etc. | |||||||||||
![]() ![]() ![]() | 1..1 | CodeableConcept, boolean, Quantity, Range, Reference() | Value held by characteristic Binding Description: (example): Value of descriptive member characteristic; e.g. red, male, pneumonia, Caucasian, etc. | 1..1 | CodeableConcept, boolean, Quantity, Range, Reference() | Value held by characteristic Binding Description: (example): Value of descriptive member characteristic; e.g. red, male, pneumonia, Caucasian, etc. | |||||||||||
![]() ![]() ![]() | 1..1 | boolean | Group includes or excludes | 1..1 | boolean | Group includes or excludes | |||||||||||
![]() ![]() ![]() | 0..1 | Period | Period over which characteristic is tested | 0..1 | Period | Period over which characteristic is tested | |||||||||||
![]() ![]() | C | 0..* | BackboneElement | Who or what is in group | C | 0..* | BackboneElement | Who or what is in group | |||||||||
![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | 0..1 | string | Unique id for inter-element referencing | |||||||||||
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | 0..* | Extension | Additional content defined by implementations | |||||||||||
![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||||||
![]() ![]() ![]() | 1..1 | Reference(Patient | Practitioner | Device | Group) | Reference to the group member | 1..1 | Reference(Patient | Practitioner | Device | Group) | Reference to the group member | |||||||||||
![]() ![]() ![]() | 0..1 | Period | Period member belonged to the group | 0..1 | Period | Period member belonged to the group | |||||||||||
![]() ![]() ![]() | 0..1 | boolean | If member is no longer in group | 0..1 | boolean | If member is no longer in group | |||||||||||
Documentation for this format | |||||||||||||||||