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
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
| Draft tại thời điểm 2026-09-22 |
Các định nghĩa cho vnAllergyHistoryContentLm mô hình logic
Guidance on how to interpret the contents of this table can be foundhere
| 0. vnAllergyHistoryContentLm | |
| Definition | Logical model đặc tả nội dung mà Thông tư 51/2017/TT-BYT (ban hành 29/12/2017, hiệu lực 15/02/2018) BUỘC phải khai thác và ghi lại về tiền sử dị ứng của người bệnh — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile dị ứng và profile tiền sử gia đình. Điều 4 khoản 5 nêu nguyên văn: 'Bác sĩ, người kê đơn thuốc hoặc nhân viên y tế khác có thẩm quyền phải khai thác kỹ tiền sử dị ứng thuốc, dị nguyên của người bệnh trước khi kê đơn thuốc hoặc chỉ định sử dụng thuốc theo quy định tại Phụ lục VI ban hành kèm theo Thông tư này. Tất cả thông tin liên quan đến dị ứng, dị nguyên phải được ghi vào sổ khám bệnh, bệnh án, giấy ra viện, giấy chuyển viện.' Hai nghĩa vụ tách bạch trong câu ấy: KHAI THÁC trước khi kê đơn, và GHI vào bốn loại hồ sơ. Nghĩa vụ thứ hai là thứ chạm tới IG: thông tin dị ứng không được nằm riêng trong một sổ dị ứng mà phải đi theo hồ sơ người bệnh qua các tuyến. Điều 4 khoản 6 thêm nghĩa vụ có điều kiện: 'Khi đã xác định được thuốc hoặc dị nguyên gây phản vệ, bác sĩ, nhân viên y tế phải cấp cho người bệnh thẻ theo dõi dị ứng ghi rõ tên thuốc hoặc dị nguyên gây dị ứng theo hướng dẫn tại Phụ lục VII'. Thẻ ở Phụ lục VII có cột 'Nghi ngờ' và 'Chắc chắn' cho mỗi dị nguyên — đó là mức độ xác minh, thứ mà mẫu khai thác ở Phụ lục VI không hỏi. / Logical model for the allergy history content required by Circular 51/2017/TT-BYT. |
| Short | Nội dung bắt buộc của khai thác tiền sử dị ứng (TT 51/2017/TT-BYT PL VI, VII) — Logical Model |
| Control | 0..* |
| Is Modifier | false |
| Logical Model | Instances of this logical model are not marked to be the target of a Reference |
| 2. vnAllergyHistoryContentLm.daKhaiThacTienSu | |
| Definition | Đã khai thác tiền sử dị ứng theo Phụ lục VI trước khi kê đơn |
| Short | Đã khai thác tiền sử dị ứng theo Phụ lục VI trước khi kê đơn |
| Comments | Thêm 07/09/2026 sau phản biện Codex. Ba nhóm dưới đây đều là 0..* — chúng chỉ ghi kết quả DƯƠNG TÍNH, nên bản đầu không phân biệt được 'đã hỏi cả sáu mục, đều không' với 'chưa khai thác lần nào'. Mà chính sự phân biệt ấy mới là nghĩa vụ của Điều 4 khoản 5: bác sĩ 'PHẢI khai thác kỹ… TRƯỚC KHI kê đơn thuốc HOẶC CHỈ ĐỊNH SỬ DỤNG THUỐC'. Đây là nghĩa vụ CÓ ĐIỀU KIỆN KÍCH HOẠT, không phải nghĩa vụ của mọi lượt khám (bổ sung 07/09/2026 sau phản biện Fable): lượt khám không phát sinh y lệnh thuốc thì không kích hoạt. Trong phạm vi model — vốn mô tả nội dung của chính việc khai thác — element là 1..1; nhưng khi nối lên tầng Encounter thì phải giữ điều kiện ấy, đừng biến thành min=1 cho mọi lượt khám. Mẫu phiếu phản ánh điều đó bằng cột 'Không' đứng cạnh cột 'Có/số lần' cho cả sáu mục — trả lời 'Không' vẫn là một câu trả lời phải ghi. CHƯA ánh xạ được: AllergyIntolerance mô tả một dị ứng đã biết, không mô tả việc khai thác; trên FHIR trạng thái 'đã hỏi, không có gì' thường biểu diễn bằng một List rỗng có |
| Control | 1..1 |
| Type | boolean |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 4. vnAllergyHistoryContentLm.diUngDaXacDinh | |
| Definition | Một thuốc hoặc dị nguyên đã xác định gây dị ứng cho người bệnh |
| Short | Một thuốc hoặc dị nguyên đã xác định gây dị ứng cho người bệnh |
| Comments | Cha để 0..* vì người bệnh không có tiền sử dị ứng nào thì mẫu phiếu vẫn hợp lệ với cả sáu mục trả lời 'Không' — nghĩa vụ của Điều 4 khoản 5 là KHAI THÁC, không phải là phải tìm ra dị ứng. Nhưng KHI một dị nguyên đã được xác định thì các trường con dưới đây là bắt buộc, vì chính các cột của Phụ lục VI và Phụ lục VII đòi chúng. Bốn mục đầu của Phụ lục VI đều dùng chung ba cột 'Tên thuốc, dị nguyên gây dị ứng | Có/số lần | Biểu hiện lâm sàng-xử trí', khác nhau ở LOẠI dị nguyên được hỏi. |
| Control | 0..* |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 6. vnAllergyHistoryContentLm.diUngDaXacDinh.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 8. vnAllergyHistoryContentLm.diUngDaXacDinh.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. |
| Short | Additional 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-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()) |
| Slicing | This element introduces a set of slices on vnAllergyHistoryContentLm.diUngDaXacDinh.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 10. vnAllergyHistoryContentLm.diUngDaXacDinh.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). |
| Short | Extensions 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| 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 Names | extensions, user content, modifiers |
| Invariants | ele-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()) |
| 12. vnAllergyHistoryContentLm.diUngDaXacDinh.tenThuocDiNguyen | |
| Definition | Tên thuốc hoặc dị nguyên gây dị ứng |
| Short | Tên thuốc hoặc dị nguyên gây dị ứng |
| Comments | Cột thứ ba của Phụ lục VI, và cột 'Dị nguyên/thuốc' của thẻ ở Phụ lục VII. Khoản 6 nói rõ thẻ phải 'ghi rõ TÊN thuốc hoặc dị nguyên gây dị ứng' — tên là thứ tối thiểu, mã hoá theo SNOMED CT là mức trên nó. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 14. vnAllergyHistoryContentLm.diUngDaXacDinh.loaiDiNguyen | |
| Definition | Loại dị nguyên theo bốn mục đầu của Phụ lục VI |
| Short | Loại dị nguyên theo bốn mục đầu của Phụ lục VI |
| Comments | Bốn mục đầu của mẫu khai thác chia dị nguyên thành bốn nhóm và hỏi riêng từng nhóm: (1) 'Loại thuốc hoặc dị nguyên nào đã gây dị ứng?', (2) 'Dị ứng với loại côn trùng nào?', (3) 'Dị ứng với loại thực phẩm nào?', (4) 'Dị ứng với các tác nhân khác: phấn hoa, bụi nhà, hóa chất, mỹ phẩm...?'. BỐN MỤC ẤY KHÔNG TRÙNG KHÍT BỐN GIÁ TRỊ |
| Control | 1..1 |
| Type | code |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 16. vnAllergyHistoryContentLm.diUngDaXacDinh.bieuHienLamSang | |
| Definition | Biểu hiện lâm sàng của lần dị ứng |
| Short | Biểu hiện lâm sàng của lần dị ứng |
| Comments | Cột cuối của Phụ lục VI ghép 'Biểu hiện lâm sàng-xử trí' làm một, và thẻ ở Phụ lục VII có cột 'Biểu hiện lâm sàng' đứng riêng. Phần biểu hiện ánh xạ được; phần XỬ TRÍ thì không — xem |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 18. vnAllergyHistoryContentLm.diUngDaXacDinh.soLanDiUng | |
| Definition | Số lần đã dị ứng với dị nguyên này |
| Short | Số lần đã dị ứng với dị nguyên này |
| Comments | Cột 'Có/số lần' của Phụ lục VI đòi hơn một dấu tích: nó hỏi ĐÃ MẤY LẦN. AllergyIntolerance R4 không có trường đếm số lần phản ứng. Sửa 07/09/2026 sau phản biện Codex: bản đầu nói con số ấy 'suy ra được bằng cách đếm |
| Control | 0..1 |
| Type | integer |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 20. vnAllergyHistoryContentLm.diUngDaXacDinh.xuTriDaThucHien | |
| Definition | Xử trí đã thực hiện cho lần dị ứng |
| Short | Xử trí đã thực hiện cho lần dị ứng |
| Comments | Nửa sau của cột ghép 'Biểu hiện lâm sàng-xử trí'. Chưa có element trên VNCoreAllergyIntolerance: AdverseEvent và AllergyIntolerance của R4 đều không mang trường biện pháp xử trí — cùng lớp nợ với |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 22. vnAllergyHistoryContentLm.theTheoDoiDiUng | |
| Definition | Một dòng dị nguyên trên thẻ theo dõi dị ứng đã cấp |
| Short | Một dòng dị nguyên trên thẻ theo dõi dị ứng đã cấp |
| Comments | TÁCH KHỎI NHÓM I ngày 07/09/2026 sau phản biện Codex. Bản đầu đặt |
| Control | 0..* |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 24. vnAllergyHistoryContentLm.theTheoDoiDiUng.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 26. vnAllergyHistoryContentLm.theTheoDoiDiUng.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. |
| Short | Additional 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-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()) |
| Slicing | This element introduces a set of slices on vnAllergyHistoryContentLm.theTheoDoiDiUng.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 28. vnAllergyHistoryContentLm.theTheoDoiDiUng.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). |
| Short | Extensions 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| 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 Names | extensions, user content, modifiers |
| Invariants | ele-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()) |
| 30. vnAllergyHistoryContentLm.theTheoDoiDiUng.mucDoChacChan | |
| Definition | Mức độ xác minh: nghi ngờ hay chắc chắn |
| Short | Mức độ xác minh: nghi ngờ hay chắc chắn |
| Comments | Thẻ ở Phụ lục VII đặt hai ô đánh dấu cho MỖI dòng dị nguyên: 'Nghi ngờ □' và 'Chắc chắn □'. HẠ 1..1 XUỐNG 0..1 ngày 07/09/2026 sau phản biện Fable: khoản 6 chỉ buộc thẻ 'ghi rõ TÊN thuốc hoặc dị nguyên gây dị ứng', không buộc đánh dấu mức xác minh; suy 'một dòng không đánh dấu ô nào là dòng chưa hoàn tất' từ hình thức mẫu là cùng lớp lập luận với 'ô in sẵn dấu phẩy nên đòi một chữ số thập phân' đã phải bỏ ở model sàng lọc. Hai ô ấy khớp đúng hai mã đầu của |
| Control | 0..1 |
| Type | code |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 32. vnAllergyHistoryContentLm.tienSuGiaDinh | |
| Definition | Bệnh dị ứng của một thân nhân người bệnh |
| Short | Bệnh dị ứng của một thân nhân người bệnh |
| Comments | Mục 6 hỏi nguyên văn: 'Tiền sử gia đình có bệnh dị ứng nào? (Bố mẹ, con, anh chị em ruột, có ai bị các bệnh dị ứng trên không).' Câu hỏi nêu đích danh bốn quan hệ huyết thống bậc một. Model tách nhóm này thành 0..* để MỖI thân nhân có thể là một dòng riêng — nhưng quan hệ chỉ 0..1, xem chú thích tại |
| Control | 0..* |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 34. vnAllergyHistoryContentLm.tienSuGiaDinh.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 36. vnAllergyHistoryContentLm.tienSuGiaDinh.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. |
| Short | Additional 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-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()) |
| Slicing | This element introduces a set of slices on vnAllergyHistoryContentLm.tienSuGiaDinh.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 38. vnAllergyHistoryContentLm.tienSuGiaDinh.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). |
| Short | Extensions 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| 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 Names | extensions, user content, modifiers |
| Invariants | ele-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()) |
| 40. vnAllergyHistoryContentLm.tienSuGiaDinh.quanHeThanNhan | |
| Definition | Quan hệ của thân nhân với người bệnh |
| Short | Quan hệ của thân nhân với người bệnh |
| Comments | HẠ 1..1 XUỐNG 0..1 ngày 07/09/2026 sau phản biện Codex, kèm đính chính lập luận. Bản đầu viết 'thông tin PHẢI quy được về TỪNG thân nhân' và suy ra 1..1 — đó là suy diễn, không phải điều mẫu phiếu đòi. Mục 6 chỉ hỏi một câu: 'Tiền sử gia đình có bệnh dị ứng nào? (Bố mẹ, con, anh chị em ruột, có ai bị các bệnh dị ứng trên không)'. Cụm trong ngoặc là PHẠM VI HỎI, không phải cột ghi; mẫu phiếu không có cột quan hệ và không dặn lập một dòng cho mỗi người. |
| Control | 0..1 |
| Type | code |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 42. vnAllergyHistoryContentLm.tienSuGiaDinh.benhDiUngThanNhan | |
| Definition | Bệnh dị ứng mà thân nhân mắc |
| Short | Bệnh dị ứng mà thân nhân mắc |
| Comments | '…có ai bị các bệnh dị ứng TRÊN không' — chữ 'trên' trỏ ngược lên mục 5, tức cùng danh mục bệnh dị ứng: viêm mũi dị ứng, hen phế quản và các bệnh cùng nhóm. Ghi bệnh gì, không phải ghi 'có' hay 'không'. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 44. vnAllergyHistoryContentLm.benhDiUngCaNhan | |
| Definition | Bệnh dị ứng mà chính người bệnh mắc |
| Short | Bệnh dị ứng mà chính người bệnh mắc |
| Comments | Mục 5 hỏi 'Tiền sử cá nhân có bệnh dị ứng nào? (viêm mũi dị ứng, hen phế quản...)'. Đây là BỆNH, không phải phản ứng với một dị nguyên: hen phế quản là chẩn đoán tồn tại độc lập với việc có tiếp xúc dị nguyên hay không. Trên FHIR nó là Condition, không phải AllergyIntolerance — VNCoreCondition đã có nguồn nghĩa vụ trường riêng nên không nối thêm ánh xạ ở đây. Ghi mục này lại để giữ đủ sáu mục của Phụ lục VI: bỏ nó đi thì lượt rà sau sẽ tưởng mẫu phiếu chỉ có năm mục. |
| Control | 0..* |
| Type | string |
| Primitive Value | This 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. vnAllergyHistoryContentLm | |
| Definition | Logical model đặc tả nội dung mà Thông tư 51/2017/TT-BYT (ban hành 29/12/2017, hiệu lực 15/02/2018) BUỘC phải khai thác và ghi lại về tiền sử dị ứng của người bệnh — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile dị ứng và profile tiền sử gia đình. Điều 4 khoản 5 nêu nguyên văn: 'Bác sĩ, người kê đơn thuốc hoặc nhân viên y tế khác có thẩm quyền phải khai thác kỹ tiền sử dị ứng thuốc, dị nguyên của người bệnh trước khi kê đơn thuốc hoặc chỉ định sử dụng thuốc theo quy định tại Phụ lục VI ban hành kèm theo Thông tư này. Tất cả thông tin liên quan đến dị ứng, dị nguyên phải được ghi vào sổ khám bệnh, bệnh án, giấy ra viện, giấy chuyển viện.' Hai nghĩa vụ tách bạch trong câu ấy: KHAI THÁC trước khi kê đơn, và GHI vào bốn loại hồ sơ. Nghĩa vụ thứ hai là thứ chạm tới IG: thông tin dị ứng không được nằm riêng trong một sổ dị ứng mà phải đi theo hồ sơ người bệnh qua các tuyến. Điều 4 khoản 6 thêm nghĩa vụ có điều kiện: 'Khi đã xác định được thuốc hoặc dị nguyên gây phản vệ, bác sĩ, nhân viên y tế phải cấp cho người bệnh thẻ theo dõi dị ứng ghi rõ tên thuốc hoặc dị nguyên gây dị ứng theo hướng dẫn tại Phụ lục VII'. Thẻ ở Phụ lục VII có cột 'Nghi ngờ' và 'Chắc chắn' cho mỗi dị nguyên — đó là mức độ xác minh, thứ mà mẫu khai thác ở Phụ lục VI không hỏi. / Logical model for the allergy history content required by Circular 51/2017/TT-BYT. |
| Short | Nội dung bắt buộc của khai thác tiền sử dị ứng (TT 51/2017/TT-BYT PL VI, VII) — Logical Model |
| Logical Model | Instances of this logical model are not marked to be the target of a Reference |
| 2. vnAllergyHistoryContentLm.daKhaiThacTienSu | |
| Definition | Đã khai thác tiền sử dị ứng theo Phụ lục VI trước khi kê đơn |
| Short | Đã khai thác tiền sử dị ứng theo Phụ lục VI trước khi kê đơn |
| Comments | Thêm 07/09/2026 sau phản biện Codex. Ba nhóm dưới đây đều là 0..* — chúng chỉ ghi kết quả DƯƠNG TÍNH, nên bản đầu không phân biệt được 'đã hỏi cả sáu mục, đều không' với 'chưa khai thác lần nào'. Mà chính sự phân biệt ấy mới là nghĩa vụ của Điều 4 khoản 5: bác sĩ 'PHẢI khai thác kỹ… TRƯỚC KHI kê đơn thuốc HOẶC CHỈ ĐỊNH SỬ DỤNG THUỐC'. Đây là nghĩa vụ CÓ ĐIỀU KIỆN KÍCH HOẠT, không phải nghĩa vụ của mọi lượt khám (bổ sung 07/09/2026 sau phản biện Fable): lượt khám không phát sinh y lệnh thuốc thì không kích hoạt. Trong phạm vi model — vốn mô tả nội dung của chính việc khai thác — element là 1..1; nhưng khi nối lên tầng Encounter thì phải giữ điều kiện ấy, đừng biến thành min=1 cho mọi lượt khám. Mẫu phiếu phản ánh điều đó bằng cột 'Không' đứng cạnh cột 'Có/số lần' cho cả sáu mục — trả lời 'Không' vẫn là một câu trả lời phải ghi. CHƯA ánh xạ được: AllergyIntolerance mô tả một dị ứng đã biết, không mô tả việc khai thác; trên FHIR trạng thái 'đã hỏi, không có gì' thường biểu diễn bằng một List rỗng có |
| Control | 1..1 |
| Type | boolean |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 4. vnAllergyHistoryContentLm.diUngDaXacDinh | |
| Definition | Một thuốc hoặc dị nguyên đã xác định gây dị ứng cho người bệnh |
| Short | Một thuốc hoặc dị nguyên đã xác định gây dị ứng cho người bệnh |
| Comments | Cha để 0..* vì người bệnh không có tiền sử dị ứng nào thì mẫu phiếu vẫn hợp lệ với cả sáu mục trả lời 'Không' — nghĩa vụ của Điều 4 khoản 5 là KHAI THÁC, không phải là phải tìm ra dị ứng. Nhưng KHI một dị nguyên đã được xác định thì các trường con dưới đây là bắt buộc, vì chính các cột của Phụ lục VI và Phụ lục VII đòi chúng. Bốn mục đầu của Phụ lục VI đều dùng chung ba cột 'Tên thuốc, dị nguyên gây dị ứng | Có/số lần | Biểu hiện lâm sàng-xử trí', khác nhau ở LOẠI dị nguyên được hỏi. |
| Control | 0..* |
| Type | BackboneElement |
| 6. vnAllergyHistoryContentLm.diUngDaXacDinh.tenThuocDiNguyen | |
| Definition | Tên thuốc hoặc dị nguyên gây dị ứng |
| Short | Tên thuốc hoặc dị nguyên gây dị ứng |
| Comments | Cột thứ ba của Phụ lục VI, và cột 'Dị nguyên/thuốc' của thẻ ở Phụ lục VII. Khoản 6 nói rõ thẻ phải 'ghi rõ TÊN thuốc hoặc dị nguyên gây dị ứng' — tên là thứ tối thiểu, mã hoá theo SNOMED CT là mức trên nó. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 8. vnAllergyHistoryContentLm.diUngDaXacDinh.loaiDiNguyen | |
| Definition | Loại dị nguyên theo bốn mục đầu của Phụ lục VI |
| Short | Loại dị nguyên theo bốn mục đầu của Phụ lục VI |
| Comments | Bốn mục đầu của mẫu khai thác chia dị nguyên thành bốn nhóm và hỏi riêng từng nhóm: (1) 'Loại thuốc hoặc dị nguyên nào đã gây dị ứng?', (2) 'Dị ứng với loại côn trùng nào?', (3) 'Dị ứng với loại thực phẩm nào?', (4) 'Dị ứng với các tác nhân khác: phấn hoa, bụi nhà, hóa chất, mỹ phẩm...?'. BỐN MỤC ẤY KHÔNG TRÙNG KHÍT BỐN GIÁ TRỊ |
| Control | 1..1 |
| Type | code |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 10. vnAllergyHistoryContentLm.diUngDaXacDinh.bieuHienLamSang | |
| Definition | Biểu hiện lâm sàng của lần dị ứng |
| Short | Biểu hiện lâm sàng của lần dị ứng |
| Comments | Cột cuối của Phụ lục VI ghép 'Biểu hiện lâm sàng-xử trí' làm một, và thẻ ở Phụ lục VII có cột 'Biểu hiện lâm sàng' đứng riêng. Phần biểu hiện ánh xạ được; phần XỬ TRÍ thì không — xem |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 12. vnAllergyHistoryContentLm.diUngDaXacDinh.soLanDiUng | |
| Definition | Số lần đã dị ứng với dị nguyên này |
| Short | Số lần đã dị ứng với dị nguyên này |
| Comments | Cột 'Có/số lần' của Phụ lục VI đòi hơn một dấu tích: nó hỏi ĐÃ MẤY LẦN. AllergyIntolerance R4 không có trường đếm số lần phản ứng. Sửa 07/09/2026 sau phản biện Codex: bản đầu nói con số ấy 'suy ra được bằng cách đếm |
| Control | 0..1 |
| Type | integer |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 14. vnAllergyHistoryContentLm.diUngDaXacDinh.xuTriDaThucHien | |
| Definition | Xử trí đã thực hiện cho lần dị ứng |
| Short | Xử trí đã thực hiện cho lần dị ứng |
| Comments | Nửa sau của cột ghép 'Biểu hiện lâm sàng-xử trí'. Chưa có element trên VNCoreAllergyIntolerance: AdverseEvent và AllergyIntolerance của R4 đều không mang trường biện pháp xử trí — cùng lớp nợ với |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 16. vnAllergyHistoryContentLm.theTheoDoiDiUng | |
| Definition | Một dòng dị nguyên trên thẻ theo dõi dị ứng đã cấp |
| Short | Một dòng dị nguyên trên thẻ theo dõi dị ứng đã cấp |
| Comments | TÁCH KHỎI NHÓM I ngày 07/09/2026 sau phản biện Codex. Bản đầu đặt |
| Control | 0..* |
| Type | BackboneElement |
| 18. vnAllergyHistoryContentLm.theTheoDoiDiUng.mucDoChacChan | |
| Definition | Mức độ xác minh: nghi ngờ hay chắc chắn |
| Short | Mức độ xác minh: nghi ngờ hay chắc chắn |
| Comments | Thẻ ở Phụ lục VII đặt hai ô đánh dấu cho MỖI dòng dị nguyên: 'Nghi ngờ □' và 'Chắc chắn □'. HẠ 1..1 XUỐNG 0..1 ngày 07/09/2026 sau phản biện Fable: khoản 6 chỉ buộc thẻ 'ghi rõ TÊN thuốc hoặc dị nguyên gây dị ứng', không buộc đánh dấu mức xác minh; suy 'một dòng không đánh dấu ô nào là dòng chưa hoàn tất' từ hình thức mẫu là cùng lớp lập luận với 'ô in sẵn dấu phẩy nên đòi một chữ số thập phân' đã phải bỏ ở model sàng lọc. Hai ô ấy khớp đúng hai mã đầu của |
| Control | 0..1 |
| Type | code |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 20. vnAllergyHistoryContentLm.tienSuGiaDinh | |
| Definition | Bệnh dị ứng của một thân nhân người bệnh |
| Short | Bệnh dị ứng của một thân nhân người bệnh |
| Comments | Mục 6 hỏi nguyên văn: 'Tiền sử gia đình có bệnh dị ứng nào? (Bố mẹ, con, anh chị em ruột, có ai bị các bệnh dị ứng trên không).' Câu hỏi nêu đích danh bốn quan hệ huyết thống bậc một. Model tách nhóm này thành 0..* để MỖI thân nhân có thể là một dòng riêng — nhưng quan hệ chỉ 0..1, xem chú thích tại |
| Control | 0..* |
| Type | BackboneElement |
| 22. vnAllergyHistoryContentLm.tienSuGiaDinh.quanHeThanNhan | |
| Definition | Quan hệ của thân nhân với người bệnh |
| Short | Quan hệ của thân nhân với người bệnh |
| Comments | HẠ 1..1 XUỐNG 0..1 ngày 07/09/2026 sau phản biện Codex, kèm đính chính lập luận. Bản đầu viết 'thông tin PHẢI quy được về TỪNG thân nhân' và suy ra 1..1 — đó là suy diễn, không phải điều mẫu phiếu đòi. Mục 6 chỉ hỏi một câu: 'Tiền sử gia đình có bệnh dị ứng nào? (Bố mẹ, con, anh chị em ruột, có ai bị các bệnh dị ứng trên không)'. Cụm trong ngoặc là PHẠM VI HỎI, không phải cột ghi; mẫu phiếu không có cột quan hệ và không dặn lập một dòng cho mỗi người. |
| Control | 0..1 |
| Type | code |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 24. vnAllergyHistoryContentLm.tienSuGiaDinh.benhDiUngThanNhan | |
| Definition | Bệnh dị ứng mà thân nhân mắc |
| Short | Bệnh dị ứng mà thân nhân mắc |
| Comments | '…có ai bị các bệnh dị ứng TRÊN không' — chữ 'trên' trỏ ngược lên mục 5, tức cùng danh mục bệnh dị ứng: viêm mũi dị ứng, hen phế quản và các bệnh cùng nhóm. Ghi bệnh gì, không phải ghi 'có' hay 'không'. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 26. vnAllergyHistoryContentLm.benhDiUngCaNhan | |
| Definition | Bệnh dị ứng mà chính người bệnh mắc |
| Short | Bệnh dị ứng mà chính người bệnh mắc |
| Comments | Mục 5 hỏi 'Tiền sử cá nhân có bệnh dị ứng nào? (viêm mũi dị ứng, hen phế quản...)'. Đây là BỆNH, không phải phản ứng với một dị nguyên: hen phế quản là chẩn đoán tồn tại độc lập với việc có tiếp xúc dị nguyên hay không. Trên FHIR nó là Condition, không phải AllergyIntolerance — VNCoreCondition đã có nguồn nghĩa vụ trường riêng nên không nối thêm ánh xạ ở đây. Ghi mục này lại để giữ đủ sáu mục của Phụ lục VI: bỏ nó đi thì lượt rà sau sẽ tưởng mẫu phiếu chỉ có năm mục. |
| Control | 0..* |
| Type | string |
| Primitive Value | This 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. vnAllergyHistoryContentLm | |
| Definition | Logical model đặc tả nội dung mà Thông tư 51/2017/TT-BYT (ban hành 29/12/2017, hiệu lực 15/02/2018) BUỘC phải khai thác và ghi lại về tiền sử dị ứng của người bệnh — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile dị ứng và profile tiền sử gia đình. Điều 4 khoản 5 nêu nguyên văn: 'Bác sĩ, người kê đơn thuốc hoặc nhân viên y tế khác có thẩm quyền phải khai thác kỹ tiền sử dị ứng thuốc, dị nguyên của người bệnh trước khi kê đơn thuốc hoặc chỉ định sử dụng thuốc theo quy định tại Phụ lục VI ban hành kèm theo Thông tư này. Tất cả thông tin liên quan đến dị ứng, dị nguyên phải được ghi vào sổ khám bệnh, bệnh án, giấy ra viện, giấy chuyển viện.' Hai nghĩa vụ tách bạch trong câu ấy: KHAI THÁC trước khi kê đơn, và GHI vào bốn loại hồ sơ. Nghĩa vụ thứ hai là thứ chạm tới IG: thông tin dị ứng không được nằm riêng trong một sổ dị ứng mà phải đi theo hồ sơ người bệnh qua các tuyến. Điều 4 khoản 6 thêm nghĩa vụ có điều kiện: 'Khi đã xác định được thuốc hoặc dị nguyên gây phản vệ, bác sĩ, nhân viên y tế phải cấp cho người bệnh thẻ theo dõi dị ứng ghi rõ tên thuốc hoặc dị nguyên gây dị ứng theo hướng dẫn tại Phụ lục VII'. Thẻ ở Phụ lục VII có cột 'Nghi ngờ' và 'Chắc chắn' cho mỗi dị nguyên — đó là mức độ xác minh, thứ mà mẫu khai thác ở Phụ lục VI không hỏi. / Logical model for the allergy history content required by Circular 51/2017/TT-BYT. |
| Short | Nội dung bắt buộc của khai thác tiền sử dị ứng (TT 51/2017/TT-BYT PL VI, VII) — Logical Model |
| Control | 0..* |
| Is Modifier | false |
| Logical Model | Instances of this logical model are not marked to be the target of a Reference |
| 2. vnAllergyHistoryContentLm.daKhaiThacTienSu | |
| Definition | Đã khai thác tiền sử dị ứng theo Phụ lục VI trước khi kê đơn |
| Short | Đã khai thác tiền sử dị ứng theo Phụ lục VI trước khi kê đơn |
| Comments | Thêm 07/09/2026 sau phản biện Codex. Ba nhóm dưới đây đều là 0..* — chúng chỉ ghi kết quả DƯƠNG TÍNH, nên bản đầu không phân biệt được 'đã hỏi cả sáu mục, đều không' với 'chưa khai thác lần nào'. Mà chính sự phân biệt ấy mới là nghĩa vụ của Điều 4 khoản 5: bác sĩ 'PHẢI khai thác kỹ… TRƯỚC KHI kê đơn thuốc HOẶC CHỈ ĐỊNH SỬ DỤNG THUỐC'. Đây là nghĩa vụ CÓ ĐIỀU KIỆN KÍCH HOẠT, không phải nghĩa vụ của mọi lượt khám (bổ sung 07/09/2026 sau phản biện Fable): lượt khám không phát sinh y lệnh thuốc thì không kích hoạt. Trong phạm vi model — vốn mô tả nội dung của chính việc khai thác — element là 1..1; nhưng khi nối lên tầng Encounter thì phải giữ điều kiện ấy, đừng biến thành min=1 cho mọi lượt khám. Mẫu phiếu phản ánh điều đó bằng cột 'Không' đứng cạnh cột 'Có/số lần' cho cả sáu mục — trả lời 'Không' vẫn là một câu trả lời phải ghi. CHƯA ánh xạ được: AllergyIntolerance mô tả một dị ứng đã biết, không mô tả việc khai thác; trên FHIR trạng thái 'đã hỏi, không có gì' thường biểu diễn bằng một List rỗng có |
| Control | 1..1 |
| Type | boolean |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 4. vnAllergyHistoryContentLm.diUngDaXacDinh | |
| Definition | Một thuốc hoặc dị nguyên đã xác định gây dị ứng cho người bệnh |
| Short | Một thuốc hoặc dị nguyên đã xác định gây dị ứng cho người bệnh |
| Comments | Cha để 0..* vì người bệnh không có tiền sử dị ứng nào thì mẫu phiếu vẫn hợp lệ với cả sáu mục trả lời 'Không' — nghĩa vụ của Điều 4 khoản 5 là KHAI THÁC, không phải là phải tìm ra dị ứng. Nhưng KHI một dị nguyên đã được xác định thì các trường con dưới đây là bắt buộc, vì chính các cột của Phụ lục VI và Phụ lục VII đòi chúng. Bốn mục đầu của Phụ lục VI đều dùng chung ba cột 'Tên thuốc, dị nguyên gây dị ứng | Có/số lần | Biểu hiện lâm sàng-xử trí', khác nhau ở LOẠI dị nguyên được hỏi. |
| Control | 0..* |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 6. vnAllergyHistoryContentLm.diUngDaXacDinh.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 8. vnAllergyHistoryContentLm.diUngDaXacDinh.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. |
| Short | Additional 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-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()) |
| Slicing | This element introduces a set of slices on vnAllergyHistoryContentLm.diUngDaXacDinh.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 10. vnAllergyHistoryContentLm.diUngDaXacDinh.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). |
| Short | Extensions 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| 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 Names | extensions, user content, modifiers |
| Invariants | ele-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()) |
| 12. vnAllergyHistoryContentLm.diUngDaXacDinh.tenThuocDiNguyen | |
| Definition | Tên thuốc hoặc dị nguyên gây dị ứng |
| Short | Tên thuốc hoặc dị nguyên gây dị ứng |
| Comments | Cột thứ ba của Phụ lục VI, và cột 'Dị nguyên/thuốc' của thẻ ở Phụ lục VII. Khoản 6 nói rõ thẻ phải 'ghi rõ TÊN thuốc hoặc dị nguyên gây dị ứng' — tên là thứ tối thiểu, mã hoá theo SNOMED CT là mức trên nó. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 14. vnAllergyHistoryContentLm.diUngDaXacDinh.loaiDiNguyen | |
| Definition | Loại dị nguyên theo bốn mục đầu của Phụ lục VI |
| Short | Loại dị nguyên theo bốn mục đầu của Phụ lục VI |
| Comments | Bốn mục đầu của mẫu khai thác chia dị nguyên thành bốn nhóm và hỏi riêng từng nhóm: (1) 'Loại thuốc hoặc dị nguyên nào đã gây dị ứng?', (2) 'Dị ứng với loại côn trùng nào?', (3) 'Dị ứng với loại thực phẩm nào?', (4) 'Dị ứng với các tác nhân khác: phấn hoa, bụi nhà, hóa chất, mỹ phẩm...?'. BỐN MỤC ẤY KHÔNG TRÙNG KHÍT BỐN GIÁ TRỊ |
| Control | 1..1 |
| Type | code |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 16. vnAllergyHistoryContentLm.diUngDaXacDinh.bieuHienLamSang | |
| Definition | Biểu hiện lâm sàng của lần dị ứng |
| Short | Biểu hiện lâm sàng của lần dị ứng |
| Comments | Cột cuối của Phụ lục VI ghép 'Biểu hiện lâm sàng-xử trí' làm một, và thẻ ở Phụ lục VII có cột 'Biểu hiện lâm sàng' đứng riêng. Phần biểu hiện ánh xạ được; phần XỬ TRÍ thì không — xem |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 18. vnAllergyHistoryContentLm.diUngDaXacDinh.soLanDiUng | |
| Definition | Số lần đã dị ứng với dị nguyên này |
| Short | Số lần đã dị ứng với dị nguyên này |
| Comments | Cột 'Có/số lần' của Phụ lục VI đòi hơn một dấu tích: nó hỏi ĐÃ MẤY LẦN. AllergyIntolerance R4 không có trường đếm số lần phản ứng. Sửa 07/09/2026 sau phản biện Codex: bản đầu nói con số ấy 'suy ra được bằng cách đếm |
| Control | 0..1 |
| Type | integer |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 20. vnAllergyHistoryContentLm.diUngDaXacDinh.xuTriDaThucHien | |
| Definition | Xử trí đã thực hiện cho lần dị ứng |
| Short | Xử trí đã thực hiện cho lần dị ứng |
| Comments | Nửa sau của cột ghép 'Biểu hiện lâm sàng-xử trí'. Chưa có element trên VNCoreAllergyIntolerance: AdverseEvent và AllergyIntolerance của R4 đều không mang trường biện pháp xử trí — cùng lớp nợ với |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 22. vnAllergyHistoryContentLm.theTheoDoiDiUng | |
| Definition | Một dòng dị nguyên trên thẻ theo dõi dị ứng đã cấp |
| Short | Một dòng dị nguyên trên thẻ theo dõi dị ứng đã cấp |
| Comments | TÁCH KHỎI NHÓM I ngày 07/09/2026 sau phản biện Codex. Bản đầu đặt |
| Control | 0..* |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 24. vnAllergyHistoryContentLm.theTheoDoiDiUng.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 26. vnAllergyHistoryContentLm.theTheoDoiDiUng.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. |
| Short | Additional 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-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()) |
| Slicing | This element introduces a set of slices on vnAllergyHistoryContentLm.theTheoDoiDiUng.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 28. vnAllergyHistoryContentLm.theTheoDoiDiUng.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). |
| Short | Extensions 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| 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 Names | extensions, user content, modifiers |
| Invariants | ele-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()) |
| 30. vnAllergyHistoryContentLm.theTheoDoiDiUng.mucDoChacChan | |
| Definition | Mức độ xác minh: nghi ngờ hay chắc chắn |
| Short | Mức độ xác minh: nghi ngờ hay chắc chắn |
| Comments | Thẻ ở Phụ lục VII đặt hai ô đánh dấu cho MỖI dòng dị nguyên: 'Nghi ngờ □' và 'Chắc chắn □'. HẠ 1..1 XUỐNG 0..1 ngày 07/09/2026 sau phản biện Fable: khoản 6 chỉ buộc thẻ 'ghi rõ TÊN thuốc hoặc dị nguyên gây dị ứng', không buộc đánh dấu mức xác minh; suy 'một dòng không đánh dấu ô nào là dòng chưa hoàn tất' từ hình thức mẫu là cùng lớp lập luận với 'ô in sẵn dấu phẩy nên đòi một chữ số thập phân' đã phải bỏ ở model sàng lọc. Hai ô ấy khớp đúng hai mã đầu của |
| Control | 0..1 |
| Type | code |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 32. vnAllergyHistoryContentLm.tienSuGiaDinh | |
| Definition | Bệnh dị ứng của một thân nhân người bệnh |
| Short | Bệnh dị ứng của một thân nhân người bệnh |
| Comments | Mục 6 hỏi nguyên văn: 'Tiền sử gia đình có bệnh dị ứng nào? (Bố mẹ, con, anh chị em ruột, có ai bị các bệnh dị ứng trên không).' Câu hỏi nêu đích danh bốn quan hệ huyết thống bậc một. Model tách nhóm này thành 0..* để MỖI thân nhân có thể là một dòng riêng — nhưng quan hệ chỉ 0..1, xem chú thích tại |
| Control | 0..* |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 34. vnAllergyHistoryContentLm.tienSuGiaDinh.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 36. vnAllergyHistoryContentLm.tienSuGiaDinh.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. |
| Short | Additional 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-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()) |
| Slicing | This element introduces a set of slices on vnAllergyHistoryContentLm.tienSuGiaDinh.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 38. vnAllergyHistoryContentLm.tienSuGiaDinh.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). |
| Short | Extensions 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. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| 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 Names | extensions, user content, modifiers |
| Invariants | ele-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()) |
| 40. vnAllergyHistoryContentLm.tienSuGiaDinh.quanHeThanNhan | |
| Definition | Quan hệ của thân nhân với người bệnh |
| Short | Quan hệ của thân nhân với người bệnh |
| Comments | HẠ 1..1 XUỐNG 0..1 ngày 07/09/2026 sau phản biện Codex, kèm đính chính lập luận. Bản đầu viết 'thông tin PHẢI quy được về TỪNG thân nhân' và suy ra 1..1 — đó là suy diễn, không phải điều mẫu phiếu đòi. Mục 6 chỉ hỏi một câu: 'Tiền sử gia đình có bệnh dị ứng nào? (Bố mẹ, con, anh chị em ruột, có ai bị các bệnh dị ứng trên không)'. Cụm trong ngoặc là PHẠM VI HỎI, không phải cột ghi; mẫu phiếu không có cột quan hệ và không dặn lập một dòng cho mỗi người. |
| Control | 0..1 |
| Type | code |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 42. vnAllergyHistoryContentLm.tienSuGiaDinh.benhDiUngThanNhan | |
| Definition | Bệnh dị ứng mà thân nhân mắc |
| Short | Bệnh dị ứng mà thân nhân mắc |
| Comments | '…có ai bị các bệnh dị ứng TRÊN không' — chữ 'trên' trỏ ngược lên mục 5, tức cùng danh mục bệnh dị ứng: viêm mũi dị ứng, hen phế quản và các bệnh cùng nhóm. Ghi bệnh gì, không phải ghi 'có' hay 'không'. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 44. vnAllergyHistoryContentLm.benhDiUngCaNhan | |
| Definition | Bệnh dị ứng mà chính người bệnh mắc |
| Short | Bệnh dị ứng mà chính người bệnh mắc |
| Comments | Mục 5 hỏi 'Tiền sử cá nhân có bệnh dị ứng nào? (viêm mũi dị ứng, hen phế quản...)'. Đây là BỆNH, không phải phản ứng với một dị nguyên: hen phế quản là chẩn đoán tồn tại độc lập với việc có tiếp xúc dị nguyên hay không. Trên FHIR nó là Condition, không phải AllergyIntolerance — VNCoreCondition đã có nguồn nghĩa vụ trường riêng nên không nối thêm ánh xạ ở đây. Ghi mục này lại để giữ đủ sáu mục của Phụ lục VI: bỏ nó đi thì lượt rà sau sẽ tưởng mẫu phiếu chỉ có năm mục. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |