HL7 Vietnam VN Core FHIR Implementation Guide

Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam
0.6.0 - Draft for Community Review Viet Nam cờ

Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam - Draft for Community Review (v0.6.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Hồ sơ tài nguyên: Tiền sử gia đình VN Core — VN Core FamilyMemberHistory Profile

URL chính thức: http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-family-member-history Phiên bản: 0.6.0
Computable Name: VNCoreFamilyMemberHistory

Bản quyền/Pháp lý: Căn cứ pháp lý Việt Nam: QĐ 1551/QĐ-BYT (2026); TT 13/2025/TT-BYT ngày 06/06/2025.

Profile FamilyMemberHistory ghi nhận tiền sử bệnh gia đình của người bệnh (bố, mẹ, anh/chị/em ruột mắc bệnh mạn tính, ung thư, bệnh di truyền…). Dùng trong khám sức khỏe định kỳ (mục tiền sử gia đình của phiếu KSK) và bệnh án điện tử. Căn cứ pháp lý:

  • QĐ 1551/QĐ-BYT (2026) — phiếu khám sức khỏe (mục tiền sử gia đình).
  • TT 13/2025/TT-BYT — bệnh án điện tử (tiền sử gia đình). / VN Core FamilyMemberHistory for family medical history captured in periodic health checkups and EMR.

Usages:

You can also check for usages in the FHIR IG Statistics

Các dạng xem hình thức của nội dung hồ sơ

Mô tả profile, differential, snapshot và các biểu diễn liên quan.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
Constraints: fhs-1, fhs-2
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code Trạng thái: partial, completed, entered-in-error, health-unknown
Binding: FamilyHistoryStatus (required): A code that identifies the status of the family history record.
... relationship SΣ 1..1 CodeableConcept Mối quan hệ với người bệnh (bố, mẹ, anh/chị/em ruột, ông/bà...)
Binding: V3 Value SetFamilyMember (example): The nature of the relationship between the patient and the related person being described in the family member history.
... sex SΣ 0..1 CodeableConcept Giới tính thành viên gia đình
Binding: AdministrativeGender (extensible): Codes describing the sex assigned at birth as documented on the birth registration.
... condition S 0..* BackboneElement Tình trạng bệnh của thành viên gia đình
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code S 1..1 CodeableConcept Bệnh của thành viên gia đình (mã ICD-10 VN hoặc text)
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
FamilyMemberHistory.​status Base required FamilyHistoryStatus 📍4.0.1 FHIR Std.
FamilyMemberHistory.​relationship Base example V3 Value SetFamilyMember 📦2014-03-26 FHIR Std.
FamilyMemberHistory.​sex Base extensible AdministrativeGender 📍4.0.1 FHIR Std.
FamilyMemberHistory.​condition.code Base example Condition/Problem/Diagnosis Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error FamilyMemberHistory If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error FamilyMemberHistory 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 FamilyMemberHistory 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 FamilyMemberHistory If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice FamilyMemberHistory 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()
fhs-1 error FamilyMemberHistory Can have age[x] or born[x], but not both age.empty() or born.empty()
fhs-2 error FamilyMemberHistory Can only have estimatedAge if age[x] is present age.exists() or estimatedAge.empty()

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. FamilyMemberHistory 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
... status S 1..1 code Trạng thái: partial, completed, entered-in-error, health-unknown
... patient S 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Người bệnh có tiền sử gia đình này
... relationship S 1..1 CodeableConcept Mối quan hệ với người bệnh (bố, mẹ, anh/chị/em ruột, ông/bà...)
... condition S 0..* BackboneElement Tình trạng bệnh của thành viên gia đình
.... code S 1..1 CodeableConcept Bệnh của thành viên gia đình (mã ICD-10 VN hoặc text)

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
Constraints: fhs-1, fhs-2
... 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
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 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 ?!SΣ 1..1 code Trạng thái: 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 SΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Người bệnh có tiền sử gia đình này
... date Σ 0..1 dateTime When history was recorded or last updated
... name Σ 0..1 string The family member described
... relationship SΣ 1..1 CodeableConcept Mối quan hệ với người bệnh (bố, mẹ, anh/chị/em ruột, ông/bà...)
Binding: V3 Value SetFamilyMember (example): The nature of the relationship between the patient and the related person being described in the family member history.
... sex SΣ 0..1 CodeableConcept Giới tính thành viên gia đình
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 0..* BackboneElement Tình trạng bệnh của thành viên gia đình
.... 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 Bệnh của thành viên gia đình (mã ICD-10 VN hoặc text)
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

Path Status Usage ValueSet Version Source
FamilyMemberHistory.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
FamilyMemberHistory.​status Base required FamilyHistoryStatus 📍4.0.1 FHIR Std.
FamilyMemberHistory.​dataAbsentReason Base example FamilyHistoryAbsentReason 📍4.0.1 FHIR Std.
FamilyMemberHistory.​relationship Base example V3 Value SetFamilyMember 📦2014-03-26 FHIR Std.
FamilyMemberHistory.​sex Base extensible AdministrativeGender 📍4.0.1 FHIR Std.
FamilyMemberHistory.​reasonCode Base example SNOMED CT Clinical Findings 📍4.0.1 FHIR Std.
FamilyMemberHistory.​condition.code Base example Condition/Problem/Diagnosis Codes 📍4.0.1 FHIR Std.
FamilyMemberHistory.​condition.outcome Base example Condition Outcome Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error FamilyMemberHistory If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error FamilyMemberHistory 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 FamilyMemberHistory 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 FamilyMemberHistory If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice FamilyMemberHistory 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()
fhs-1 error FamilyMemberHistory Can have age[x] or born[x], but not both age.empty() or born.empty()
fhs-2 error FamilyMemberHistory Can only have estimatedAge if age[x] is present age.exists() or estimatedAge.empty()

Summary

Must-Support: 6 elements

Structures

This structure refers to these other structures:

Dạng xem phần tử chính

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
Constraints: fhs-1, fhs-2
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code Trạng thái: partial, completed, entered-in-error, health-unknown
Binding: FamilyHistoryStatus (required): A code that identifies the status of the family history record.
... relationship SΣ 1..1 CodeableConcept Mối quan hệ với người bệnh (bố, mẹ, anh/chị/em ruột, ông/bà...)
Binding: V3 Value SetFamilyMember (example): The nature of the relationship between the patient and the related person being described in the family member history.
... sex SΣ 0..1 CodeableConcept Giới tính thành viên gia đình
Binding: AdministrativeGender (extensible): Codes describing the sex assigned at birth as documented on the birth registration.
... condition S 0..* BackboneElement Tình trạng bệnh của thành viên gia đình
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code S 1..1 CodeableConcept Bệnh của thành viên gia đình (mã ICD-10 VN hoặc text)
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
FamilyMemberHistory.​status Base required FamilyHistoryStatus 📍4.0.1 FHIR Std.
FamilyMemberHistory.​relationship Base example V3 Value SetFamilyMember 📦2014-03-26 FHIR Std.
FamilyMemberHistory.​sex Base extensible AdministrativeGender 📍4.0.1 FHIR Std.
FamilyMemberHistory.​condition.code Base example Condition/Problem/Diagnosis Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error FamilyMemberHistory If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error FamilyMemberHistory 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 FamilyMemberHistory 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 FamilyMemberHistory If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice FamilyMemberHistory 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()
fhs-1 error FamilyMemberHistory Can have age[x] or born[x], but not both age.empty() or born.empty()
fhs-2 error FamilyMemberHistory Can only have estimatedAge if age[x] is present age.exists() or estimatedAge.empty()

Dạng xem Differential

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. FamilyMemberHistory 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
... status S 1..1 code Trạng thái: partial, completed, entered-in-error, health-unknown
... patient S 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Người bệnh có tiền sử gia đình này
... relationship S 1..1 CodeableConcept Mối quan hệ với người bệnh (bố, mẹ, anh/chị/em ruột, ông/bà...)
... condition S 0..* BackboneElement Tình trạng bệnh của thành viên gia đình
.... code S 1..1 CodeableConcept Bệnh của thành viên gia đình (mã ICD-10 VN hoặc text)

doco Documentation for this format

Dạng xem SnapshotView

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
Constraints: fhs-1, fhs-2
... 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
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 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 ?!SΣ 1..1 code Trạng thái: 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 SΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Người bệnh có tiền sử gia đình này
... date Σ 0..1 dateTime When history was recorded or last updated
... name Σ 0..1 string The family member described
... relationship SΣ 1..1 CodeableConcept Mối quan hệ với người bệnh (bố, mẹ, anh/chị/em ruột, ông/bà...)
Binding: V3 Value SetFamilyMember (example): The nature of the relationship between the patient and the related person being described in the family member history.
... sex SΣ 0..1 CodeableConcept Giới tính thành viên gia đình
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 0..* BackboneElement Tình trạng bệnh của thành viên gia đình
.... 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 Bệnh của thành viên gia đình (mã ICD-10 VN hoặc text)
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

Path Status Usage ValueSet Version Source
FamilyMemberHistory.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
FamilyMemberHistory.​status Base required FamilyHistoryStatus 📍4.0.1 FHIR Std.
FamilyMemberHistory.​dataAbsentReason Base example FamilyHistoryAbsentReason 📍4.0.1 FHIR Std.
FamilyMemberHistory.​relationship Base example V3 Value SetFamilyMember 📦2014-03-26 FHIR Std.
FamilyMemberHistory.​sex Base extensible AdministrativeGender 📍4.0.1 FHIR Std.
FamilyMemberHistory.​reasonCode Base example SNOMED CT Clinical Findings 📍4.0.1 FHIR Std.
FamilyMemberHistory.​condition.code Base example Condition/Problem/Diagnosis Codes 📍4.0.1 FHIR Std.
FamilyMemberHistory.​condition.outcome Base example Condition Outcome Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error FamilyMemberHistory If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error FamilyMemberHistory 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 FamilyMemberHistory 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 FamilyMemberHistory If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice FamilyMemberHistory 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()
fhs-1 error FamilyMemberHistory Can have age[x] or born[x], but not both age.empty() or born.empty()
fhs-2 error FamilyMemberHistory Can only have estimatedAge if age[x] is present age.exists() or estimatedAge.empty()

Summary

Must-Support: 6 elements

Structures

This structure refers to these other structures:

 

Biểu diễn khác của hồ sơ: CSV, Excel, Schematron