HL7 Vietnam VN Core FHIR Implementation Guide

Hướng dẫn triển khai FHIR cốt lõi Việt Nam — VN Core FHIR Implementation Guide
0.10.0 - Draft for Community Review Viet Nam cờ

Hướng dẫn triển khai FHIR cốt lõi Việt Nam — VN Core FHIR Implementation Guide - Draft for Community Review (v0.10.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Mô hình logic: Nội dung bắt buộc của báo cáo sự cố y khoa (TT 43/2018/TT-BYT) — Logical Model - Mô tả chi tiết

Draft tại thời điểm 2026-09-22

Các định nghĩa cho vnPatientSafetyIncidentReportLm mô hình logic

Guidance on how to interpret the contents of this table can be foundhere

0. vnPatientSafetyIncidentReportLm
Definition

Logical model đặc tả nội dung mà Thông tư 43/2018/TT-BYT (ban hành 31/12/2018) BUỘC phải có trong báo cáo sự cố y khoa — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile sự cố an toàn người bệnh.

Điều 5 khoản 3 điểm a, phần báo cáo tự nguyện, nêu nguyên văn: 'Nội dung báo cáo tối thiểu cần có: Địa điểm, thời điểm xảy ra và mô tả, đánh giá sơ bộ về sự cố, tình trạng của người bị ảnh hưởng, biện pháp xử lý ban đầu theo Mẫu Báo cáo sự cố y khoa quy định tại Phụ lục III ban hành kèm theo Thông tư này.'

Cùng điểm a, phần báo cáo bắt buộc, đặt ngưỡng cao hơn: 'Nội dung báo cáo phải đầy đủ tất cả các thông tin có trên Mẫu Báo cáo sự cố y khoa quy định tại Phụ lục III và ghi rõ họ tên người báo cáo.' Ngưỡng ấy dẫn sang mẫu ở phụ lục nên chưa khai được thành trường; model dừng ở danh sách tối thiểu mà văn bản liệt kê tường minh.

Chuỗi báo cáo của mức bắt buộc cũng khác: người gây ra hoặc phát hiện sự cố báo cho trưởng khoa và bộ phận quản lý sự cố; trưởng khoa báo cho lãnh đạo cơ sở; lãnh đạo cơ sở báo NGAY cho cơ quan quản lý. Ba chặng ấy là quy trình, không sinh trường dữ liệu nào ngoài danh tính người báo cáo. / Logical model for the patient safety incident report content required by Circular 43/2018/TT-BYT.

ShortNội dung bắt buộc của báo cáo sự cố y khoa (TT 43/2018/TT-BYT) — Logical Model
Control0..*
Is Modifierfalse
Logical ModelInstances of this logical model are not marked to be the target of a Reference
2. vnPatientSafetyIncidentReportLm.baoCaoSuCo
Definition

Báo cáo một sự cố y khoa

ShortBáo cáo một sự cố y khoa
Control1..1
TypeBackboneElement
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
4. vnPatientSafetyIncidentReportLm.baoCaoSuCo.id
Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

ShortUnique id for inter-element referencing
Control0..1
Typestring
Is Modifierfalse
XML FormatIn the XML format, this property is represented as an attribute.
Summaryfalse
6. vnPatientSafetyIncidentReportLm.baoCaoSuCo.extension
Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

ShortAdditional content defined by implementations
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control0..*
TypeExtension
Is Modifierfalse
Summaryfalse
Alternate Namesextensions, user content
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
SlicingThis element introduces a set of slices on vnPatientSafetyIncidentReportLm.baoCaoSuCo.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ url
  • 8. vnPatientSafetyIncidentReportLm.baoCaoSuCo.modifierExtension
    Definition

    May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

    Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

    ShortExtensions that cannot be ignored even if unrecognized
    Comments

    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

    Control0..*
    TypeExtension
    Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
    Summarytrue
    Requirements

    Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

    Alternate Namesextensions, user content, modifiers
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    10. vnPatientSafetyIncidentReportLm.baoCaoSuCo.diaDiemXayRa
    Definition

    Địa điểm xảy ra sự cố

    ShortĐịa điểm xảy ra sự cố
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    12. vnPatientSafetyIncidentReportLm.baoCaoSuCo.thoiDiemXayRa
    Definition

    Thời điểm xảy ra sự cố

    ShortThời điểm xảy ra sự cố
    Comments

    Thời điểm XẢY RA, phân biệt với thời điểm GHI NHẬN báo cáo — khoảng cách giữa hai mốc chính là độ trễ phát hiện, một chỉ số an toàn người bệnh. Sửa 06/09/2026 sau phản biện Fable: bản đầu trỏ recordedDate (thời điểm GHI NHẬN) trong khi chính chú thích này phân biệt nó với thời điểm XẢY RA. date nay đã được profile khai Must Support.

    Control1..1
    TypedateTime
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    14. vnPatientSafetyIncidentReportLm.baoCaoSuCo.moTaSuCo
    Definition

    Mô tả và đánh giá sơ bộ về sự cố

    ShortMô tả và đánh giá sơ bộ về sự cố
    Comments

    Văn bản ghép 'mô tả, đánh giá sơ bộ' trong một cụm: mô tả là việc đã xảy ra, đánh giá sơ bộ là nhận định ban đầu về nguyên nhân và mức độ. Trên profile, phân loại sự cố nằm ở category[incidentType] và nguyên nhân ở extension[incidentCause].

    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    16. vnPatientSafetyIncidentReportLm.baoCaoSuCo.tinhTrangNguoiBiAnhHuong
    Definition

    Tình trạng của người bị ảnh hưởng

    ShortTình trạng của người bị ảnh hưởng
    Comments

    Hậu quả trên người bệnh — trên profile là resultingCondition (tình trạng lâm sàng phát sinh) kèm seriousness và severity cho mức độ.

    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    18. vnPatientSafetyIncidentReportLm.baoCaoSuCo.bienPhapXuLyBanDau
    Definition

    Biện pháp xử lý ban đầu

    ShortBiện pháp xử lý ban đầu
    Comments

    Mục này chưa có element riêng trên VNCoreAdverseEventPatientSafety; AdverseEvent của R4 không mang trường biện pháp xử lý. Ghi nợ tại đây thay vì trỏ bừa vào một element mang nghĩa khác — chu kỳ sau cân nhắc extension riêng hoặc liên kết tới Procedure/Task xử lý sự cố.

    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    20. vnPatientSafetyIncidentReportLm.baoCaoSuCo.hoTenNguoiBaoCao
    Definition

    Họ tên người báo cáo

    ShortHọ tên người báo cáo
    Comments

    min = 0 vì nghĩa vụ này chỉ áp cho báo cáo BẮT BUỘC: 'Nội dung báo cáo phải đầy đủ tất cả các thông tin có trên Mẫu Báo cáo… và ghi rõ họ tên người báo cáo.' Báo cáo tự nguyện không đòi danh tính — đó là điều kiện để người trong cuộc dám báo cáo, nên ép 1..1 sẽ phá chính cơ chế mà thông tư dựng lên.

    Control0..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension

    Guidance on how to interpret the contents of this table can be foundhere

    0. vnPatientSafetyIncidentReportLm
    Definition

    Logical model đặc tả nội dung mà Thông tư 43/2018/TT-BYT (ban hành 31/12/2018) BUỘC phải có trong báo cáo sự cố y khoa — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile sự cố an toàn người bệnh.

    Điều 5 khoản 3 điểm a, phần báo cáo tự nguyện, nêu nguyên văn: 'Nội dung báo cáo tối thiểu cần có: Địa điểm, thời điểm xảy ra và mô tả, đánh giá sơ bộ về sự cố, tình trạng của người bị ảnh hưởng, biện pháp xử lý ban đầu theo Mẫu Báo cáo sự cố y khoa quy định tại Phụ lục III ban hành kèm theo Thông tư này.'

    Cùng điểm a, phần báo cáo bắt buộc, đặt ngưỡng cao hơn: 'Nội dung báo cáo phải đầy đủ tất cả các thông tin có trên Mẫu Báo cáo sự cố y khoa quy định tại Phụ lục III và ghi rõ họ tên người báo cáo.' Ngưỡng ấy dẫn sang mẫu ở phụ lục nên chưa khai được thành trường; model dừng ở danh sách tối thiểu mà văn bản liệt kê tường minh.

    Chuỗi báo cáo của mức bắt buộc cũng khác: người gây ra hoặc phát hiện sự cố báo cho trưởng khoa và bộ phận quản lý sự cố; trưởng khoa báo cho lãnh đạo cơ sở; lãnh đạo cơ sở báo NGAY cho cơ quan quản lý. Ba chặng ấy là quy trình, không sinh trường dữ liệu nào ngoài danh tính người báo cáo. / Logical model for the patient safety incident report content required by Circular 43/2018/TT-BYT.

    ShortNội dung bắt buộc của báo cáo sự cố y khoa (TT 43/2018/TT-BYT) — Logical Model
    Logical ModelInstances of this logical model are not marked to be the target of a Reference
    2. vnPatientSafetyIncidentReportLm.baoCaoSuCo
    Definition

    Báo cáo một sự cố y khoa

    ShortBáo cáo một sự cố y khoa
    Control1..1
    TypeBackboneElement
    4. vnPatientSafetyIncidentReportLm.baoCaoSuCo.diaDiemXayRa
    Definition

    Địa điểm xảy ra sự cố

    ShortĐịa điểm xảy ra sự cố
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    6. vnPatientSafetyIncidentReportLm.baoCaoSuCo.thoiDiemXayRa
    Definition

    Thời điểm xảy ra sự cố

    ShortThời điểm xảy ra sự cố
    Comments

    Thời điểm XẢY RA, phân biệt với thời điểm GHI NHẬN báo cáo — khoảng cách giữa hai mốc chính là độ trễ phát hiện, một chỉ số an toàn người bệnh. Sửa 06/09/2026 sau phản biện Fable: bản đầu trỏ recordedDate (thời điểm GHI NHẬN) trong khi chính chú thích này phân biệt nó với thời điểm XẢY RA. date nay đã được profile khai Must Support.

    Control1..1
    TypedateTime
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    8. vnPatientSafetyIncidentReportLm.baoCaoSuCo.moTaSuCo
    Definition

    Mô tả và đánh giá sơ bộ về sự cố

    ShortMô tả và đánh giá sơ bộ về sự cố
    Comments

    Văn bản ghép 'mô tả, đánh giá sơ bộ' trong một cụm: mô tả là việc đã xảy ra, đánh giá sơ bộ là nhận định ban đầu về nguyên nhân và mức độ. Trên profile, phân loại sự cố nằm ở category[incidentType] và nguyên nhân ở extension[incidentCause].

    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    10. vnPatientSafetyIncidentReportLm.baoCaoSuCo.tinhTrangNguoiBiAnhHuong
    Definition

    Tình trạng của người bị ảnh hưởng

    ShortTình trạng của người bị ảnh hưởng
    Comments

    Hậu quả trên người bệnh — trên profile là resultingCondition (tình trạng lâm sàng phát sinh) kèm seriousness và severity cho mức độ.

    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    12. vnPatientSafetyIncidentReportLm.baoCaoSuCo.bienPhapXuLyBanDau
    Definition

    Biện pháp xử lý ban đầu

    ShortBiện pháp xử lý ban đầu
    Comments

    Mục này chưa có element riêng trên VNCoreAdverseEventPatientSafety; AdverseEvent của R4 không mang trường biện pháp xử lý. Ghi nợ tại đây thay vì trỏ bừa vào một element mang nghĩa khác — chu kỳ sau cân nhắc extension riêng hoặc liên kết tới Procedure/Task xử lý sự cố.

    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    14. vnPatientSafetyIncidentReportLm.baoCaoSuCo.hoTenNguoiBaoCao
    Definition

    Họ tên người báo cáo

    ShortHọ tên người báo cáo
    Comments

    min = 0 vì nghĩa vụ này chỉ áp cho báo cáo BẮT BUỘC: 'Nội dung báo cáo phải đầy đủ tất cả các thông tin có trên Mẫu Báo cáo… và ghi rõ họ tên người báo cáo.' Báo cáo tự nguyện không đòi danh tính — đó là điều kiện để người trong cuộc dám báo cáo, nên ép 1..1 sẽ phá chính cơ chế mà thông tư dựng lên.

    Control0..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension

    Guidance on how to interpret the contents of this table can be foundhere

    0. vnPatientSafetyIncidentReportLm
    Definition

    Logical model đặc tả nội dung mà Thông tư 43/2018/TT-BYT (ban hành 31/12/2018) BUỘC phải có trong báo cáo sự cố y khoa — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile sự cố an toàn người bệnh.

    Điều 5 khoản 3 điểm a, phần báo cáo tự nguyện, nêu nguyên văn: 'Nội dung báo cáo tối thiểu cần có: Địa điểm, thời điểm xảy ra và mô tả, đánh giá sơ bộ về sự cố, tình trạng của người bị ảnh hưởng, biện pháp xử lý ban đầu theo Mẫu Báo cáo sự cố y khoa quy định tại Phụ lục III ban hành kèm theo Thông tư này.'

    Cùng điểm a, phần báo cáo bắt buộc, đặt ngưỡng cao hơn: 'Nội dung báo cáo phải đầy đủ tất cả các thông tin có trên Mẫu Báo cáo sự cố y khoa quy định tại Phụ lục III và ghi rõ họ tên người báo cáo.' Ngưỡng ấy dẫn sang mẫu ở phụ lục nên chưa khai được thành trường; model dừng ở danh sách tối thiểu mà văn bản liệt kê tường minh.

    Chuỗi báo cáo của mức bắt buộc cũng khác: người gây ra hoặc phát hiện sự cố báo cho trưởng khoa và bộ phận quản lý sự cố; trưởng khoa báo cho lãnh đạo cơ sở; lãnh đạo cơ sở báo NGAY cho cơ quan quản lý. Ba chặng ấy là quy trình, không sinh trường dữ liệu nào ngoài danh tính người báo cáo. / Logical model for the patient safety incident report content required by Circular 43/2018/TT-BYT.

    ShortNội dung bắt buộc của báo cáo sự cố y khoa (TT 43/2018/TT-BYT) — Logical Model
    Control0..*
    Is Modifierfalse
    Logical ModelInstances of this logical model are not marked to be the target of a Reference
    2. vnPatientSafetyIncidentReportLm.baoCaoSuCo
    Definition

    Báo cáo một sự cố y khoa

    ShortBáo cáo một sự cố y khoa
    Control1..1
    TypeBackboneElement
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    4. vnPatientSafetyIncidentReportLm.baoCaoSuCo.id
    Definition

    Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

    ShortUnique id for inter-element referencing
    Control0..1
    Typestring
    Is Modifierfalse
    XML FormatIn the XML format, this property is represented as an attribute.
    Summaryfalse
    6. vnPatientSafetyIncidentReportLm.baoCaoSuCo.extension
    Definition

    May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

    ShortAdditional content defined by implementations
    Comments

    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

    Control0..*
    TypeExtension
    Is Modifierfalse
    Summaryfalse
    Alternate Namesextensions, user content
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    SlicingThis element introduces a set of slices on vnPatientSafetyIncidentReportLm.baoCaoSuCo.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • value @ url
    • 8. vnPatientSafetyIncidentReportLm.baoCaoSuCo.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      10. vnPatientSafetyIncidentReportLm.baoCaoSuCo.diaDiemXayRa
      Definition

      Địa điểm xảy ra sự cố

      ShortĐịa điểm xảy ra sự cố
      Control1..1
      Typestring
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      12. vnPatientSafetyIncidentReportLm.baoCaoSuCo.thoiDiemXayRa
      Definition

      Thời điểm xảy ra sự cố

      ShortThời điểm xảy ra sự cố
      Comments

      Thời điểm XẢY RA, phân biệt với thời điểm GHI NHẬN báo cáo — khoảng cách giữa hai mốc chính là độ trễ phát hiện, một chỉ số an toàn người bệnh. Sửa 06/09/2026 sau phản biện Fable: bản đầu trỏ recordedDate (thời điểm GHI NHẬN) trong khi chính chú thích này phân biệt nó với thời điểm XẢY RA. date nay đã được profile khai Must Support.

      Control1..1
      TypedateTime
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      14. vnPatientSafetyIncidentReportLm.baoCaoSuCo.moTaSuCo
      Definition

      Mô tả và đánh giá sơ bộ về sự cố

      ShortMô tả và đánh giá sơ bộ về sự cố
      Comments

      Văn bản ghép 'mô tả, đánh giá sơ bộ' trong một cụm: mô tả là việc đã xảy ra, đánh giá sơ bộ là nhận định ban đầu về nguyên nhân và mức độ. Trên profile, phân loại sự cố nằm ở category[incidentType] và nguyên nhân ở extension[incidentCause].

      Control1..1
      Typestring
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      16. vnPatientSafetyIncidentReportLm.baoCaoSuCo.tinhTrangNguoiBiAnhHuong
      Definition

      Tình trạng của người bị ảnh hưởng

      ShortTình trạng của người bị ảnh hưởng
      Comments

      Hậu quả trên người bệnh — trên profile là resultingCondition (tình trạng lâm sàng phát sinh) kèm seriousness và severity cho mức độ.

      Control1..1
      Typestring
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      18. vnPatientSafetyIncidentReportLm.baoCaoSuCo.bienPhapXuLyBanDau
      Definition

      Biện pháp xử lý ban đầu

      ShortBiện pháp xử lý ban đầu
      Comments

      Mục này chưa có element riêng trên VNCoreAdverseEventPatientSafety; AdverseEvent của R4 không mang trường biện pháp xử lý. Ghi nợ tại đây thay vì trỏ bừa vào một element mang nghĩa khác — chu kỳ sau cân nhắc extension riêng hoặc liên kết tới Procedure/Task xử lý sự cố.

      Control1..1
      Typestring
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      20. vnPatientSafetyIncidentReportLm.baoCaoSuCo.hoTenNguoiBaoCao
      Definition

      Họ tên người báo cáo

      ShortHọ tên người báo cáo
      Comments

      min = 0 vì nghĩa vụ này chỉ áp cho báo cáo BẮT BUỘC: 'Nội dung báo cáo phải đầy đủ tất cả các thông tin có trên Mẫu Báo cáo… và ghi rõ họ tên người báo cáo.' Báo cáo tự nguyện không đòi danh tính — đó là điều kiện để người trong cuộc dám báo cáo, nên ép 1..1 sẽ phá chính cơ chế mà thông tư dựng lên.

      Control0..1
      Typestring
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension