WHO Antenatal Care Guideline Implementation Guide
0.3.0 - CI Build International flag

WHO Antenatal Care Guideline Implementation Guide, published by World Health Organization (WHO). This guide is not an authorized publication; it is the continuous build for version 0.3.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-anc/ and changes regularly. See the Directory of published versions

Resource Profile: WHO Group Definition

Official URL: http://fhir.org/guides/who/core/StructureDefinition/who-groupdefinition Version: 0.3.0
Draft as of 2026-10-16 Computable Name: WHOGroupDefinition

WHO Group Definition

Usages:

  • This Profile is not used by any profiles in this Specification

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Group C 0..* CPGGroupDefinition Group of multiple entities
Constraints: grp-1, gdf-1
Group.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Group.Slices for extension Content/Rules for all slices
Group.Slices for extension.extension:expression This element must be supported. C 0..1 Expression An dynamic expression
URL: http://hl7.org/fhir/StructureDefinition/cqf-expression
Group.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Group.identifier This element must be supported. This element is included in summaries. 1..* Identifier Unique id
Group.identifier.use This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Group.identifier.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
Group.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Group.active This element must be supported. This element is included in summaries. 1..1 boolean Whether this group's record is in active use
Group.type This element must be supported. This element is included in summaries. 1..1 code person | animal | practitioner | device | medication | substance
Binding: GroupType (required): Types of resources that are part of group.
Fixed Value: person (no extensions allowed)
Group.actual This element must be supported. This element is included in summaries. C 1..1 boolean Descriptive or actual
Fixed Value: false (no extensions allowed)
Group.code This element must be supported. This element is included in summaries. 0..1 CodeableConcept Kind of Group members
Binding Description: (example): Kind of particular resource; e.g. cow, syringe, lake, etc.
Group.name This element must be supported. This element is included in summaries. 1..1 string Label for Group
Group.characteristic This element must be supported. C 0..* BackboneElement Include / Exclude group members by Trait
Group.characteristic.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Group.characteristic.code 1..1 CodeableConcept Kind of characteristic
Binding Description: (example): List of characteristics used to describe group members; e.g. gender, age, owner, location, etc.
Group.characteristic.value[x] 1..1 Value held by characteristic
Binding Description: (example): Value of descriptive member characteristic; e.g. red, male, pneumonia, Caucasian, etc.
Group.characteristic.value[x].valueCodeableConcept CodeableConcept
Group.characteristic.value[x].valueBoolean boolean
Group.characteristic.value[x].valueQuantity Quantity
Group.characteristic.value[x].valueRange Range
Group.characteristic.value[x].valueReference Reference(Any)
Group.characteristic.exclude 1..1 boolean Group includes or excludes

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Group.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Group.type Base required GroupType 📍4.0.1 FHIR Std.
Group.code Base example Not State Unknown
Group.characteristic.​code Base example Not State Unknown
Group.characteristic.​value[x] Base example Not State Unknown

Constraints

Id Grade Path(s) Description Expression
dom-2 error Group If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Group If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Group If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Group If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Group A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
gdf-1 error Group Group definition must have either an expression or characteristics, but not both extension('http://hl7.org/fhir/StructureDefinition/cqf-expression').exists() xor characteristic.exists()
grp-1 error Group Can only have members if group is "actual" member.empty() or (actual = true)

This structure is derived from CPGGroupDefinition

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Group 0..* CPGGroupDefinition Group of multiple entities
Group.identifier This element must be supported. 1..* Identifier Unique id
Group.identifier.use This element must be supported. 1..1 code usual | official | temp | secondary | old (If known)
Group.identifier.system This element must be supported. 1..1 uri The namespace for the identifier value
Group.identifier.value This element must be supported. 1..1 string The value that is unique
Group.active This element must be supported. 1..1 boolean Whether this group's record is in active use

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: doco
Group C 0..* CPGGroupDefinition Group of multiple entities
Constraints: grp-1, gdf-1
Group.id This element is included in summaries. 0..1 id Logical id of this artifact
Group.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Group.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Group.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Group.text 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
Group.contained 0..* Resource Contained, inline Resources
Group.Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
Group.Slices for extension.extension:expression This element must be supported. C 0..1 Expression An dynamic expression
URL: http://hl7.org/fhir/StructureDefinition/cqf-expression
Group.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Group.identifier This element must be supported. This element is included in summaries. 1..* Identifier Unique id
Group.identifier.id 0..1 string Unique id for inter-element referencing
Group.identifier.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Group.identifier.use This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Group.identifier.type This element is included in summaries. 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Group.identifier.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
Group.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Group.identifier.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Group.identifier.assigner This element is included in summaries. 0..1 Reference(Organization) Organization that issued id (may be just text)
Group.active This element must be supported. This element is included in summaries. 1..1 boolean Whether this group's record is in active use
Group.type This element must be supported. This element is included in summaries. 1..1 code person | animal | practitioner | device | medication | substance
Binding: GroupType (required): Types of resources that are part of group.
Fixed Value: person (no extensions allowed)
Group.actual This element must be supported. This element is included in summaries. C 1..1 boolean Descriptive or actual
Fixed Value: false (no extensions allowed)
Group.code This element must be supported. This element is included in summaries. 0..1 CodeableConcept Kind of Group members
Binding Description: (example): Kind of particular resource; e.g. cow, syringe, lake, etc.
Group.name This element must be supported. This element is included in summaries. 1..1 string Label for Group
Group.quantity This element is included in summaries. 0..1 unsignedInt Number of members
Group.managingEntity This element is included in summaries. 0..1 Reference(Organization | RelatedPerson | Practitioner | PractitionerRole) Entity that is the custodian of the Group's definition
Group.characteristic This element must be supported. C 0..* BackboneElement Include / Exclude group members by Trait
Group.characteristic.id 0..1 string Unique id for inter-element referencing
Group.characteristic.extension 0..* Extension Additional content defined by implementations
Group.characteristic.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Group.characteristic.code 1..1 CodeableConcept Kind of characteristic
Binding Description: (example): List of characteristics used to describe group members; e.g. gender, age, owner, location, etc.
Group.characteristic.value[x] 1..1 Value held by characteristic
Binding Description: (example): Value of descriptive member characteristic; e.g. red, male, pneumonia, Caucasian, etc.
Group.characteristic.value[x].valueCodeableConcept CodeableConcept
Group.characteristic.value[x].valueBoolean boolean
Group.characteristic.value[x].valueQuantity Quantity
Group.characteristic.value[x].valueRange Range
Group.characteristic.value[x].valueReference Reference(Any)
Group.characteristic.exclude 1..1 boolean Group includes or excludes
Group.characteristic.period 0..1 Period Period over which characteristic is tested

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Group.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Group.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Group.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Group.type Base required GroupType 📍4.0.1 FHIR Std.
Group.code Base example Not State Unknown
Group.characteristic.​code Base example Not State Unknown
Group.characteristic.​value[x] Base example Not State Unknown

Constraints

Id Grade Path(s) Description Expression
dom-2 error Group If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Group If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Group If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Group If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Group A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
gdf-1 error Group Group definition must have either an expression or characteristics, but not both extension('http://hl7.org/fhir/StructureDefinition/cqf-expression').exists() xor characteristic.exists()
grp-1 error Group Can only have members if group is "actual" member.empty() or (actual = true)

This structure is derived from CPGGroupDefinition

Summary

Mandatory: 5 elements
Must-Support: 5 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Group C 0..* CPGGroupDefinition Group of multiple entities
Constraints: grp-1, gdf-1
Group.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Group.Slices for extension Content/Rules for all slices
Group.Slices for extension.extension:expression This element must be supported. C 0..1 Expression An dynamic expression
URL: http://hl7.org/fhir/StructureDefinition/cqf-expression
Group.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Group.identifier This element must be supported. This element is included in summaries. 1..* Identifier Unique id
Group.identifier.use This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Group.identifier.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
Group.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Group.active This element must be supported. This element is included in summaries. 1..1 boolean Whether this group's record is in active use
Group.type This element must be supported. This element is included in summaries. 1..1 code person | animal | practitioner | device | medication | substance
Binding: GroupType (required): Types of resources that are part of group.
Fixed Value: person (no extensions allowed)
Group.actual This element must be supported. This element is included in summaries. C 1..1 boolean Descriptive or actual
Fixed Value: false (no extensions allowed)
Group.code This element must be supported. This element is included in summaries. 0..1 CodeableConcept Kind of Group members
Binding Description: (example): Kind of particular resource; e.g. cow, syringe, lake, etc.
Group.name This element must be supported. This element is included in summaries. 1..1 string Label for Group
Group.characteristic This element must be supported. C 0..* BackboneElement Include / Exclude group members by Trait
Group.characteristic.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Group.characteristic.code 1..1 CodeableConcept Kind of characteristic
Binding Description: (example): List of characteristics used to describe group members; e.g. gender, age, owner, location, etc.
Group.characteristic.value[x] 1..1 Value held by characteristic
Binding Description: (example): Value of descriptive member characteristic; e.g. red, male, pneumonia, Caucasian, etc.
Group.characteristic.value[x].valueCodeableConcept CodeableConcept
Group.characteristic.value[x].valueBoolean boolean
Group.characteristic.value[x].valueQuantity Quantity
Group.characteristic.value[x].valueRange Range
Group.characteristic.value[x].valueReference Reference(Any)
Group.characteristic.exclude 1..1 boolean Group includes or excludes

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Group.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Group.type Base required GroupType 📍4.0.1 FHIR Std.
Group.code Base example Not State Unknown
Group.characteristic.​code Base example Not State Unknown
Group.characteristic.​value[x] Base example Not State Unknown

Constraints

Id Grade Path(s) Description Expression
dom-2 error Group If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Group If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Group If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Group If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Group A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
gdf-1 error Group Group definition must have either an expression or characteristics, but not both extension('http://hl7.org/fhir/StructureDefinition/cqf-expression').exists() xor characteristic.exists()
grp-1 error Group Can only have members if group is "actual" member.empty() or (actual = true)

Differential View

This structure is derived from CPGGroupDefinition

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Group 0..* CPGGroupDefinition Group of multiple entities
Group.identifier This element must be supported. 1..* Identifier Unique id
Group.identifier.use This element must be supported. 1..1 code usual | official | temp | secondary | old (If known)
Group.identifier.system This element must be supported. 1..1 uri The namespace for the identifier value
Group.identifier.value This element must be supported. 1..1 string The value that is unique
Group.active This element must be supported. 1..1 boolean Whether this group's record is in active use

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Group C 0..* CPGGroupDefinition Group of multiple entities
Constraints: grp-1, gdf-1
Group.id This element is included in summaries. 0..1 id Logical id of this artifact
Group.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Group.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Group.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Group.text 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
Group.contained 0..* Resource Contained, inline Resources
Group.Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
Group.Slices for extension.extension:expression This element must be supported. C 0..1 Expression An dynamic expression
URL: http://hl7.org/fhir/StructureDefinition/cqf-expression
Group.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Group.identifier This element must be supported. This element is included in summaries. 1..* Identifier Unique id
Group.identifier.id 0..1 string Unique id for inter-element referencing
Group.identifier.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Group.identifier.use This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Group.identifier.type This element is included in summaries. 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Group.identifier.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
Group.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Group.identifier.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Group.identifier.assigner This element is included in summaries. 0..1 Reference(Organization) Organization that issued id (may be just text)
Group.active This element must be supported. This element is included in summaries. 1..1 boolean Whether this group's record is in active use
Group.type This element must be supported. This element is included in summaries. 1..1 code person | animal | practitioner | device | medication | substance
Binding: GroupType (required): Types of resources that are part of group.
Fixed Value: person (no extensions allowed)
Group.actual This element must be supported. This element is included in summaries. C 1..1 boolean Descriptive or actual
Fixed Value: false (no extensions allowed)
Group.code This element must be supported. This element is included in summaries. 0..1 CodeableConcept Kind of Group members
Binding Description: (example): Kind of particular resource; e.g. cow, syringe, lake, etc.
Group.name This element must be supported. This element is included in summaries. 1..1 string Label for Group
Group.quantity This element is included in summaries. 0..1 unsignedInt Number of members
Group.managingEntity This element is included in summaries. 0..1 Reference(Organization | RelatedPerson | Practitioner | PractitionerRole) Entity that is the custodian of the Group's definition
Group.characteristic This element must be supported. C 0..* BackboneElement Include / Exclude group members by Trait
Group.characteristic.id 0..1 string Unique id for inter-element referencing
Group.characteristic.extension 0..* Extension Additional content defined by implementations
Group.characteristic.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Group.characteristic.code 1..1 CodeableConcept Kind of characteristic
Binding Description: (example): List of characteristics used to describe group members; e.g. gender, age, owner, location, etc.
Group.characteristic.value[x] 1..1 Value held by characteristic
Binding Description: (example): Value of descriptive member characteristic; e.g. red, male, pneumonia, Caucasian, etc.
Group.characteristic.value[x].valueCodeableConcept CodeableConcept
Group.characteristic.value[x].valueBoolean boolean
Group.characteristic.value[x].valueQuantity Quantity
Group.characteristic.value[x].valueRange Range
Group.characteristic.value[x].valueReference Reference(Any)
Group.characteristic.exclude 1..1 boolean Group includes or excludes
Group.characteristic.period 0..1 Period Period over which characteristic is tested

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Group.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Group.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Group.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Group.type Base required GroupType 📍4.0.1 FHIR Std.
Group.code Base example Not State Unknown
Group.characteristic.​code Base example Not State Unknown
Group.characteristic.​value[x] Base example Not State Unknown

Constraints

Id Grade Path(s) Description Expression
dom-2 error Group If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Group If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Group If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Group If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Group A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
gdf-1 error Group Group definition must have either an expression or characteristics, but not both extension('http://hl7.org/fhir/StructureDefinition/cqf-expression').exists() xor characteristic.exists()
grp-1 error Group Can only have members if group is "actual" member.empty() or (actual = true)

This structure is derived from CPGGroupDefinition

Summary

Mandatory: 5 elements
Must-Support: 5 elements

 

Other representations of profile: CSV, Excel, Schematron