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 vnLabRecordContentLm mô hình logic
Guidance on how to interpret the contents of this table can be foundhere
| 0. vnLabRecordContentLm | |
| Definition | Logical model đặc tả các thông tin mà Thông tư 49/2018/TT-BYT (ban hành 28/12/2018) BUỘC phải lưu trong hồ sơ xét nghiệm, cùng yêu cầu tối thiểu về nhãn mẫu bệnh phẩm tại Quyết định 3725/QĐ-BYT — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của nhóm profile bệnh phẩm và báo cáo xét nghiệm. Điều 5 khoản 4 điểm a liệt kê nguyên văn mười ba mục phải lưu: tên xét nghiệm, tên người lấy mẫu bệnh phẩm, loại mẫu bệnh phẩm, thời gian lấy, thời gian tiếp nhận mẫu bệnh phẩm, phương pháp xét nghiệm, kết quả mẫu kiểm tra chất lượng (nếu có), số lô và hạn sử dụng thuốc thử chính, tên người thực hiện xét nghiệm, kết quả, kết luận xét nghiệm, người ký kết quả xét nghiệm. Trong đó chỉ 'kết quả mẫu kiểm tra chất lượng' kèm điều kiện '(nếu có)'; mười hai mục còn lại là nghĩa vụ tuyệt đối. Điều 5 khoản 3 điểm a bổ sung nghĩa vụ ký: người phụ trách phải kiểm tra kết quả và KÝ trước khi trả kết quả cho người bệnh. Điều 5 khoản 4 điểm b ràng buộc vòng đời bệnh phẩm: phần còn lại sau xét nghiệm chỉ được huỷ khi kết quả đã được ký. QĐ 3725/QĐ-BYT mục c yêu cầu mã mẫu xét nghiệm 'được hệ thống phát sinh tự động và duy nhất trên toàn hệ thống', và nhãn mẫu 'tối thiểu phải có thông tin rõ ràng về mã mẫu xét nghiệm'. / Logical model for the laboratory record content required by Circular 49/2018/TT-BYT and the minimum specimen label requirement of Decision 3725/QĐ-BYT. |
| Short | Nội dung bắt buộc của hồ sơ xét nghiệm (TT 49/2018/TT-BYT) — 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. vnLabRecordContentLm.benhPham | |
| Definition | Thông tin mẫu bệnh phẩm phải lưu trong hồ sơ xét nghiệm |
| Short | Thông tin mẫu bệnh phẩm phải lưu trong hồ sơ xét nghiệm |
| Control | 1..1 |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 4. vnLabRecordContentLm.benhPham.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 |
| 6. vnLabRecordContentLm.benhPham.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 vnLabRecordContentLm.benhPham.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 8. vnLabRecordContentLm.benhPham.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()) |
| 10. vnLabRecordContentLm.benhPham.maMauXetNghiem | |
| Definition | Mã mẫu xét nghiệm |
| Short | Mã mẫu xét nghiệm |
| Comments | QĐ 3725/QĐ-BYT mục c: 'Mã mẫu xét nghiệm được hệ thống phát sinh tự động và duy nhất trên toàn hệ thống, được sử dụng trong cả quá trình thực hiện xét nghiệm tại phòng xét nghiệm. Thông tin trong nhãn mẫu xét nghiệm tối thiểu phải có thông tin rõ ràng về mã mẫu xét nghiệm.' Hai tính chất — tự động và DUY NHẤT toàn hệ thống — là ràng buộc về cách cấp mã, không phải về cách lưu; Identifier phải mang system của cơ sở cấp mã để tính duy nhất có nghĩa. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 12. vnLabRecordContentLm.benhPham.tenNguoiLayMau | |
| Definition | Tên người lấy mẫu bệnh phẩm |
| Short | Tên người lấy mẫu bệnh phẩm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 14. vnLabRecordContentLm.benhPham.loaiMauBenhPham | |
| Definition | Loại mẫu bệnh phẩm |
| Short | Loại mẫu bệnh phẩm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 16. vnLabRecordContentLm.benhPham.thoiGianLayMau | |
| Definition | Thời gian lấy mẫu bệnh phẩm |
| Short | Thời gian lấy mẫu bệnh phẩm |
| Control | 1..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 18. vnLabRecordContentLm.benhPham.thoiGianTiepNhanMau | |
| Definition | Thời gian tiếp nhận mẫu bệnh phẩm |
| Short | Thời gian tiếp nhận mẫu bệnh phẩm |
| Comments | Văn bản tách riêng thời gian LẤY và thời gian TIẾP NHẬN — hai mốc khác nhau, khoảng giữa chúng là thời gian vận chuyển mẫu. |
| Control | 1..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 20. vnLabRecordContentLm.baoCaoXetNghiem | |
| Definition | Thông tin kết quả xét nghiệm phải lưu trong hồ sơ |
| Short | Thông tin kết quả xét nghiệm phải lưu trong hồ sơ |
| Comments | Với xét nghiệm giải phẫu bệnh và tế bào học, đích là VNCoreDiagnosticReportPathology — cùng nghĩa vụ, khác profile, theo phạm vi Điều 1 TT 49/2018/TT-BYT. |
| Control | 1..1 |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 22. vnLabRecordContentLm.baoCaoXetNghiem.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 |
| 24. vnLabRecordContentLm.baoCaoXetNghiem.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 vnLabRecordContentLm.baoCaoXetNghiem.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 26. vnLabRecordContentLm.baoCaoXetNghiem.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()) |
| 28. vnLabRecordContentLm.baoCaoXetNghiem.tenXetNghiem | |
| Definition | Tên xét nghiệm |
| Short | Tên xét nghiệm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 30. vnLabRecordContentLm.baoCaoXetNghiem.tenNguoiThucHien | |
| Definition | Tên người thực hiện xét nghiệm |
| Short | Tên người thực hiện xét nghiệm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 32. vnLabRecordContentLm.baoCaoXetNghiem.ketQua | |
| Definition | Kết quả xét nghiệm |
| Short | Kết quả xét nghiệm |
| Comments | Kết quả từng chỉ số nằm ở các Observation được DiagnosticReport tham chiếu qua |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 34. vnLabRecordContentLm.baoCaoXetNghiem.ketLuanXetNghiem | |
| Definition | Kết luận xét nghiệm |
| Short | Kết luận xét nghiệm |
| Comments | Văn bản tách 'kết quả' và 'kết luận' thành hai mục riêng: kết quả là số đo, kết luận là nhận định của người có thẩm quyền trên số đo ấy. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 36. vnLabRecordContentLm.baoCaoXetNghiem.thoiDiemKyKetQua | |
| Definition | Thời điểm ký kết quả xét nghiệm |
| Short | Thời điểm ký kết quả xét nghiệm |
| Comments | Sửa 06/09/2026 sau phản biện Fable: bản đầu chỉ trỏ |
| Control | 1..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 38. vnLabRecordContentLm.baoCaoXetNghiem.phuongPhapXetNghiem | |
| Definition | Phương pháp xét nghiệm |
| Short | Phương pháp xét nghiệm |
| Comments | Phương pháp gắn với từng phép đo nên đích tự nhiên là |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 40. vnLabRecordContentLm.baoCaoXetNghiem.ketQuaMauKiemTraChatLuong | |
| Definition | Kết quả mẫu kiểm tra chất lượng |
| Short | Kết quả mẫu kiểm tra chất lượng |
| Comments | Mục DUY NHẤT trong danh sách của Điều 5 khoản 4 điểm a kèm điều kiện '(nếu có)' — nên min = 0. Mọi mục khác trong cùng câu là nghĩa vụ tuyệt đối. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 42. vnLabRecordContentLm.thuocThuChinh | |
| Definition | Thông tin thuốc thử chính phải lưu trong hồ sơ xét nghiệm |
| Short | Thông tin thuốc thử chính phải lưu trong hồ sơ xét nghiệm |
| Comments | Hai mục này là nghĩa vụ tuyệt đối của văn bản nhưng KHÔNG có profile đích trong 0.10.0: chúng nói về lô thuốc thử dùng cho phép xét nghiệm, không phải về bệnh phẩm hay báo cáo. Để trống đích thay vì gán bừa vào Device hay Substance — gán sai đích còn tệ hơn không gán, vì cổng sẽ coi là đã đối chiếu. Ghi nợ tại đây để chu kỳ sau dựng profile quản lý thuốc thử. |
| Control | 1..1 |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 44. vnLabRecordContentLm.thuocThuChinh.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 |
| 46. vnLabRecordContentLm.thuocThuChinh.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 vnLabRecordContentLm.thuocThuChinh.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 48. vnLabRecordContentLm.thuocThuChinh.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()) |
| 50. vnLabRecordContentLm.thuocThuChinh.soLo | |
| Definition | Số lô thuốc thử chính |
| Short | Số lô thuốc thử chính |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 52. vnLabRecordContentLm.thuocThuChinh.hanSuDung | |
| Definition | Hạn sử dụng thuốc thử chính |
| Short | Hạn sử dụng thuốc thử chính |
| Control | 1..1 |
| Type | date |
| 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. vnLabRecordContentLm | |
| Definition | Logical model đặc tả các thông tin mà Thông tư 49/2018/TT-BYT (ban hành 28/12/2018) BUỘC phải lưu trong hồ sơ xét nghiệm, cùng yêu cầu tối thiểu về nhãn mẫu bệnh phẩm tại Quyết định 3725/QĐ-BYT — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của nhóm profile bệnh phẩm và báo cáo xét nghiệm. Điều 5 khoản 4 điểm a liệt kê nguyên văn mười ba mục phải lưu: tên xét nghiệm, tên người lấy mẫu bệnh phẩm, loại mẫu bệnh phẩm, thời gian lấy, thời gian tiếp nhận mẫu bệnh phẩm, phương pháp xét nghiệm, kết quả mẫu kiểm tra chất lượng (nếu có), số lô và hạn sử dụng thuốc thử chính, tên người thực hiện xét nghiệm, kết quả, kết luận xét nghiệm, người ký kết quả xét nghiệm. Trong đó chỉ 'kết quả mẫu kiểm tra chất lượng' kèm điều kiện '(nếu có)'; mười hai mục còn lại là nghĩa vụ tuyệt đối. Điều 5 khoản 3 điểm a bổ sung nghĩa vụ ký: người phụ trách phải kiểm tra kết quả và KÝ trước khi trả kết quả cho người bệnh. Điều 5 khoản 4 điểm b ràng buộc vòng đời bệnh phẩm: phần còn lại sau xét nghiệm chỉ được huỷ khi kết quả đã được ký. QĐ 3725/QĐ-BYT mục c yêu cầu mã mẫu xét nghiệm 'được hệ thống phát sinh tự động và duy nhất trên toàn hệ thống', và nhãn mẫu 'tối thiểu phải có thông tin rõ ràng về mã mẫu xét nghiệm'. / Logical model for the laboratory record content required by Circular 49/2018/TT-BYT and the minimum specimen label requirement of Decision 3725/QĐ-BYT. |
| Short | Nội dung bắt buộc của hồ sơ xét nghiệm (TT 49/2018/TT-BYT) — Logical Model |
| Logical Model | Instances of this logical model are not marked to be the target of a Reference |
| 2. vnLabRecordContentLm.benhPham | |
| Definition | Thông tin mẫu bệnh phẩm phải lưu trong hồ sơ xét nghiệm |
| Short | Thông tin mẫu bệnh phẩm phải lưu trong hồ sơ xét nghiệm |
| Control | 1..1 |
| Type | BackboneElement |
| 4. vnLabRecordContentLm.benhPham.maMauXetNghiem | |
| Definition | Mã mẫu xét nghiệm |
| Short | Mã mẫu xét nghiệm |
| Comments | QĐ 3725/QĐ-BYT mục c: 'Mã mẫu xét nghiệm được hệ thống phát sinh tự động và duy nhất trên toàn hệ thống, được sử dụng trong cả quá trình thực hiện xét nghiệm tại phòng xét nghiệm. Thông tin trong nhãn mẫu xét nghiệm tối thiểu phải có thông tin rõ ràng về mã mẫu xét nghiệm.' Hai tính chất — tự động và DUY NHẤT toàn hệ thống — là ràng buộc về cách cấp mã, không phải về cách lưu; Identifier phải mang system của cơ sở cấp mã để tính duy nhất có nghĩa. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 6. vnLabRecordContentLm.benhPham.tenNguoiLayMau | |
| Definition | Tên người lấy mẫu bệnh phẩm |
| Short | Tên người lấy mẫu bệnh phẩm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 8. vnLabRecordContentLm.benhPham.loaiMauBenhPham | |
| Definition | Loại mẫu bệnh phẩm |
| Short | Loại mẫu bệnh phẩm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 10. vnLabRecordContentLm.benhPham.thoiGianLayMau | |
| Definition | Thời gian lấy mẫu bệnh phẩm |
| Short | Thời gian lấy mẫu bệnh phẩm |
| Control | 1..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 12. vnLabRecordContentLm.benhPham.thoiGianTiepNhanMau | |
| Definition | Thời gian tiếp nhận mẫu bệnh phẩm |
| Short | Thời gian tiếp nhận mẫu bệnh phẩm |
| Comments | Văn bản tách riêng thời gian LẤY và thời gian TIẾP NHẬN — hai mốc khác nhau, khoảng giữa chúng là thời gian vận chuyển mẫu. |
| Control | 1..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 14. vnLabRecordContentLm.baoCaoXetNghiem | |
| Definition | Thông tin kết quả xét nghiệm phải lưu trong hồ sơ |
| Short | Thông tin kết quả xét nghiệm phải lưu trong hồ sơ |
| Comments | Với xét nghiệm giải phẫu bệnh và tế bào học, đích là VNCoreDiagnosticReportPathology — cùng nghĩa vụ, khác profile, theo phạm vi Điều 1 TT 49/2018/TT-BYT. |
| Control | 1..1 |
| Type | BackboneElement |
| 16. vnLabRecordContentLm.baoCaoXetNghiem.tenXetNghiem | |
| Definition | Tên xét nghiệm |
| Short | Tên xét nghiệm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 18. vnLabRecordContentLm.baoCaoXetNghiem.tenNguoiThucHien | |
| Definition | Tên người thực hiện xét nghiệm |
| Short | Tên người thực hiện xét nghiệm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 20. vnLabRecordContentLm.baoCaoXetNghiem.ketQua | |
| Definition | Kết quả xét nghiệm |
| Short | Kết quả xét nghiệm |
| Comments | Kết quả từng chỉ số nằm ở các Observation được DiagnosticReport tham chiếu qua |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 22. vnLabRecordContentLm.baoCaoXetNghiem.ketLuanXetNghiem | |
| Definition | Kết luận xét nghiệm |
| Short | Kết luận xét nghiệm |
| Comments | Văn bản tách 'kết quả' và 'kết luận' thành hai mục riêng: kết quả là số đo, kết luận là nhận định của người có thẩm quyền trên số đo ấy. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 24. vnLabRecordContentLm.baoCaoXetNghiem.thoiDiemKyKetQua | |
| Definition | Thời điểm ký kết quả xét nghiệm |
| Short | Thời điểm ký kết quả xét nghiệm |
| Comments | Sửa 06/09/2026 sau phản biện Fable: bản đầu chỉ trỏ |
| Control | 1..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 26. vnLabRecordContentLm.baoCaoXetNghiem.phuongPhapXetNghiem | |
| Definition | Phương pháp xét nghiệm |
| Short | Phương pháp xét nghiệm |
| Comments | Phương pháp gắn với từng phép đo nên đích tự nhiên là |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 28. vnLabRecordContentLm.baoCaoXetNghiem.ketQuaMauKiemTraChatLuong | |
| Definition | Kết quả mẫu kiểm tra chất lượng |
| Short | Kết quả mẫu kiểm tra chất lượng |
| Comments | Mục DUY NHẤT trong danh sách của Điều 5 khoản 4 điểm a kèm điều kiện '(nếu có)' — nên min = 0. Mọi mục khác trong cùng câu là nghĩa vụ tuyệt đối. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 30. vnLabRecordContentLm.thuocThuChinh | |
| Definition | Thông tin thuốc thử chính phải lưu trong hồ sơ xét nghiệm |
| Short | Thông tin thuốc thử chính phải lưu trong hồ sơ xét nghiệm |
| Comments | Hai mục này là nghĩa vụ tuyệt đối của văn bản nhưng KHÔNG có profile đích trong 0.10.0: chúng nói về lô thuốc thử dùng cho phép xét nghiệm, không phải về bệnh phẩm hay báo cáo. Để trống đích thay vì gán bừa vào Device hay Substance — gán sai đích còn tệ hơn không gán, vì cổng sẽ coi là đã đối chiếu. Ghi nợ tại đây để chu kỳ sau dựng profile quản lý thuốc thử. |
| Control | 1..1 |
| Type | BackboneElement |
| 32. vnLabRecordContentLm.thuocThuChinh.soLo | |
| Definition | Số lô thuốc thử chính |
| Short | Số lô thuốc thử chính |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 34. vnLabRecordContentLm.thuocThuChinh.hanSuDung | |
| Definition | Hạn sử dụng thuốc thử chính |
| Short | Hạn sử dụng thuốc thử chính |
| Control | 1..1 |
| Type | date |
| 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. vnLabRecordContentLm | |
| Definition | Logical model đặc tả các thông tin mà Thông tư 49/2018/TT-BYT (ban hành 28/12/2018) BUỘC phải lưu trong hồ sơ xét nghiệm, cùng yêu cầu tối thiểu về nhãn mẫu bệnh phẩm tại Quyết định 3725/QĐ-BYT — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của nhóm profile bệnh phẩm và báo cáo xét nghiệm. Điều 5 khoản 4 điểm a liệt kê nguyên văn mười ba mục phải lưu: tên xét nghiệm, tên người lấy mẫu bệnh phẩm, loại mẫu bệnh phẩm, thời gian lấy, thời gian tiếp nhận mẫu bệnh phẩm, phương pháp xét nghiệm, kết quả mẫu kiểm tra chất lượng (nếu có), số lô và hạn sử dụng thuốc thử chính, tên người thực hiện xét nghiệm, kết quả, kết luận xét nghiệm, người ký kết quả xét nghiệm. Trong đó chỉ 'kết quả mẫu kiểm tra chất lượng' kèm điều kiện '(nếu có)'; mười hai mục còn lại là nghĩa vụ tuyệt đối. Điều 5 khoản 3 điểm a bổ sung nghĩa vụ ký: người phụ trách phải kiểm tra kết quả và KÝ trước khi trả kết quả cho người bệnh. Điều 5 khoản 4 điểm b ràng buộc vòng đời bệnh phẩm: phần còn lại sau xét nghiệm chỉ được huỷ khi kết quả đã được ký. QĐ 3725/QĐ-BYT mục c yêu cầu mã mẫu xét nghiệm 'được hệ thống phát sinh tự động và duy nhất trên toàn hệ thống', và nhãn mẫu 'tối thiểu phải có thông tin rõ ràng về mã mẫu xét nghiệm'. / Logical model for the laboratory record content required by Circular 49/2018/TT-BYT and the minimum specimen label requirement of Decision 3725/QĐ-BYT. |
| Short | Nội dung bắt buộc của hồ sơ xét nghiệm (TT 49/2018/TT-BYT) — 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. vnLabRecordContentLm.benhPham | |
| Definition | Thông tin mẫu bệnh phẩm phải lưu trong hồ sơ xét nghiệm |
| Short | Thông tin mẫu bệnh phẩm phải lưu trong hồ sơ xét nghiệm |
| Control | 1..1 |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 4. vnLabRecordContentLm.benhPham.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 |
| 6. vnLabRecordContentLm.benhPham.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 vnLabRecordContentLm.benhPham.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 8. vnLabRecordContentLm.benhPham.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()) |
| 10. vnLabRecordContentLm.benhPham.maMauXetNghiem | |
| Definition | Mã mẫu xét nghiệm |
| Short | Mã mẫu xét nghiệm |
| Comments | QĐ 3725/QĐ-BYT mục c: 'Mã mẫu xét nghiệm được hệ thống phát sinh tự động và duy nhất trên toàn hệ thống, được sử dụng trong cả quá trình thực hiện xét nghiệm tại phòng xét nghiệm. Thông tin trong nhãn mẫu xét nghiệm tối thiểu phải có thông tin rõ ràng về mã mẫu xét nghiệm.' Hai tính chất — tự động và DUY NHẤT toàn hệ thống — là ràng buộc về cách cấp mã, không phải về cách lưu; Identifier phải mang system của cơ sở cấp mã để tính duy nhất có nghĩa. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 12. vnLabRecordContentLm.benhPham.tenNguoiLayMau | |
| Definition | Tên người lấy mẫu bệnh phẩm |
| Short | Tên người lấy mẫu bệnh phẩm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 14. vnLabRecordContentLm.benhPham.loaiMauBenhPham | |
| Definition | Loại mẫu bệnh phẩm |
| Short | Loại mẫu bệnh phẩm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 16. vnLabRecordContentLm.benhPham.thoiGianLayMau | |
| Definition | Thời gian lấy mẫu bệnh phẩm |
| Short | Thời gian lấy mẫu bệnh phẩm |
| Control | 1..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 18. vnLabRecordContentLm.benhPham.thoiGianTiepNhanMau | |
| Definition | Thời gian tiếp nhận mẫu bệnh phẩm |
| Short | Thời gian tiếp nhận mẫu bệnh phẩm |
| Comments | Văn bản tách riêng thời gian LẤY và thời gian TIẾP NHẬN — hai mốc khác nhau, khoảng giữa chúng là thời gian vận chuyển mẫu. |
| Control | 1..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 20. vnLabRecordContentLm.baoCaoXetNghiem | |
| Definition | Thông tin kết quả xét nghiệm phải lưu trong hồ sơ |
| Short | Thông tin kết quả xét nghiệm phải lưu trong hồ sơ |
| Comments | Với xét nghiệm giải phẫu bệnh và tế bào học, đích là VNCoreDiagnosticReportPathology — cùng nghĩa vụ, khác profile, theo phạm vi Điều 1 TT 49/2018/TT-BYT. |
| Control | 1..1 |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 22. vnLabRecordContentLm.baoCaoXetNghiem.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 |
| 24. vnLabRecordContentLm.baoCaoXetNghiem.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 vnLabRecordContentLm.baoCaoXetNghiem.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 26. vnLabRecordContentLm.baoCaoXetNghiem.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()) |
| 28. vnLabRecordContentLm.baoCaoXetNghiem.tenXetNghiem | |
| Definition | Tên xét nghiệm |
| Short | Tên xét nghiệm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 30. vnLabRecordContentLm.baoCaoXetNghiem.tenNguoiThucHien | |
| Definition | Tên người thực hiện xét nghiệm |
| Short | Tên người thực hiện xét nghiệm |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 32. vnLabRecordContentLm.baoCaoXetNghiem.ketQua | |
| Definition | Kết quả xét nghiệm |
| Short | Kết quả xét nghiệm |
| Comments | Kết quả từng chỉ số nằm ở các Observation được DiagnosticReport tham chiếu qua |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 34. vnLabRecordContentLm.baoCaoXetNghiem.ketLuanXetNghiem | |
| Definition | Kết luận xét nghiệm |
| Short | Kết luận xét nghiệm |
| Comments | Văn bản tách 'kết quả' và 'kết luận' thành hai mục riêng: kết quả là số đo, kết luận là nhận định của người có thẩm quyền trên số đo ấy. |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 36. vnLabRecordContentLm.baoCaoXetNghiem.thoiDiemKyKetQua | |
| Definition | Thời điểm ký kết quả xét nghiệm |
| Short | Thời điểm ký kết quả xét nghiệm |
| Comments | Sửa 06/09/2026 sau phản biện Fable: bản đầu chỉ trỏ |
| Control | 1..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 38. vnLabRecordContentLm.baoCaoXetNghiem.phuongPhapXetNghiem | |
| Definition | Phương pháp xét nghiệm |
| Short | Phương pháp xét nghiệm |
| Comments | Phương pháp gắn với từng phép đo nên đích tự nhiên là |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 40. vnLabRecordContentLm.baoCaoXetNghiem.ketQuaMauKiemTraChatLuong | |
| Definition | Kết quả mẫu kiểm tra chất lượng |
| Short | Kết quả mẫu kiểm tra chất lượng |
| Comments | Mục DUY NHẤT trong danh sách của Điều 5 khoản 4 điểm a kèm điều kiện '(nếu có)' — nên min = 0. Mọi mục khác trong cùng câu là nghĩa vụ tuyệt đối. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 42. vnLabRecordContentLm.thuocThuChinh | |
| Definition | Thông tin thuốc thử chính phải lưu trong hồ sơ xét nghiệm |
| Short | Thông tin thuốc thử chính phải lưu trong hồ sơ xét nghiệm |
| Comments | Hai mục này là nghĩa vụ tuyệt đối của văn bản nhưng KHÔNG có profile đích trong 0.10.0: chúng nói về lô thuốc thử dùng cho phép xét nghiệm, không phải về bệnh phẩm hay báo cáo. Để trống đích thay vì gán bừa vào Device hay Substance — gán sai đích còn tệ hơn không gán, vì cổng sẽ coi là đã đối chiếu. Ghi nợ tại đây để chu kỳ sau dựng profile quản lý thuốc thử. |
| Control | 1..1 |
| Type | BackboneElement |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 44. vnLabRecordContentLm.thuocThuChinh.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 |
| 46. vnLabRecordContentLm.thuocThuChinh.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 vnLabRecordContentLm.thuocThuChinh.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 48. vnLabRecordContentLm.thuocThuChinh.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()) |
| 50. vnLabRecordContentLm.thuocThuChinh.soLo | |
| Definition | Số lô thuốc thử chính |
| Short | Số lô thuốc thử chính |
| Control | 1..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| 52. vnLabRecordContentLm.thuocThuChinh.hanSuDung | |
| Definition | Hạn sử dụng thuốc thử chính |
| Short | Hạn sử dụng thuốc thử chính |
| Control | 1..1 |
| Type | date |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |