QI-Core Implementation Guide
8.0.0-ballot - STU 8 - ballot

QI-Core Implementation Guide, published by HL7 International / Clinical Quality Information. This guide is not an authorized publication; it is the continuous build for version 8.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-qi-core/ and changes regularly. See the Directory of published versions

## Resource Profile: QICore RelatedPerson

Official URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-relatedperson | Version: 8.0.0-ballot
Standards status: Trial-use Active as of 2018-08-22 | Maturity Level: 4 | Computable Name: QICoreRelatedPerson

Profile of RelatedPerson for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.

"Must Have", "QI Elements" and "primary code path" are defined in the QI-Core Must Support section.
Must Have:

- active: (QI) Whether this related person's record is in active use
- patient: (QI) The patient this person is related to

QI Elements:

- name: (QI) A name associated with the person
- telecom: (QI) A contact detail for the person
- relationship: (QI) The nature of the relationship

Primary code path: relationship
(PCPath) This element is the primary code path for this resource CQL Retrieve
Usage

See the patterns page for implementation and usage patterns.

### Examples

Emergency Contact Example

Usages:

- Refer to this Profile: QICore AdverseEvent, QICore CareTeam, QICore Claim, QICore Communication... Show 12 more, QICore CommunicationRequest, QICore Coverage, QICore Encounter, QICore ImagingStudy, QICore MedicationRequest, QICore MedicationStatement, QICore NonPatient Observation, QICore Observation Screening Assessment, QICore Procedure, QICore QuestionnaireResponse, QICore ServiceRequest and QICore Simple Observation
- Examples for this Profile: RelatedPerson/example

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
RelatedPerson | C | 0..* | USCoreRelatedPersonProfile | A person that is related to a patient, but who is not a direct target of care Constraints: us-core-14
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
active | ?!S Σ | 1..1 | boolean | (QI) Whether this related person's record is in active use
patient | S Σ | 1..1 | Reference(QICore Patient) | (QI) The patient this person is related to
relationship | S Σ C | 0..* | CodeableConcept | (QI) The nature of the relationship Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person.
name | S Σ C | 0..* | HumanName | (QI) A name associated with the person
telecom | S Σ | 0..* | ContactPoint | (QI) A contact detail for the person
address | S Σ | 0..* | Address | (QI) Address where the related person can be contacted or visited
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
RelatedPerson.relationship | Base | preferred | Patient relationship type | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | RelatedPerson | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | RelatedPerson | 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 | RelatedPerson | 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 | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | RelatedPerson | 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()`
us-core-14 | error | RelatedPerson | Either a name or a relationship SHALL be provided (or both) | `name.exists() or relationship.exists()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
RelatedPerson |  | 0..* | USCoreRelatedPersonProfile | A person that is related to a patient, but who is not a direct target of care
active |  | 1..1 | boolean | (QI) Whether this related person's record is in active use
patient |  | 1..1 | Reference(QICore Patient) | (QI) The patient this person is related to
relationship | C | 0..* | CodeableConcept | (QI) The nature of the relationship
name | C | 0..* | HumanName | (QI) A name associated with the person
telecom |  | 0..* | ContactPoint | (QI) A contact detail for the person
address |  | 0..* | Address | (QI) Address where the related person can be contacted or visited
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
RelatedPerson | C | 0..* | USCoreRelatedPersonProfile | A person that is related to a patient, but who is not a direct target of care Constraints: us-core-14
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
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
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | A human identifier for this person
active | ?!S Σ | 1..1 | boolean | (QI) Whether this related person's record is in active use
patient | S Σ | 1..1 | Reference(QICore Patient) | (QI) The patient this person is related to
relationship | S Σ C | 0..* | CodeableConcept | (QI) The nature of the relationship Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person.
name | S Σ C | 0..* | HumanName | (QI) A name associated with the person
telecom | S Σ | 0..* | ContactPoint | (QI) A contact detail for the person
gender | Σ | 0..1 | code | male | female | other | unknown Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.
birthDate | Σ | 0..1 | date | The date on which the related person was born
address | S Σ | 0..* | Address | (QI) Address where the related person can be contacted or visited
photo |  | 0..* | Attachment | Image of the person
period |  | 0..1 | Period | Period of time that this relationship is considered valid
communication |  | 0..* | BackboneElement | A language which may be used to communicate with about the patient's health
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
language |  | 1..1 | CodeableConcept | The language which can be used to communicate with the patient about his or her health Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
preferred |  | 0..1 | boolean | Language preference indicator
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
RelatedPerson.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
RelatedPerson.relationship | Base | preferred | Patient relationship type | 📦4.0.1 | FHIR Std.
RelatedPerson.gender | Base | required | AdministrativeGender | 📍4.0.1 | FHIR Std.
RelatedPerson.communication.​language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | RelatedPerson | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | RelatedPerson | 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 | RelatedPerson | 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 | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | RelatedPerson | 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()`
us-core-14 | error | RelatedPerson | Either a name or a relationship SHALL be provided (or both) | `name.exists() or relationship.exists()`

Summary

Mandatory: 1 element

Structures

This structure refers to these other structures:

- QICore Patient (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient)

Maturity: 4

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
RelatedPerson | C | 0..* | USCoreRelatedPersonProfile | A person that is related to a patient, but who is not a direct target of care Constraints: us-core-14
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
active | ?!S Σ | 1..1 | boolean | (QI) Whether this related person's record is in active use
patient | S Σ | 1..1 | Reference(QICore Patient) | (QI) The patient this person is related to
relationship | S Σ C | 0..* | CodeableConcept | (QI) The nature of the relationship Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person.
name | S Σ C | 0..* | HumanName | (QI) A name associated with the person
telecom | S Σ | 0..* | ContactPoint | (QI) A contact detail for the person
address | S Σ | 0..* | Address | (QI) Address where the related person can be contacted or visited
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
RelatedPerson.relationship | Base | preferred | Patient relationship type | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | RelatedPerson | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | RelatedPerson | 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 | RelatedPerson | 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 | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | RelatedPerson | 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()`
us-core-14 | error | RelatedPerson | Either a name or a relationship SHALL be provided (or both) | `name.exists() or relationship.exists()`

Differential View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
RelatedPerson |  | 0..* | USCoreRelatedPersonProfile | A person that is related to a patient, but who is not a direct target of care
active |  | 1..1 | boolean | (QI) Whether this related person's record is in active use
patient |  | 1..1 | Reference(QICore Patient) | (QI) The patient this person is related to
relationship | C | 0..* | CodeableConcept | (QI) The nature of the relationship
name | C | 0..* | HumanName | (QI) A name associated with the person
telecom |  | 0..* | ContactPoint | (QI) A contact detail for the person
address |  | 0..* | Address | (QI) Address where the related person can be contacted or visited
Documentation for this format

Snapshot ViewView

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
RelatedPerson | C | 0..* | USCoreRelatedPersonProfile | A person that is related to a patient, but who is not a direct target of care Constraints: us-core-14
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
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
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | A human identifier for this person
active | ?!S Σ | 1..1 | boolean | (QI) Whether this related person's record is in active use
patient | S Σ | 1..1 | Reference(QICore Patient) | (QI) The patient this person is related to
relationship | S Σ C | 0..* | CodeableConcept | (QI) The nature of the relationship Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person.
name | S Σ C | 0..* | HumanName | (QI) A name associated with the person
telecom | S Σ | 0..* | ContactPoint | (QI) A contact detail for the person
gender | Σ | 0..1 | code | male | female | other | unknown Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.
birthDate | Σ | 0..1 | date | The date on which the related person was born
address | S Σ | 0..* | Address | (QI) Address where the related person can be contacted or visited
photo |  | 0..* | Attachment | Image of the person
period |  | 0..1 | Period | Period of time that this relationship is considered valid
communication |  | 0..* | BackboneElement | A language which may be used to communicate with about the patient's health
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
language |  | 1..1 | CodeableConcept | The language which can be used to communicate with the patient about his or her health Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
preferred |  | 0..1 | boolean | Language preference indicator
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
RelatedPerson.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
RelatedPerson.relationship | Base | preferred | Patient relationship type | 📦4.0.1 | FHIR Std.
RelatedPerson.gender | Base | required | AdministrativeGender | 📍4.0.1 | FHIR Std.
RelatedPerson.communication.​language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | RelatedPerson | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | RelatedPerson | 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 | RelatedPerson | 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 | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | RelatedPerson | 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()`
us-core-14 | error | RelatedPerson | Either a name or a relationship SHALL be provided (or both) | `name.exists() or relationship.exists()`

Summary

Mandatory: 1 element

Structures

This structure refers to these other structures:

- QICore Patient (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient)

Maturity: 4

Other representations of profile: CSV, Excel, Schematron