QI-Core Implementation Guide
7.0.0 - STU7 United States of America flag

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 7.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-qi-core/ and changes regularly. See the Directory of published versions

Resource Profile: QICore FamilyMemberHistory

Official URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-familymemberhistory Version: 7.0.0
Active as of 2018-08-22 Computable Name: QICoreFamilyMemberHistory

Profile of Family Member History 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.
QI Elements:
  • patient: (QI) Patient history is about
  • date: (QI) When history was recorded or last updated
  • relationship: (QI) Relationship to the subject
  • age[x]: (QI) (approximate) age
  • deceased[x]: (QI) Dead? How old/when?
  • condition.code: (QI) Condition suffered by relation
Primary code path: type
(PCPath) This element is the primary code path for this resource CQL Retrieve


NOTE TO BALLOT REVIEWERS:
  • US Core 7.0, and thus QI-Core 7.0, has a new approach to USCDI requirements.
    • As noted in the US Core 7.0 Must Support section, US Core 7.0 no longer highlights mandatory (cardinality 1..* or 1..1) and Must Support elements with a (USCDI) indicator as such items must be supported for interoperability.
    • Those USCDI elements that are not mandatory or Must Support now include an indicator (ADDITIONAL USCDI) in US Core. QI-Core 7.0 does not reference USCDI elements; rather, users should access US Core 7.0 to understand its implementation of USCDI version 4.
  • We invite comments about the approach and suggestions for other options that would also avoid unnecessary noise or reading load to the QI-Core profile representation.
  • Further, QI-Core 7.0 does not discuss USCDI+Quality because at the time of ballot preparation, no published version of USCDI+Quality is available. We seek reviewer advice regarding how QI-Core might address future USCDI+Quality.

Usage

See the patterns page for implementation and usage patterns.

Examples

Father Died of Heart Attack Example

Usage:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: 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
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
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
ele-1: All FHIR elements must have a @value or children
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... 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.


ele-1: All FHIR elements must have a @value or children
... date Σ 0..1 dateTime (QI) When history was recorded or last updated
ele-1: All FHIR elements must have a @value or children
... relationship Σ 1..1 CodeableConcept (QI) Relationship to the subject
Binding: FamilyMember (preferred)
ele-1: All FHIR elements must have a @value or children
... age[x] ΣC 0..1 (QI) (approximate) age
ele-1: All FHIR elements must have a @value or children
.... ageAge Age
.... ageRange Range
.... ageString string
... deceased[x] Σ 0..1 (QI) Dead? How old/when?
ele-1: All FHIR elements must have a @value or children
.... deceasedBoolean boolean
.... deceasedAge Age
.... deceasedRange Range
.... deceasedDate date
.... deceasedString string
... condition 0..* BackboneElement Condition that the related person had
ele-1: All FHIR elements must have a @value or children
.... Slices for extension Content/Rules for all slices
..... condition-abatement 0..1 date, Age, boolean When (or if) the family member's condition resolved
URL: http://hl7.org/fhir/StructureDefinition/familymemberhistory-abatement
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... condition-severity 0..1 CodeableConcept The seriousness of the family member condition
URL: http://hl7.org/fhir/StructureDefinition/familymemberhistory-severity
Binding: Condition/DiagnosisSeverity (example): A subjective assessment of the severity of the condition as evaluated by the clinician.


ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... code 1..1 CodeableConcept (QI) Condition suffered by relation
Binding: Condition/Problem/DiagnosisCodes (extensible): Identification of the Condition or diagnosis.


ele-1: All FHIR elements must have a @value or children
.... onset[x] 0..1 When condition first manifested
ele-1: All FHIR elements must have a @value or children
..... onsetAge Age
..... onsetRange Range
..... onsetPeriod Period
..... onsetString string

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.relationshippreferredFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.condition.codeextensibleCondition/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()

 

Other representations of profile: CSV, Excel, Schematron