MCC eCare Plan Implementation Guide
1.0.0 - STU1 United States of America flag

MCC eCare Plan Implementation Guide, published by HL7 International / Patient Care. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-us-mcc/ and changes regularly. See the Directory of published versions

Resource Profile: Multiple Chronic Condition Care Plan Family History

Official URL: http://hl7.org/fhir/us/mcc/StructureDefinition/MCCFamilyHistory Version: 1.0.0
Active as of 2024-08-13 Computable Name: MCCFamilyHistory

This profile constrains the FHIR Family Member History Resource for use in the MCC FHIR Care Plan or other FHIR Care Plans.

This profile provides a way for the Multiple Chronic Condition Care Plan to record, search, and fetch first degree family members and their chronic conditions, health concerns or any pertinent condition. The profile is based onthe FHIR Family Member History Resource This derived profile is designed to add requirements to the following elements:

  • FamilyMemberHistory.condition is set to "Must Support"
  • FamilyMemberHistory.relationship is bound to a first degree family member value set which is a subset of the V3 Family Member Value set. ("Required" in base resource)
  • FamilyMemberHistory.extension:resource-pertainsToGoal (Must Support) to encourage linking a goal to the family history observation in hopes to facilitate and/or to encourage systems to be able to receive and understand a goal linkage if present.

No additional value sets were defined for use in this profile beyond the US Core Family Member History profile.

Usage:

Formal Views of Profile Content

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

This structure is derived from FamilyMemberHistory

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... resource-pertainsToGoal S 0..* Reference(Goal) Pertains to goal
URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal
... relationship 1..1 CodeableConcept First Degree Family Member
Binding: First Degree Family Member . (preferred): This set of values includes first degree family members (i.e., parent, sibling, full child)

... condition S 1..* BackboneElement Condition that the related person had
.... code S 1..1 CodeableConcept Condition suffered by relation

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
FamilyMemberHistory.relationshippreferredFirstDegreeFamilyMember .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1032.92
NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
fhs-1: Can have age[x] or born[x], but not both
fhs-2: Can only have estimatedAge if age[x] is present
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... resource-pertainsToGoal S 0..* Reference(Goal) Pertains to goal
URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... patient Σ 1..1 Reference(Patient) Patient history is about
... relationship Σ 1..1 CodeableConcept First Degree Family Member
Binding: First Degree Family Member . (preferred): This set of values includes first degree family members (i.e., parent, sibling, full child)

... condition S 1..* BackboneElement Condition that the related person had
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code S 1..1 CodeableConcept Condition suffered by relation
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
FamilyMemberHistory.statusrequiredFamilyHistoryStatus
http://hl7.org/fhir/ValueSet/history-status|4.0.1
from the FHIR Standard
FamilyMemberHistory.relationshippreferredFirstDegreeFamilyMember .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1032.92
FamilyMemberHistory.condition.codeexampleCondition/Problem/DiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorFamilyMemberHistoryIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorFamilyMemberHistoryIf 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-4errorFamilyMemberHistoryIf 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-5errorFamilyMemberHistoryIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceFamilyMemberHistoryA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
fhs-1errorFamilyMemberHistoryCan have age[x] or born[x], but not both
: age.empty() or born.empty()
fhs-2errorFamilyMemberHistoryCan only have estimatedAge if age[x] is present
: age.exists() or estimatedAge.empty()
NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
fhs-1: Can have age[x] or born[x], but not both
fhs-2: Can only have estimatedAge if age[x] is present
... 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
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... resource-pertainsToGoal S 0..* Reference(Goal) Pertains to goal
URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Id(s) for this record
... instantiatesCanonical Σ 0..* canonical(PlanDefinition | Questionnaire | ActivityDefinition | Measure | OperationDefinition) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... status ?!Σ 1..1 code partial | completed | entered-in-error | health-unknown
Binding: FamilyHistoryStatus (required): A code that identifies the status of the family history record.

... dataAbsentReason Σ 0..1 CodeableConcept subject-unknown | withheld | unable-to-obtain | deferred
Binding: FamilyHistoryAbsentReason (example): Codes describing the reason why a family member's history is not available.

... patient Σ 1..1 Reference(Patient) Patient history is about
... date Σ 0..1 dateTime When history was recorded or last updated
... name Σ 0..1 string The family member described
... relationship Σ 1..1 CodeableConcept First Degree Family Member
Binding: First Degree Family Member . (preferred): This set of values includes first degree family members (i.e., parent, sibling, full child)

... sex Σ 0..1 CodeableConcept male | female | other | unknown
Binding: AdministrativeGender (extensible): Codes describing the sex assigned at birth as documented on the birth registration.

... born[x] C 0..1 (approximate) date of birth
.... bornPeriod Period
.... bornDate date
.... bornString string
... age[x] ΣC 0..1 (approximate) age
.... ageAge Age
.... ageRange Range
.... ageString string
... estimatedAge ΣC 0..1 boolean Age is estimated?
... deceased[x] Σ 0..1 Dead? How old/when?
.... deceasedBoolean boolean
.... deceasedAge Age
.... deceasedRange Range
.... deceasedDate date
.... deceasedString string
... reasonCode Σ 0..* CodeableConcept Why was family member history performed?
Binding: SNOMEDCTClinicalFindings (example): Codes indicating why the family member history was done.


... reasonReference Σ 0..* Reference(Condition | Observation | AllergyIntolerance | QuestionnaireResponse | DiagnosticReport | DocumentReference) Why was family member history performed?
... note 0..* Annotation General note about related person
... condition S 1..* BackboneElement Condition that the related person had
.... 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
.... code S 1..1 CodeableConcept Condition suffered by relation
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.

.... outcome 0..1 CodeableConcept deceased | permanent disability | etc.
Binding: ConditionOutcomeCodes (example): The result of the condition for the patient; e.g. death, permanent disability, temporary disability, etc.

.... contributedToDeath 0..1 boolean Whether the condition contributed to the cause of death
.... onset[x] 0..1 When condition first manifested
..... onsetAge Age
..... onsetRange Range
..... onsetPeriod Period
..... onsetString string
.... note 0..* Annotation Extra information about condition

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
FamilyMemberHistory.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
FamilyMemberHistory.statusrequiredFamilyHistoryStatus
http://hl7.org/fhir/ValueSet/history-status|4.0.1
from the FHIR Standard
FamilyMemberHistory.dataAbsentReasonexampleFamilyHistoryAbsentReason
http://hl7.org/fhir/ValueSet/history-absent-reason
from the FHIR Standard
FamilyMemberHistory.relationshippreferredFirstDegreeFamilyMember .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1032.92
FamilyMemberHistory.sexextensibleAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender
from the FHIR Standard
FamilyMemberHistory.reasonCodeexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard
FamilyMemberHistory.condition.codeexampleCondition/Problem/DiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard
FamilyMemberHistory.condition.outcomeexampleConditionOutcomeCodes
http://hl7.org/fhir/ValueSet/condition-outcome
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorFamilyMemberHistoryIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorFamilyMemberHistoryIf 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-4errorFamilyMemberHistoryIf 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-5errorFamilyMemberHistoryIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceFamilyMemberHistoryA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
fhs-1errorFamilyMemberHistoryCan have age[x] or born[x], but not both
: age.empty() or born.empty()
fhs-2errorFamilyMemberHistoryCan only have estimatedAge if age[x] is present
: age.exists() or estimatedAge.empty()

This structure is derived from FamilyMemberHistory

Summary

Mandatory: 1 element
Must-Support: 3 elements

Extensions

This structure refers to these extensions:

Differential View

This structure is derived from FamilyMemberHistory

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... resource-pertainsToGoal S 0..* Reference(Goal) Pertains to goal
URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal
... relationship 1..1 CodeableConcept First Degree Family Member
Binding: First Degree Family Member . (preferred): This set of values includes first degree family members (i.e., parent, sibling, full child)

... condition S 1..* BackboneElement Condition that the related person had
.... code S 1..1 CodeableConcept Condition suffered by relation

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
FamilyMemberHistory.relationshippreferredFirstDegreeFamilyMember .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1032.92

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
fhs-1: Can have age[x] or born[x], but not both
fhs-2: Can only have estimatedAge if age[x] is present
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... resource-pertainsToGoal S 0..* Reference(Goal) Pertains to goal
URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... patient Σ 1..1 Reference(Patient) Patient history is about
... relationship Σ 1..1 CodeableConcept First Degree Family Member
Binding: First Degree Family Member . (preferred): This set of values includes first degree family members (i.e., parent, sibling, full child)

... condition S 1..* BackboneElement Condition that the related person had
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code S 1..1 CodeableConcept Condition suffered by relation
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
FamilyMemberHistory.statusrequiredFamilyHistoryStatus
http://hl7.org/fhir/ValueSet/history-status|4.0.1
from the FHIR Standard
FamilyMemberHistory.relationshippreferredFirstDegreeFamilyMember .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1032.92
FamilyMemberHistory.condition.codeexampleCondition/Problem/DiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorFamilyMemberHistoryIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorFamilyMemberHistoryIf 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-4errorFamilyMemberHistoryIf 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-5errorFamilyMemberHistoryIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceFamilyMemberHistoryA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
fhs-1errorFamilyMemberHistoryCan have age[x] or born[x], but not both
: age.empty() or born.empty()
fhs-2errorFamilyMemberHistoryCan only have estimatedAge if age[x] is present
: age.exists() or estimatedAge.empty()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
fhs-1: Can have age[x] or born[x], but not both
fhs-2: Can only have estimatedAge if age[x] is present
... 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
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... resource-pertainsToGoal S 0..* Reference(Goal) Pertains to goal
URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Id(s) for this record
... instantiatesCanonical Σ 0..* canonical(PlanDefinition | Questionnaire | ActivityDefinition | Measure | OperationDefinition) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... status ?!Σ 1..1 code partial | completed | entered-in-error | health-unknown
Binding: FamilyHistoryStatus (required): A code that identifies the status of the family history record.

... dataAbsentReason Σ 0..1 CodeableConcept subject-unknown | withheld | unable-to-obtain | deferred
Binding: FamilyHistoryAbsentReason (example): Codes describing the reason why a family member's history is not available.

... patient Σ 1..1 Reference(Patient) Patient history is about
... date Σ 0..1 dateTime When history was recorded or last updated
... name Σ 0..1 string The family member described
... relationship Σ 1..1 CodeableConcept First Degree Family Member
Binding: First Degree Family Member . (preferred): This set of values includes first degree family members (i.e., parent, sibling, full child)

... sex Σ 0..1 CodeableConcept male | female | other | unknown
Binding: AdministrativeGender (extensible): Codes describing the sex assigned at birth as documented on the birth registration.

... born[x] C 0..1 (approximate) date of birth
.... bornPeriod Period
.... bornDate date
.... bornString string
... age[x] ΣC 0..1 (approximate) age
.... ageAge Age
.... ageRange Range
.... ageString string
... estimatedAge ΣC 0..1 boolean Age is estimated?
... deceased[x] Σ 0..1 Dead? How old/when?
.... deceasedBoolean boolean
.... deceasedAge Age
.... deceasedRange Range
.... deceasedDate date
.... deceasedString string
... reasonCode Σ 0..* CodeableConcept Why was family member history performed?
Binding: SNOMEDCTClinicalFindings (example): Codes indicating why the family member history was done.


... reasonReference Σ 0..* Reference(Condition | Observation | AllergyIntolerance | QuestionnaireResponse | DiagnosticReport | DocumentReference) Why was family member history performed?
... note 0..* Annotation General note about related person
... condition S 1..* BackboneElement Condition that the related person had
.... 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
.... code S 1..1 CodeableConcept Condition suffered by relation
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.

.... outcome 0..1 CodeableConcept deceased | permanent disability | etc.
Binding: ConditionOutcomeCodes (example): The result of the condition for the patient; e.g. death, permanent disability, temporary disability, etc.

.... contributedToDeath 0..1 boolean Whether the condition contributed to the cause of death
.... onset[x] 0..1 When condition first manifested
..... onsetAge Age
..... onsetRange Range
..... onsetPeriod Period
..... onsetString string
.... note 0..* Annotation Extra information about condition

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
FamilyMemberHistory.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
FamilyMemberHistory.statusrequiredFamilyHistoryStatus
http://hl7.org/fhir/ValueSet/history-status|4.0.1
from the FHIR Standard
FamilyMemberHistory.dataAbsentReasonexampleFamilyHistoryAbsentReason
http://hl7.org/fhir/ValueSet/history-absent-reason
from the FHIR Standard
FamilyMemberHistory.relationshippreferredFirstDegreeFamilyMember .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1032.92
FamilyMemberHistory.sexextensibleAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender
from the FHIR Standard
FamilyMemberHistory.reasonCodeexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard
FamilyMemberHistory.condition.codeexampleCondition/Problem/DiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard
FamilyMemberHistory.condition.outcomeexampleConditionOutcomeCodes
http://hl7.org/fhir/ValueSet/condition-outcome
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorFamilyMemberHistoryIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorFamilyMemberHistoryIf 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-4errorFamilyMemberHistoryIf 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-5errorFamilyMemberHistoryIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceFamilyMemberHistoryA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
fhs-1errorFamilyMemberHistoryCan have age[x] or born[x], but not both
: age.empty() or born.empty()
fhs-2errorFamilyMemberHistoryCan only have estimatedAge if age[x] is present
: age.exists() or estimatedAge.empty()

This structure is derived from FamilyMemberHistory

Summary

Mandatory: 1 element
Must-Support: 3 elements

Extensions

This structure refers to these extensions:

 

Other representations of profile: CSV, Excel, Schematron