Profiles & Operations > Profile: Group

DRAFT CONTENT

Profile: Group

This profile provides guidance for implementing FHIR Group resource.

It is used by a Subscriber to request a group of specific entities and resources (for example patients, practitioners, devices etc. by enumerating them, or by describing qualities that group members have.

In context of HL7 Subscription specification it will be uwsed to retreive a roster of patients or practitioners from specific health care organization.

Formal Views of Profile Content

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

Differential View

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
identifierS Σ1..*Identifier
activeΣ0..1boolean
typeS Σ I1..1codeBinding
actualΣ I1..1boolean
codeΣ0..1CodeableConcept
nameΣ0..1string
quantityΣ0..1unsignedInt
managingEntityΣ0..1Reference(Organization | RelatedPerson | Practitioner | PractitionerRole)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
code1..1CodeableConcept
valueCodeableConceptCodeableConcept
valueBooleanboolean
valueQuantityQuantity
valueRangeRange
valueReferenceReference()
exclude1..1boolean
period0..1Period
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
entity1..1Reference(PatientCACore | PractitionerCACore)
period0..1Period
inactive0..1boolean

Hybrid View

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
identifierS Σ1..*Identifier
activeΣ0..1boolean
typeS Σ I1..1codeBinding
actualΣ I1..1boolean
codeΣ0..1CodeableConcept
nameΣ0..1string
quantityΣ0..1unsignedInt
managingEntityΣ0..1Reference(Organization | RelatedPerson | Practitioner | PractitionerRole)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
code1..1CodeableConcept
valueCodeableConceptCodeableConcept
valueBooleanboolean
valueQuantityQuantity
valueRangeRange
valueReferenceReference()
exclude1..1boolean
period0..1Period
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
entity1..1Reference(PatientCACore | PractitionerCACore)
period0..1Period
inactive0..1boolean

Snapshot View

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
identifierS Σ1..*Identifier
activeΣ0..1boolean
typeS Σ I1..1codeBinding
actualΣ I1..1boolean
codeΣ0..1CodeableConcept
nameΣ0..1string
quantityΣ0..1unsignedInt
managingEntityΣ0..1Reference(Organization | RelatedPerson | Practitioner | PractitionerRole)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
code1..1CodeableConcept
valueCodeableConceptCodeableConcept
valueBooleanboolean
valueQuantityQuantity
valueRangeRange
valueReferenceReference()
exclude1..1boolean
period0..1Period
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
entity1..1Reference(PatientCACore | PractitionerCACore)
period0..1Period
inactive0..1boolean

Table View

Group..
Group.identifier1..
Group.type..
Group.member1..
Group.member.entityReference(PatientCACore | PractitionerCACore)..

JSON View

{
    "resourceType": "StructureDefinition",
    "id": "ca-on-pubsub-group",
    "url": "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-pubsub-group",
    "version": "1.0.3",
    "name": "OntarioHealthPubSubGroup",
    "title": "Ontario Health Publish-Subscribe Group Profile",
    "status": "draft",
    "publisher": "Ontario Health",
    "contact":  [
        {
            "name": "Ontario Health",
            "telecom":  [
                {
                    "system": "url",
                    "value": "https://www.ontariohealth.ca"
                }
            ]
        }
    ],
    "description": "A profile of the Group resource for publish-subscribe mechanisms within Ontario Health. It requires at least one member and constrains members to be references to CA Core Patient or CA Core Practitioner profiles.",
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "Group",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Group",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "Group.identifier",
                "path": "Group.identifier",
                "min": 1,
                "mustSupport": true,
                "short": "Mandatory, globally unique business identifier for the group (Must Support)",
                "definition": "A mandatory, globally unique business identifier for this group (e.g., a patient list), assigned by the EMR instance. The EMR Instance SHALL ensure this identifier is globally unique across all groups it manages and SHALL use the same Group.identifier for subsequent updates of the same conceptual list to ensure stability. This element is marked as Must Support, meaning systems SHALL be capable of populating and processing it."
            },
            {
                "id": "Group.type",
                "path": "Group.type",
                "mustSupport": true,
                "short": "Type of group: person or practitioner (Must Support)",
                "definition": "Declares the type of resources that are members of this group. This profile mandates that the type must be either 'person' (if members are Patients) or 'practitioner' (if members are Practitioners). This element is marked as Must Support. The cardinality of Group.type is 1..1 (inherited from base).",
                "binding": {
                    "strength": "required",
                    "description": "The type of group members, constrained to person or practitioner by this profile.",
                    "valueSet": "http://hl7.org/fhir/ValueSet/group-type"
                },
                "constraint":  [
                    {
                        "key": "pubsub-group-type-person-practitioner",
                        "severity": "error",
                        "human": "Group.type must be 'person' or 'practitioner'.",
                        "expression": "type = 'person' or type = 'practitioner'",
                        "source": "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-pubsub-group"
                    }
                ]
            },
            {
                "id": "Group.member",
                "path": "Group.member",
                "min": 1,
                "short": "Identifies the resource instances that are members of the group.",
                "definition": "Identifies the resource instances that are members of the group. This profile requires at least one member."
            },
            {
                "id": "Group.member.entity",
                "path": "Group.member.entity",
                "short": "A reference to the CA Core Patient or CA Core Practitioner that is a member of this group",
                "definition": "A reference to a resource conforming to the CA Core Patient profile or CA Core Practitioner profile that is a member of this group.",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/patient-ca-core",
                            "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core"
                        ]
                    }
                ]
            }
        ]
    }
}