FHIR Release 3 (STU)

This page is part of the FHIR Specification (v3.0.2: STU 3). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2

9.4 Resource FamilyMemberHistory - Content

Patient Care Work GroupMaturity Level: 2 Trial UseCompartments: Patient

Significant health events and conditions for a person related to the patient relevant in the context of care for the patient.

FamilyMemberHistory is one of the event resources in the FHIR workflow specification.

This resource records significant health events and conditions for a particular individual related to the subject. This information can be known to different levels of accuracy. Sometimes the exact condition ('asthma') is known, and sometimes it is less precise ('some sort of cancer'). Equally, sometimes the person can be identified ('my aunt Agatha') and sometimes all that is known is that the person was an uncle.

This resource represents a simple structure used to capture an 'elementary' family history for a particular family member. However, it can also be the basis for capturing a more rigorous history useful for genetic and other analysis - refer to the Genetic Pedigree profile for an example.

The entire family history for an individual can be represented by combining references to FamilyMemberHistory instances into a List resource instance.

This resource is referenced by AdverseEvent and ClinicalImpression

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory IDomainResourceInformation about patient's relatives, relevant for patient
+ Can only have estimatedAge if age[x] is present
+ Not Done Reason can only be specified if NotDone is "true"
+ Can have age[x] or born[x], but not both
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierExternal Id(s) for this record
... definition Σ0..*Reference(PlanDefinition | Questionnaire)Instantiates protocol or definition
... status ?!Σ1..1codepartial | completed | entered-in-error | health-unknown
FamilyHistoryStatus (Required)
... notDone ?!Σ0..1booleanThe taking of a family member's history did not occur
... notDoneReason ΣI0..1CodeableConceptsubject-unknown | withheld | unable-to-obtain | deferred
FamilyHistoryNotDoneReason (Example)
... patient Σ1..1Reference(Patient)Patient history is about
... date Σ0..1dateTimeWhen history was captured/updated
... name Σ0..1stringThe family member described
... relationship Σ1..1CodeableConceptRelationship to the subject
FamilyMember (Example)
... gender Σ0..1codemale | female | other | unknown
AdministrativeGender (Required)
... born[x] I0..1(approximate) date of birth
.... bornPeriodPeriod
.... bornDatedate
.... bornStringstring
... age[x] ΣI0..1(approximate) age
.... ageAgeAge
.... ageRangeRange
.... ageStringstring
... estimatedAge ?!ΣI0..1booleanAge is estimated?
... deceased[x] Σ0..1Dead? How old/when?
.... deceasedBooleanboolean
.... deceasedAgeAge
.... deceasedRangeRange
.... deceasedDatedate
.... deceasedStringstring
... reasonCode Σ0..*CodeableConceptWhy was family member history performed?
SNOMED CT Clinical Findings (Example)
... reasonReference Σ0..*Reference(Condition | Observation | AllergyIntolerance | QuestionnaireResponse)Why was family member history performed?
... note 0..*AnnotationGeneral note about related person
... condition 0..*BackboneElementCondition that the related person had
.... code 1..1CodeableConceptCondition suffered by relation
Condition/Problem/Diagnosis Codes (Example)
.... outcome 0..1CodeableConceptdeceased | permanent disability | etc.
Condition Outcome Codes (Example)
.... onset[x] 0..1When condition first manifested
..... onsetAgeAge
..... onsetRangeRange
..... onsetPeriodPeriod
..... onsetStringstring
.... note 0..*AnnotationExtra information about condition

doco Documentation for this format

UML Diagram (Legend)

FamilyMemberHistory (DomainResource)This records identifiers associated with this family member history record that are defined by business processes and/ or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation)identifier : Identifier [0..*]A protocol or questionnaire that was adhered to in whole or in part by this eventdefinition : Reference [0..*] PlanDefinition|Questionnaire A code specifying the status of the record of the family history of a specific family member (this element modifies the meaning of other elements)status : code [1..1] A code that identifies the status of the family history record. (Strength=Required)FamilyHistoryStatus! If true, indicates the taking of an individual family member's history did not occur. The notDone element should not be used to document negated conditions, such as a family member that did not have a condition (this element modifies the meaning of other elements)notDone : boolean [0..1]Describes why the family member's history is absentnotDoneReason : CodeableConcept [0..1] Codes describing the reason why a family member history was not done. (Strength=Example)FamilyHistoryNotDoneReason?? The person who this history concernspatient : Reference [1..1] Patient The date (and possibly time) when the family member history was takendate : dateTime [0..1]This will either be a name or a description; e.g. "Aunt Susan", "my cousin with the red hair"name : string [0..1]The type of relationship this person has to the patient (father, mother, brother etc.)relationship : CodeableConcept [1..1] The nature of the relationship between the patient and the related person being described in the family member history. (Strength=Example)FamilyMember?? Administrative Gender - the gender that the relative is considered to have for administration and record keeping purposesgender : code [0..1] The gender of a person used for administrative purposes. (Strength=Required)AdministrativeGender! The actual or approximate date of birth of the relativeborn[x] : Type [0..1] Period|date|string The age of the relative at the time the family member history is recordedage[x] : Type [0..1] Age|Range|string If true, indicates that the age value specified is an estimated value (this element modifies the meaning of other elements)estimatedAge : boolean [0..1]Deceased flag or the actual or approximate age of the relative at the time of death for the family member history recorddeceased[x] : Type [0..1] boolean|Age|Range|date|string Describes why the family member history occurred in coded or textual formreasonCode : CodeableConcept [0..*] Codes indicating why the family member history was done. (Strength=Example)SNOMED CT Clinical Findings?? Indicates a Condition, Observation, AllergyIntolerance, or QuestionnaireResponse that justifies this family member history eventreasonReference : Reference [0..*] Condition|Observation| AllergyIntolerance|QuestionnaireResponse This property allows a non condition-specific note to the made about the related person. Ideally, the note would be in the condition property, but this is not always possiblenote : Annotation [0..*]ConditionThe actual condition specified. Could be a coded condition (like MI or Diabetes) or a less specific string like 'cancer' depending on how much is known about the condition and the capabilities of the creating systemcode : CodeableConcept [1..1] Identification of the Condition or diagnosis. (Strength=Example)Condition/Problem/Diagnosis ?? Indicates what happened as a result of this condition. If the condition resulted in death, deceased date is captured on the relationoutcome : CodeableConcept [0..1] The result of the condition for the patient; e.g. death, permanent disability, temporary disability, etc. (Strength=Example)Condition Outcome ?? Either the age of onset, range of approximate age or descriptive string can be recorded. For conditions with multiple occurrences, this describes the first known occurrenceonset[x] : Type [0..1] Age|Range|Period|string An area where general notes can be placed about this specific conditionnote : Annotation [0..*]The significant Conditions (or condition) that the family member had. This is a repeating section to allow a system to represent more than one condition per resource, though there is nothing stopping multiple resources - one per conditioncondition[0..*]

XML Template

<FamilyMemberHistory xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External Id(s) for this record --></identifier>
 <definition><!-- 0..* Reference(PlanDefinition|Questionnaire) Instantiates protocol or definition --></definition>
 <status value="[code]"/><!-- 1..1 partial | completed | entered-in-error | health-unknown -->
 <notDone value="[boolean]"/><!-- 0..1 The taking of a family member's history did not occur -->
 <notDoneReason><!-- ?? 0..1 CodeableConcept subject-unknown | withheld | unable-to-obtain | deferred --></notDoneReason>
 <patient><!-- 1..1 Reference(Patient) Patient history is about --></patient>
 <date value="[dateTime]"/><!-- 0..1 When history was captured/updated -->
 <name value="[string]"/><!-- 0..1 The family member described -->
 <relationship><!-- 1..1 CodeableConcept Relationship to the subject --></relationship>
 <gender value="[code]"/><!-- 0..1 male | female | other | unknown -->
 <born[x]><!-- ?? 0..1 Period|date|string (approximate) date of birth --></born[x]>
 <age[x]><!-- ?? 0..1 Age|Range|string (approximate) age --></age[x]>
 <estimatedAge value="[boolean]"/><!-- ?? 0..1 Age is estimated? -->
 <deceased[x]><!-- 0..1 boolean|Age|Range|date|string Dead? How old/when? --></deceased[x]>
 <reasonCode><!-- 0..* CodeableConcept Why was family member history performed? --></reasonCode>
 <reasonReference><!-- 0..* Reference(Condition|Observation|AllergyIntolerance|
   QuestionnaireResponse) Why was family member history performed? --></reasonReference>
 <note><!-- 0..* Annotation General note about related person --></note>
 <condition>  <!-- 0..* Condition that the related person had -->
  <code><!-- 1..1 CodeableConcept Condition suffered by relation --></code>
  <outcome><!-- 0..1 CodeableConcept deceased | permanent disability | etc. --></outcome>
  <onset[x]><!-- 0..1 Age|Range|Period|string When condition first manifested --></onset[x]>
  <note><!-- 0..* Annotation Extra information about condition --></note>
 </condition>
</FamilyMemberHistory>

JSON Template

{doco
  "resourceType" : "FamilyMemberHistory",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External Id(s) for this record
  "definition" : [{ Reference(PlanDefinition|Questionnaire) }], // Instantiates protocol or definition
  "status" : "<code>", // R!  partial | completed | entered-in-error | health-unknown
  "notDone" : <boolean>, // The taking of a family member's history did not occur
  "notDoneReason" : { CodeableConcept }, // C? subject-unknown | withheld | unable-to-obtain | deferred
  "patient" : { Reference(Patient) }, // R!  Patient history is about
  "date" : "<dateTime>", // When history was captured/updated
  "name" : "<string>", // The family member described
  "relationship" : { CodeableConcept }, // R!  Relationship to the subject
  "gender" : "<code>", // male | female | other | unknown
  // born[x]: (approximate) date of birth. One of these 3:
  "bornPeriod" : { Period },
  "bornDate" : "<date>",
  "bornString" : "<string>",
  // age[x]: (approximate) age. One of these 3:
  "ageAge" : { Age },
  "ageRange" : { Range },
  "ageString" : "<string>",
  "estimatedAge" : <boolean>, // C? Age is estimated?
  // deceased[x]: Dead? How old/when?. One of these 5:
  "deceasedBoolean" : <boolean>,
  "deceasedAge" : { Age },
  "deceasedRange" : { Range },
  "deceasedDate" : "<date>",
  "deceasedString" : "<string>",
  "reasonCode" : [{ CodeableConcept }], // Why was family member history performed?
  "reasonReference" : [{ Reference(Condition|Observation|AllergyIntolerance|
   QuestionnaireResponse) }], // Why was family member history performed?
  "note" : [{ Annotation }], // General note about related person
  "condition" : [{ // Condition that the related person had
    "code" : { CodeableConcept }, // R!  Condition suffered by relation
    "outcome" : { CodeableConcept }, // deceased | permanent disability | etc.
    // onset[x]: When condition first manifested. One of these 4:
    "onsetAge" : { Age },
    "onsetRange" : { Range },
    "onsetPeriod" : { Period },
    "onsetString" : "<string>",
    "note" : [{ Annotation }] // Extra information about condition
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:FamilyMemberHistory;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:FamilyMemberHistory.identifier [ Identifier ], ... ; # 0..* External Id(s) for this record
  fhir:FamilyMemberHistory.definition [ Reference(PlanDefinition|Questionnaire) ], ... ; # 0..* Instantiates protocol or definition
  fhir:FamilyMemberHistory.status [ code ]; # 1..1 partial | completed | entered-in-error | health-unknown
  fhir:FamilyMemberHistory.notDone [ boolean ]; # 0..1 The taking of a family member's history did not occur
  fhir:FamilyMemberHistory.notDoneReason [ CodeableConcept ]; # 0..1 subject-unknown | withheld | unable-to-obtain | deferred
  fhir:FamilyMemberHistory.patient [ Reference(Patient) ]; # 1..1 Patient history is about
  fhir:FamilyMemberHistory.date [ dateTime ]; # 0..1 When history was captured/updated
  fhir:FamilyMemberHistory.name [ string ]; # 0..1 The family member described
  fhir:FamilyMemberHistory.relationship [ CodeableConcept ]; # 1..1 Relationship to the subject
  fhir:FamilyMemberHistory.gender [ code ]; # 0..1 male | female | other | unknown
  # FamilyMemberHistory.born[x] : 0..1 (approximate) date of birth. One of these 3
    fhir:FamilyMemberHistory.bornPeriod [ Period ]
    fhir:FamilyMemberHistory.bornDate [ date ]
    fhir:FamilyMemberHistory.bornString [ string ]
  # FamilyMemberHistory.age[x] : 0..1 (approximate) age. One of these 3
    fhir:FamilyMemberHistory.ageAge [ Age ]
    fhir:FamilyMemberHistory.ageRange [ Range ]
    fhir:FamilyMemberHistory.ageString [ string ]
  fhir:FamilyMemberHistory.estimatedAge [ boolean ]; # 0..1 Age is estimated?
  # FamilyMemberHistory.deceased[x] : 0..1 Dead? How old/when?. One of these 5
    fhir:FamilyMemberHistory.deceasedBoolean [ boolean ]
    fhir:FamilyMemberHistory.deceasedAge [ Age ]
    fhir:FamilyMemberHistory.deceasedRange [ Range ]
    fhir:FamilyMemberHistory.deceasedDate [ date ]
    fhir:FamilyMemberHistory.deceasedString [ string ]
  fhir:FamilyMemberHistory.reasonCode [ CodeableConcept ], ... ; # 0..* Why was family member history performed?
  fhir:FamilyMemberHistory.reasonReference [ Reference(Condition|Observation|AllergyIntolerance|QuestionnaireResponse) ], ... ; # 0..* Why was family member history performed?
  fhir:FamilyMemberHistory.note [ Annotation ], ... ; # 0..* General note about related person
  fhir:FamilyMemberHistory.condition [ # 0..* Condition that the related person had
    fhir:FamilyMemberHistory.condition.code [ CodeableConcept ]; # 1..1 Condition suffered by relation
    fhir:FamilyMemberHistory.condition.outcome [ CodeableConcept ]; # 0..1 deceased | permanent disability | etc.
    # FamilyMemberHistory.condition.onset[x] : 0..1 When condition first manifested. One of these 4
      fhir:FamilyMemberHistory.condition.onsetAge [ Age ]
      fhir:FamilyMemberHistory.condition.onsetRange [ Range ]
      fhir:FamilyMemberHistory.condition.onsetPeriod [ Period ]
      fhir:FamilyMemberHistory.condition.onsetString [ string ]
    fhir:FamilyMemberHistory.condition.note [ Annotation ], ... ; # 0..* Extra information about condition
  ], ...;
]

Changes since DSTU2

FamilyMemberHistory
FamilyMemberHistory.definition
  • Added Element
FamilyMemberHistory.notDone
  • Added Element
FamilyMemberHistory.notDoneReason
  • Added Element
FamilyMemberHistory.age[x]
  • Remove Quantity{http://hl7.org/fhir/StructureDefinition/Age}, Add Age
FamilyMemberHistory.estimatedAge
  • Added Element
FamilyMemberHistory.deceased[x]
  • Remove Quantity{http://hl7.org/fhir/StructureDefinition/Age}, Add Age
FamilyMemberHistory.reasonCode
  • Added Element
FamilyMemberHistory.reasonReference
  • Added Element
FamilyMemberHistory.note
  • Max Cardinality changed from 1 to *
FamilyMemberHistory.condition.onset[x]
  • Remove Quantity{http://hl7.org/fhir/StructureDefinition/Age}, Add Age
FamilyMemberHistory.condition.note
  • Max Cardinality changed from 1 to *

See the Full Difference for further information

This analysis is available as XML or JSON.

See R2 <--> R3 Conversion Maps (status = 3 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.).

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory IDomainResourceInformation about patient's relatives, relevant for patient
+ Can only have estimatedAge if age[x] is present
+ Not Done Reason can only be specified if NotDone is "true"
+ Can have age[x] or born[x], but not both
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierExternal Id(s) for this record
... definition Σ0..*Reference(PlanDefinition | Questionnaire)Instantiates protocol or definition
... status ?!Σ1..1codepartial | completed | entered-in-error | health-unknown
FamilyHistoryStatus (Required)
... notDone ?!Σ0..1booleanThe taking of a family member's history did not occur
... notDoneReason ΣI0..1CodeableConceptsubject-unknown | withheld | unable-to-obtain | deferred
FamilyHistoryNotDoneReason (Example)
... patient Σ1..1Reference(Patient)Patient history is about
... date Σ0..1dateTimeWhen history was captured/updated
... name Σ0..1stringThe family member described
... relationship Σ1..1CodeableConceptRelationship to the subject
FamilyMember (Example)
... gender Σ0..1codemale | female | other | unknown
AdministrativeGender (Required)
... born[x] I0..1(approximate) date of birth
.... bornPeriodPeriod
.... bornDatedate
.... bornStringstring
... age[x] ΣI0..1(approximate) age
.... ageAgeAge
.... ageRangeRange
.... ageStringstring
... estimatedAge ?!ΣI0..1booleanAge is estimated?
... deceased[x] Σ0..1Dead? How old/when?
.... deceasedBooleanboolean
.... deceasedAgeAge
.... deceasedRangeRange
.... deceasedDatedate
.... deceasedStringstring
... reasonCode Σ0..*CodeableConceptWhy was family member history performed?
SNOMED CT Clinical Findings (Example)
... reasonReference Σ0..*Reference(Condition | Observation | AllergyIntolerance | QuestionnaireResponse)Why was family member history performed?
... note 0..*AnnotationGeneral note about related person
... condition 0..*BackboneElementCondition that the related person had
.... code 1..1CodeableConceptCondition suffered by relation
Condition/Problem/Diagnosis Codes (Example)
.... outcome 0..1CodeableConceptdeceased | permanent disability | etc.
Condition Outcome Codes (Example)
.... onset[x] 0..1When condition first manifested
..... onsetAgeAge
..... onsetRangeRange
..... onsetPeriodPeriod
..... onsetStringstring
.... note 0..*AnnotationExtra information about condition

doco Documentation for this format

UML Diagram (Legend)

FamilyMemberHistory (DomainResource)This records identifiers associated with this family member history record that are defined by business processes and/ or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation)identifier : Identifier [0..*]A protocol or questionnaire that was adhered to in whole or in part by this eventdefinition : Reference [0..*] PlanDefinition|Questionnaire A code specifying the status of the record of the family history of a specific family member (this element modifies the meaning of other elements)status : code [1..1] A code that identifies the status of the family history record. (Strength=Required)FamilyHistoryStatus! If true, indicates the taking of an individual family member's history did not occur. The notDone element should not be used to document negated conditions, such as a family member that did not have a condition (this element modifies the meaning of other elements)notDone : boolean [0..1]Describes why the family member's history is absentnotDoneReason : CodeableConcept [0..1] Codes describing the reason why a family member history was not done. (Strength=Example)FamilyHistoryNotDoneReason?? The person who this history concernspatient : Reference [1..1] Patient The date (and possibly time) when the family member history was takendate : dateTime [0..1]This will either be a name or a description; e.g. "Aunt Susan", "my cousin with the red hair"name : string [0..1]The type of relationship this person has to the patient (father, mother, brother etc.)relationship : CodeableConcept [1..1] The nature of the relationship between the patient and the related person being described in the family member history. (Strength=Example)FamilyMember?? Administrative Gender - the gender that the relative is considered to have for administration and record keeping purposesgender : code [0..1] The gender of a person used for administrative purposes. (Strength=Required)AdministrativeGender! The actual or approximate date of birth of the relativeborn[x] : Type [0..1] Period|date|string The age of the relative at the time the family member history is recordedage[x] : Type [0..1] Age|Range|string If true, indicates that the age value specified is an estimated value (this element modifies the meaning of other elements)estimatedAge : boolean [0..1]Deceased flag or the actual or approximate age of the relative at the time of death for the family member history recorddeceased[x] : Type [0..1] boolean|Age|Range|date|string Describes why the family member history occurred in coded or textual formreasonCode : CodeableConcept [0..*] Codes indicating why the family member history was done. (Strength=Example)SNOMED CT Clinical Findings?? Indicates a Condition, Observation, AllergyIntolerance, or QuestionnaireResponse that justifies this family member history eventreasonReference : Reference [0..*] Condition|Observation| AllergyIntolerance|QuestionnaireResponse This property allows a non condition-specific note to the made about the related person. Ideally, the note would be in the condition property, but this is not always possiblenote : Annotation [0..*]ConditionThe actual condition specified. Could be a coded condition (like MI or Diabetes) or a less specific string like 'cancer' depending on how much is known about the condition and the capabilities of the creating systemcode : CodeableConcept [1..1] Identification of the Condition or diagnosis. (Strength=Example)Condition/Problem/Diagnosis ?? Indicates what happened as a result of this condition. If the condition resulted in death, deceased date is captured on the relationoutcome : CodeableConcept [0..1] The result of the condition for the patient; e.g. death, permanent disability, temporary disability, etc. (Strength=Example)Condition Outcome ?? Either the age of onset, range of approximate age or descriptive string can be recorded. For conditions with multiple occurrences, this describes the first known occurrenceonset[x] : Type [0..1] Age|Range|Period|string An area where general notes can be placed about this specific conditionnote : Annotation [0..*]The significant Conditions (or condition) that the family member had. This is a repeating section to allow a system to represent more than one condition per resource, though there is nothing stopping multiple resources - one per conditioncondition[0..*]

XML Template

<FamilyMemberHistory xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External Id(s) for this record --></identifier>
 <definition><!-- 0..* Reference(PlanDefinition|Questionnaire) Instantiates protocol or definition --></definition>
 <status value="[code]"/><!-- 1..1 partial | completed | entered-in-error | health-unknown -->
 <notDone value="[boolean]"/><!-- 0..1 The taking of a family member's history did not occur -->
 <notDoneReason><!-- ?? 0..1 CodeableConcept subject-unknown | withheld | unable-to-obtain | deferred --></notDoneReason>
 <patient><!-- 1..1 Reference(Patient) Patient history is about --></patient>
 <date value="[dateTime]"/><!-- 0..1 When history was captured/updated -->
 <name value="[string]"/><!-- 0..1 The family member described -->
 <relationship><!-- 1..1 CodeableConcept Relationship to the subject --></relationship>
 <gender value="[code]"/><!-- 0..1 male | female | other | unknown -->
 <born[x]><!-- ?? 0..1 Period|date|string (approximate) date of birth --></born[x]>
 <age[x]><!-- ?? 0..1 Age|Range|string (approximate) age --></age[x]>
 <estimatedAge value="[boolean]"/><!-- ?? 0..1 Age is estimated? -->
 <deceased[x]><!-- 0..1 boolean|Age|Range|date|string Dead? How old/when? --></deceased[x]>
 <reasonCode><!-- 0..* CodeableConcept Why was family member history performed? --></reasonCode>
 <reasonReference><!-- 0..* Reference(Condition|Observation|AllergyIntolerance|
   QuestionnaireResponse) Why was family member history performed? --></reasonReference>
 <note><!-- 0..* Annotation General note about related person --></note>
 <condition>  <!-- 0..* Condition that the related person had -->
  <code><!-- 1..1 CodeableConcept Condition suffered by relation --></code>
  <outcome><!-- 0..1 CodeableConcept deceased | permanent disability | etc. --></outcome>
  <onset[x]><!-- 0..1 Age|Range|Period|string When condition first manifested --></onset[x]>
  <note><!-- 0..* Annotation Extra information about condition --></note>
 </condition>
</FamilyMemberHistory>

JSON Template

{doco
  "resourceType" : "FamilyMemberHistory",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External Id(s) for this record
  "definition" : [{ Reference(PlanDefinition|Questionnaire) }], // Instantiates protocol or definition
  "status" : "<code>", // R!  partial | completed | entered-in-error | health-unknown
  "notDone" : <boolean>, // The taking of a family member's history did not occur
  "notDoneReason" : { CodeableConcept }, // C? subject-unknown | withheld | unable-to-obtain | deferred
  "patient" : { Reference(Patient) }, // R!  Patient history is about
  "date" : "<dateTime>", // When history was captured/updated
  "name" : "<string>", // The family member described
  "relationship" : { CodeableConcept }, // R!  Relationship to the subject
  "gender" : "<code>", // male | female | other | unknown
  // born[x]: (approximate) date of birth. One of these 3:
  "bornPeriod" : { Period },
  "bornDate" : "<date>",
  "bornString" : "<string>",
  // age[x]: (approximate) age. One of these 3:
  "ageAge" : { Age },
  "ageRange" : { Range },
  "ageString" : "<string>",
  "estimatedAge" : <boolean>, // C? Age is estimated?
  // deceased[x]: Dead? How old/when?. One of these 5:
  "deceasedBoolean" : <boolean>,
  "deceasedAge" : { Age },
  "deceasedRange" : { Range },
  "deceasedDate" : "<date>",
  "deceasedString" : "<string>",
  "reasonCode" : [{ CodeableConcept }], // Why was family member history performed?
  "reasonReference" : [{ Reference(Condition|Observation|AllergyIntolerance|
   QuestionnaireResponse) }], // Why was family member history performed?
  "note" : [{ Annotation }], // General note about related person
  "condition" : [{ // Condition that the related person had
    "code" : { CodeableConcept }, // R!  Condition suffered by relation
    "outcome" : { CodeableConcept }, // deceased | permanent disability | etc.
    // onset[x]: When condition first manifested. One of these 4:
    "onsetAge" : { Age },
    "onsetRange" : { Range },
    "onsetPeriod" : { Period },
    "onsetString" : "<string>",
    "note" : [{ Annotation }] // Extra information about condition
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:FamilyMemberHistory;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:FamilyMemberHistory.identifier [ Identifier ], ... ; # 0..* External Id(s) for this record
  fhir:FamilyMemberHistory.definition [ Reference(PlanDefinition|Questionnaire) ], ... ; # 0..* Instantiates protocol or definition
  fhir:FamilyMemberHistory.status [ code ]; # 1..1 partial | completed | entered-in-error | health-unknown
  fhir:FamilyMemberHistory.notDone [ boolean ]; # 0..1 The taking of a family member's history did not occur
  fhir:FamilyMemberHistory.notDoneReason [ CodeableConcept ]; # 0..1 subject-unknown | withheld | unable-to-obtain | deferred
  fhir:FamilyMemberHistory.patient [ Reference(Patient) ]; # 1..1 Patient history is about
  fhir:FamilyMemberHistory.date [ dateTime ]; # 0..1 When history was captured/updated
  fhir:FamilyMemberHistory.name [ string ]; # 0..1 The family member described
  fhir:FamilyMemberHistory.relationship [ CodeableConcept ]; # 1..1 Relationship to the subject
  fhir:FamilyMemberHistory.gender [ code ]; # 0..1 male | female | other | unknown
  # FamilyMemberHistory.born[x] : 0..1 (approximate) date of birth. One of these 3
    fhir:FamilyMemberHistory.bornPeriod [ Period ]
    fhir:FamilyMemberHistory.bornDate [ date ]
    fhir:FamilyMemberHistory.bornString [ string ]
  # FamilyMemberHistory.age[x] : 0..1 (approximate) age. One of these 3
    fhir:FamilyMemberHistory.ageAge [ Age ]
    fhir:FamilyMemberHistory.ageRange [ Range ]
    fhir:FamilyMemberHistory.ageString [ string ]
  fhir:FamilyMemberHistory.estimatedAge [ boolean ]; # 0..1 Age is estimated?
  # FamilyMemberHistory.deceased[x] : 0..1 Dead? How old/when?. One of these 5
    fhir:FamilyMemberHistory.deceasedBoolean [ boolean ]
    fhir:FamilyMemberHistory.deceasedAge [ Age ]
    fhir:FamilyMemberHistory.deceasedRange [ Range ]
    fhir:FamilyMemberHistory.deceasedDate [ date ]
    fhir:FamilyMemberHistory.deceasedString [ string ]
  fhir:FamilyMemberHistory.reasonCode [ CodeableConcept ], ... ; # 0..* Why was family member history performed?
  fhir:FamilyMemberHistory.reasonReference [ Reference(Condition|Observation|AllergyIntolerance|QuestionnaireResponse) ], ... ; # 0..* Why was family member history performed?
  fhir:FamilyMemberHistory.note [ Annotation ], ... ; # 0..* General note about related person
  fhir:FamilyMemberHistory.condition [ # 0..* Condition that the related person had
    fhir:FamilyMemberHistory.condition.code [ CodeableConcept ]; # 1..1 Condition suffered by relation
    fhir:FamilyMemberHistory.condition.outcome [ CodeableConcept ]; # 0..1 deceased | permanent disability | etc.
    # FamilyMemberHistory.condition.onset[x] : 0..1 When condition first manifested. One of these 4
      fhir:FamilyMemberHistory.condition.onsetAge [ Age ]
      fhir:FamilyMemberHistory.condition.onsetRange [ Range ]
      fhir:FamilyMemberHistory.condition.onsetPeriod [ Period ]
      fhir:FamilyMemberHistory.condition.onsetString [ string ]
    fhir:FamilyMemberHistory.condition.note [ Annotation ], ... ; # 0..* Extra information about condition
  ], ...;
]

Changes since DSTU2

FamilyMemberHistory
FamilyMemberHistory.definition
  • Added Element
FamilyMemberHistory.notDone
  • Added Element
FamilyMemberHistory.notDoneReason
  • Added Element
FamilyMemberHistory.age[x]
  • Remove Quantity{http://hl7.org/fhir/StructureDefinition/Age}, Add Age
FamilyMemberHistory.estimatedAge
  • Added Element
FamilyMemberHistory.deceased[x]
  • Remove Quantity{http://hl7.org/fhir/StructureDefinition/Age}, Add Age
FamilyMemberHistory.reasonCode
  • Added Element
FamilyMemberHistory.reasonReference
  • Added Element
FamilyMemberHistory.note
  • Max Cardinality changed from 1 to *
FamilyMemberHistory.condition.onset[x]
  • Remove Quantity{http://hl7.org/fhir/StructureDefinition/Age}, Add Age
FamilyMemberHistory.condition.note
  • Max Cardinality changed from 1 to *

See the Full Difference for further information

This analysis is available as XML or JSON.

See R2 <--> R3 Conversion Maps (status = 3 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.).

 

Alternate definitions: Master Definition (XML, JSON), XML Schema/Schematron (for ) + JSON Schema, ShEx (for Turtle)

PathDefinitionTypeReference
FamilyMemberHistory.status A code that identifies the status of the family history record.RequiredFamilyHistoryStatus
FamilyMemberHistory.notDoneReason Codes describing the reason why a family member history was not done.ExampleFamilyHistoryNotDoneReason
FamilyMemberHistory.relationship The nature of the relationship between the patient and the related person being described in the family member history.ExampleFamilyMember
FamilyMemberHistory.gender The gender of a person used for administrative purposes.RequiredAdministrativeGender
FamilyMemberHistory.reasonCode Codes indicating why the family member history was done.ExampleSNOMED CT Clinical Findings
FamilyMemberHistory.condition.code Identification of the Condition or diagnosis.ExampleCondition/Problem/Diagnosis Codes
FamilyMemberHistory.condition.outcome The result of the condition for the patient; e.g. death, permanent disability, temporary disability, etc.ExampleCondition Outcome Codes

  • fhs-1: Can have age[x] or born[x], but not both (expression : age.empty() or born.empty())
  • fhs-2: Can only have estimatedAge if age[x] is present (expression : age.exists() or estimatedAge.empty())
  • fhs-3: Not Done Reason can only be specified if NotDone is "true" (expression : notDone or notDoneReason.exists().not())

The Family Member History List may contain other than FamilyMemberHistory resources. For example, a full Family History could be a List that might include a mixture of FamilyMemberHistory records as well as Observation records of things like "maternal family history of breast cancer", "number of siblings", "number of female family members with breast cancer" etc.

The List representing a patient's "family history" can include Condition and Observation records that capture "family-history" relevant assertions about the patient themselves that would typically be captured as part of a family history.

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
codetokenA search by a condition codeFamilyMemberHistory.condition.code8 Resources
datedateWhen history was captured/updatedFamilyMemberHistory.date18 Resources
definitionreferenceInstantiates protocol or definitionFamilyMemberHistory.definition
(Questionnaire, PlanDefinition)
gendertokenA search by a gender code of a family memberFamilyMemberHistory.gender
identifiertokenA search by a record identifierFamilyMemberHistory.identifier26 Resources
patientreferenceThe identity of a subject to list family member history items forFamilyMemberHistory.patient
(Patient)
31 Resources
relationshiptokenA search by a relationship typeFamilyMemberHistory.relationship
statustokenpartial | completed | entered-in-error | health-unknownFamilyMemberHistory.status