HL7 Vietnam VN Core FHIR Implementation Guide

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

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

Hồ sơ tài nguyên: Tài liệu y tế VN Core — VN Core DocumentReference Profile

URL chính thức: http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-document-reference Phiên bản: 0.10.0
Computable Name: VNCoreDocumentReference
Định danh khác: OID:2.25.161089673617632664299011809196868855799.42.62

Profile DocumentReference cho Việt Nam. Dùng cho tham chiếu bệnh án điện tử, phiếu kết quả xét nghiệm, phim ảnh CĐHA, đơn thuốc điện tử, giấy chuyển viện, v.v. Căn cứ:

  • Luật 20/2023/QH15 — Luật Giao dịch điện tử, đọc theo sửa đổi tại Luật 60/2024/QH15
  • Luật 60/2024/QH15 — Luật Dữ liệu, nền tảng quản trị dữ liệu số
  • TT 13/2025/TT-BYT (06/6/2025) — Bệnh án điện tử, hiệu lực 21/7/2025
  • NĐ 102/2025/NĐ-CP (13/5/2025) — Quản lý dữ liệu y tế số
  • NĐ 278/2025/NĐ-CP — ban hành 22/10/2025, hiệu lực từ ngày ký 22/10/2025 — Kết nối, chia sẻ dữ liệu bắt buộc; chuẩn hoá và thống nhất kết nối qua Nền tảng chia sẻ, điều phối dữ liệu chậm nhất 31/12/2026
  • QĐ 11/2026/QĐ-TTg (28/3/2026) — Danh mục CSDL quốc gia, gồm CSDL quốc gia về y tế
  • Luật KCB 2023 (15/2023/QH15) — Hồ sơ bệnh án
  • NĐ 23/2025/NĐ-CP — Chữ ký điện tử và dịch vụ tin cậy
  • NĐ 68/2024/NĐ-CP — Chữ ký số chuyên dùng công vụ khi áp dụng cho cơ sở y tế công lập
  • NĐ 137/2024/NĐ-CP — Chỉ khi giao dịch thuộc phạm vi cơ quan nhà nước/hệ thống thông tin phục vụ giao dịch điện tử
  • QĐ 1332/QĐ-BYT — Sổ sức khoẻ điện tử trên VNeID
  • Luật 91/2025/QH15 — BVDLCN: dữ liệu y tế = DLCN nhạy cảm

Ranh giới: profile này biểu diễn metadata/tệp được tham chiếu. Từ 0.10.0, bằng chứng chuyển đổi giấy ↔ điện tử được mã hoá bằng VNCoreExtPaperConversion — bốn phần tử bám đúng bốn điểm của Luật Giao dịch điện tử 20/2023/QH15 Điều 12 khoản 1: toàn vẹn thông tin, truy cập được để tham chiếu, ký hiệu riêng kèm thông tin bên chuyển đổi, và chữ ký số khi bản gốc là giấy phép/chứng nhận/chứng chỉ/văn bản xác nhận, chấp thuận.

authenticator KHÔNG thay được extension này: nó nói ai xác thực nội dung, không nói ai thực hiện chuyển đổi và bằng cách nào. Một tệp scan cũng không tự chứng minh mình là bản chuyển đổi hợp lệ. Chuỗi tác nhân và bằng chứng chữ ký chi tiết vẫn dùng Provenance khi hợp đồng trao đổi yêu cầu.

Usages:

You can also check for usages in the FHIR IG Statistics

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

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: vn-document-number-issuer-scoped
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:paperConversion SOC 0..1 (Complex) Bằng chứng chuyển đổi giấy ↔ điện tử theo Luật 20/2023/QH15 Điều 12
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-paper-conversion
Constraints: vn-paper-conversion-official-doc-signature
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... type SOΣ 1..1 CodeableConcept Loại tài liệu y tế
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... category SOΣ 0..* CodeableConcept Phân loại tài liệu (bệnh án, XN, CĐHA, đơn thuốc...)
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... subject SOΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Bệnh nhân
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... date SOΣ 0..1 instant Thời điểm tạo tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... author SOΣ 0..* Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Vai trò nhân viên y tế VN Core — VN Core PractitionerRole Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Tác giả tài liệu (bác sĩ, NVYT, CSKCB)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... authenticator 0..1 Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Người xác nhận tài liệu; bằng chứng chữ ký số nằm ngoài Reference này
... custodian SO 0..1 Reference(Cơ sở y tế VN Core — VN Core Organization Profile) Cơ sở y tế lưu trữ (theo TT 13/2025/TT-BYT)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... description SOΣ 0..1 string Mô tả nội dung tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... content SOΣ 1..* BackboneElement Nội dung tài liệu (attachment hoặc URL)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment SΣ 1..1 Attachment File đính kèm (PDF, CDA, hình ảnh DICOM, v.v.)
..... contentType SΣ 1..1 code MIME type (application/pdf, text/xml, image/dicom...)
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
Example General: text/plain; charset=UTF-8, image/png
... context SOΣ 0..1 BackboneElement Ngữ cảnh lâm sàng
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... encounter S 0..* Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) Lượt khám liên quan
.... period SΣ 0..1 Period Thời gian hiệu lực tài liệu

doco Documentation for this format
NameBên yêu cầu dữ liệu lõi (Data Requester)Kho hồ sơ EMR (Repository)Bên đáp ứng dữ liệu lõi (Data Responder)Ứng dụng người dân (Citizen App)Nguồn tạo hồ sơ lâm sàng (Document Source)doco
.. DocumentReference
... Slices for extension
.... extension:paperConversion
... status
... type
... subject
... date
... author
... custodian
... description
... content
... context

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base preferred Document Type Value Set 📍4.0.1 FHIR Std.
DocumentReference.category Base example Document Class Value Set 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.contentType Base required MimeType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error DocumentReference If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DocumentReference If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DocumentReference A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
vn-document-number-issuer-scoped error DocumentReference Số văn bản nội bộ ghi dưới URI dùng tạm cấp quốc gia (http://fhir.hl7.org.vn/core/sid/document-number) phải kèm `assigner` chỉ rõ cơ sở cấp mã; khuyến nghị chính là mỗi cơ sở công bố URI riêng. A local document number recorded under the shared national placeholder URI SHALL name its assigning facility; per-facility namespace URIs are preferred. identifier.where(system = 'http://fhir.hl7.org.vn/core/sid/document-number').all(assigner.exists())
vn-paper-conversion-official-doc-signature error DocumentReference.extension:paperConversion Khi tài liệu giấy được chuyển đổi là giấy phép, giấy chứng nhận, chứng chỉ, văn bản xác nhận hoặc văn bản chấp thuận do cơ quan, tổ chức có thẩm quyền phát hành thì bản điện tử phải có chữ ký số của bên thực hiện chuyển đổi — Luật 20/2023/QH15 Điều 12 khoản 1 điểm d. Converting an official credential SHALL carry the converter's digital signature. extension.where(url = 'officialDocument').value.ofType(boolean) = true implies extension.where(url = 'signatureEvidence').exists()

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: vn-document-number-issuer-scoped
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:paperConversion SO 0..1 (Complex) Bằng chứng chuyển đổi giấy ↔ điện tử theo Luật 20/2023/QH15 Điều 12
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-paper-conversion
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... status SO 1..1 code Trạng thái tài liệu (current | superseded | entered-in-error)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... type SO 1..1 CodeableConcept Loại tài liệu y tế
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... subject SO 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Bệnh nhân
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... date SO 0..1 instant Thời điểm tạo tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... author SO 0..* Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Vai trò nhân viên y tế VN Core — VN Core PractitionerRole Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Tác giả tài liệu (bác sĩ, NVYT, CSKCB)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... authenticator 0..1 Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Người xác nhận tài liệu; bằng chứng chữ ký số nằm ngoài Reference này
... custodian SO 0..1 Reference(Cơ sở y tế VN Core — VN Core Organization Profile) Cơ sở y tế lưu trữ (theo TT 13/2025/TT-BYT)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... description SO 0..1 string Mô tả nội dung tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... content SO 1..* BackboneElement Nội dung tài liệu (attachment hoặc URL)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... attachment S 1..1 Attachment File đính kèm (PDF, CDA, hình ảnh DICOM, v.v.)
..... contentType S 1..1 code MIME type (application/pdf, text/xml, image/dicom...)
... context SO 0..1 BackboneElement Ngữ cảnh lâm sàng
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... encounter S 0..* Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) Lượt khám liên quan
.... period S 0..1 Period Thời gian hiệu lực tài liệu

doco Documentation for this format
NameBên yêu cầu dữ liệu lõi (Data Requester)Kho hồ sơ EMR (Repository)Bên đáp ứng dữ liệu lõi (Data Responder)Ứng dụng người dân (Citizen App)Nguồn tạo hồ sơ lâm sàng (Document Source)doco
.. DocumentReference
... Slices for extension
.... extension:paperConversion
... status
... type
... subject
... date
... author
... custodian
... description
... content
... context

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
vn-document-number-issuer-scoped error DocumentReference Số văn bản nội bộ ghi dưới URI dùng tạm cấp quốc gia (http://fhir.hl7.org.vn/core/sid/document-number) phải kèm `assigner` chỉ rõ cơ sở cấp mã; khuyến nghị chính là mỗi cơ sở công bố URI riêng. A local document number recorded under the shared national placeholder URI SHALL name its assigning facility; per-facility namespace URIs are preferred. identifier.where(system = 'http://fhir.hl7.org.vn/core/sid/document-number').all(assigner.exists())
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: vn-document-number-issuer-scoped
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:paperConversion SOC 0..1 (Complex) Bằng chứng chuyển đổi giấy ↔ điện tử theo Luật 20/2023/QH15 Điều 12
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-paper-conversion
Constraints: vn-paper-conversion-official-doc-signature
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... masterIdentifier Σ 0..1 Identifier Master Version Specific Identifier
... identifier Σ 0..* Identifier Other identifiers for the document
... status ?!SOΣ 1..1 code Trạng thái tài liệu (current | superseded | entered-in-error)
Binding: DocumentReferenceStatus (required): The status of the document reference.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... docStatus Σ 0..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.
... type SOΣ 1..1 CodeableConcept Loại tài liệu y tế
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... category SOΣ 0..* CodeableConcept Phân loại tài liệu (bệnh án, XN, CĐHA, đơn thuốc...)
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... subject SOΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Bệnh nhân
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... date SOΣ 0..1 instant Thời điểm tạo tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... author SOΣ 0..* Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Vai trò nhân viên y tế VN Core — VN Core PractitionerRole Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Tác giả tài liệu (bác sĩ, NVYT, CSKCB)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... authenticator 0..1 Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Người xác nhận tài liệu; bằng chứng chữ ký số nằm ngoài Reference này
... custodian SO 0..1 Reference(Cơ sở y tế VN Core — VN Core Organization Profile) Cơ sở y tế lưu trữ (theo TT 13/2025/TT-BYT)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... relatesTo Σ 0..* BackboneElement Relationships to other documents
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
.... target Σ 1..1 Reference(DocumentReference) Target of the relationship
... description SOΣ 0..1 string Mô tả nội dung tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... securityLabel Σ 0..* CodeableConcept Document security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
... content SOΣ 1..* BackboneElement Nội dung tài liệu (attachment hoặc URL)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment SΣ 1..1 Attachment File đính kèm (PDF, CDA, hình ảnh DICOM, v.v.)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ 1..1 code MIME type (application/pdf, text/xml, image/dicom...)
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
Example General: text/plain; charset=UTF-8, image/png
..... language Σ 0..1 code Human language of the content (BCP-47)
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding

Example General: en-AU
..... data 0..1 base64Binary Data inline, base64ed
..... url Σ 0..1 url Uri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ 0..1 unsignedInt Number of bytes of content (if url provided)
..... hash Σ 0..1 base64Binary Hash of the data (sha-1, base64ed)
..... title Σ 0..1 string Label to display in place of the data
Example General: Official Corporate Logo
..... creation Σ 0..1 dateTime Date attachment was first created
.... format Σ 0..1 Coding Format/content rules for the document
Binding: DocumentReferenceFormatCodeSet (preferred): Document Format Codes.
... context SOΣ 0..1 BackboneElement Ngữ cảnh lâm sàng
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... encounter S 0..* Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) Lượt khám liên quan
.... event 0..* CodeableConcept Main clinical acts documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
.... period SΣ 0..1 Period Thời gian hiệu lực tài liệu
.... facilityType 0..1 CodeableConcept Kind of facility where patient was seen
Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.
.... practiceSetting 0..1 CodeableConcept Additional details about where the content was created (e.g. clinical specialty)
Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).
.... sourcePatientInfo 0..1 Reference(Patient) Patient demographics from source
.... related 0..* Reference(Resource) Related identifiers or resources

doco Documentation for this format
NameBên yêu cầu dữ liệu lõi (Data Requester)Kho hồ sơ EMR (Repository)Bên đáp ứng dữ liệu lõi (Data Responder)Ứng dụng người dân (Citizen App)Nguồn tạo hồ sơ lâm sàng (Document Source)doco
.. DocumentReference
... Slices for extension
.... extension:paperConversion
... status
... type
... subject
... date
... author
... custodian
... description
... content
... context

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.docStatus Base required CompositionStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base preferred Document Type Value Set 📍4.0.1 FHIR Std.
DocumentReference.category Base example Document Class Value Set 📍4.0.1 FHIR Std.
DocumentReference.relatesTo.​code Base required DocumentRelationshipType 📍4.0.1 FHIR Std.
DocumentReference.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.contentType Base required MimeType 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DocumentReference.content.​format Base preferred DocumentReference Format Code Set 📍4.0.1 FHIR Std.
DocumentReference.context.​event Base example v3 Code System ActCode 📦3.0.0 THO v7.2
DocumentReference.context.​facilityType Base example Facility Type Code Value Set 📍4.0.1 FHIR Std.
DocumentReference.context.​practiceSetting Base example Practice Setting Code Value Set 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error DocumentReference If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DocumentReference If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DocumentReference A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
vn-document-number-issuer-scoped error DocumentReference Số văn bản nội bộ ghi dưới URI dùng tạm cấp quốc gia (http://fhir.hl7.org.vn/core/sid/document-number) phải kèm `assigner` chỉ rõ cơ sở cấp mã; khuyến nghị chính là mỗi cơ sở công bố URI riêng. A local document number recorded under the shared national placeholder URI SHALL name its assigning facility; per-facility namespace URIs are preferred. identifier.where(system = 'http://fhir.hl7.org.vn/core/sid/document-number').all(assigner.exists())
vn-paper-conversion-official-doc-signature error DocumentReference.extension:paperConversion Khi tài liệu giấy được chuyển đổi là giấy phép, giấy chứng nhận, chứng chỉ, văn bản xác nhận hoặc văn bản chấp thuận do cơ quan, tổ chức có thẩm quyền phát hành thì bản điện tử phải có chữ ký số của bên thực hiện chuyển đổi — Luật 20/2023/QH15 Điều 12 khoản 1 điểm d. Converting an official credential SHALL carry the converter's digital signature. extension.where(url = 'officialDocument').value.ofType(boolean) = true implies extension.where(url = 'signatureEvidence').exists()
NameBên yêu cầu dữ liệu lõi (Data Requester)Kho hồ sơ EMR (Repository)Bên đáp ứng dữ liệu lõi (Data Responder)Ứng dụng người dân (Citizen App)Nguồn tạo hồ sơ lâm sàng (Document Source)doco
.. DocumentReference
... Slices for extension
.... extension:paperConversion
... status
... type
... subject
... date
... author
... custodian
... description
... content
... context

doco Documentation for this format

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: vn-document-number-issuer-scoped
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:paperConversion SOC 0..1 (Complex) Bằng chứng chuyển đổi giấy ↔ điện tử theo Luật 20/2023/QH15 Điều 12
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-paper-conversion
Constraints: vn-paper-conversion-official-doc-signature
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... type SOΣ 1..1 CodeableConcept Loại tài liệu y tế
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... category SOΣ 0..* CodeableConcept Phân loại tài liệu (bệnh án, XN, CĐHA, đơn thuốc...)
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... subject SOΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Bệnh nhân
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... date SOΣ 0..1 instant Thời điểm tạo tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... author SOΣ 0..* Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Vai trò nhân viên y tế VN Core — VN Core PractitionerRole Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Tác giả tài liệu (bác sĩ, NVYT, CSKCB)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... authenticator 0..1 Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Người xác nhận tài liệu; bằng chứng chữ ký số nằm ngoài Reference này
... custodian SO 0..1 Reference(Cơ sở y tế VN Core — VN Core Organization Profile) Cơ sở y tế lưu trữ (theo TT 13/2025/TT-BYT)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... description SOΣ 0..1 string Mô tả nội dung tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... content SOΣ 1..* BackboneElement Nội dung tài liệu (attachment hoặc URL)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment SΣ 1..1 Attachment File đính kèm (PDF, CDA, hình ảnh DICOM, v.v.)
..... contentType SΣ 1..1 code MIME type (application/pdf, text/xml, image/dicom...)
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
Example General: text/plain; charset=UTF-8, image/png
... context SOΣ 0..1 BackboneElement Ngữ cảnh lâm sàng
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... encounter S 0..* Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) Lượt khám liên quan
.... period SΣ 0..1 Period Thời gian hiệu lực tài liệu

doco Documentation for this format
NameBên yêu cầu dữ liệu lõi (Data Requester)Kho hồ sơ EMR (Repository)Bên đáp ứng dữ liệu lõi (Data Responder)Ứng dụng người dân (Citizen App)Nguồn tạo hồ sơ lâm sàng (Document Source)doco
.. DocumentReference
... Slices for extension
.... extension:paperConversion
... status
... type
... subject
... date
... author
... custodian
... description
... content
... context

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base preferred Document Type Value Set 📍4.0.1 FHIR Std.
DocumentReference.category Base example Document Class Value Set 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.contentType Base required MimeType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error DocumentReference If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DocumentReference If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DocumentReference A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
vn-document-number-issuer-scoped error DocumentReference Số văn bản nội bộ ghi dưới URI dùng tạm cấp quốc gia (http://fhir.hl7.org.vn/core/sid/document-number) phải kèm `assigner` chỉ rõ cơ sở cấp mã; khuyến nghị chính là mỗi cơ sở công bố URI riêng. A local document number recorded under the shared national placeholder URI SHALL name its assigning facility; per-facility namespace URIs are preferred. identifier.where(system = 'http://fhir.hl7.org.vn/core/sid/document-number').all(assigner.exists())
vn-paper-conversion-official-doc-signature error DocumentReference.extension:paperConversion Khi tài liệu giấy được chuyển đổi là giấy phép, giấy chứng nhận, chứng chỉ, văn bản xác nhận hoặc văn bản chấp thuận do cơ quan, tổ chức có thẩm quyền phát hành thì bản điện tử phải có chữ ký số của bên thực hiện chuyển đổi — Luật 20/2023/QH15 Điều 12 khoản 1 điểm d. Converting an official credential SHALL carry the converter's digital signature. extension.where(url = 'officialDocument').value.ofType(boolean) = true implies extension.where(url = 'signatureEvidence').exists()

Dạng xem Differential

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: vn-document-number-issuer-scoped
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:paperConversion SO 0..1 (Complex) Bằng chứng chuyển đổi giấy ↔ điện tử theo Luật 20/2023/QH15 Điều 12
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-paper-conversion
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... status SO 1..1 code Trạng thái tài liệu (current | superseded | entered-in-error)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... type SO 1..1 CodeableConcept Loại tài liệu y tế
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... subject SO 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Bệnh nhân
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... date SO 0..1 instant Thời điểm tạo tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... author SO 0..* Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Vai trò nhân viên y tế VN Core — VN Core PractitionerRole Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Tác giả tài liệu (bác sĩ, NVYT, CSKCB)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... authenticator 0..1 Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Người xác nhận tài liệu; bằng chứng chữ ký số nằm ngoài Reference này
... custodian SO 0..1 Reference(Cơ sở y tế VN Core — VN Core Organization Profile) Cơ sở y tế lưu trữ (theo TT 13/2025/TT-BYT)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... description SO 0..1 string Mô tả nội dung tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... content SO 1..* BackboneElement Nội dung tài liệu (attachment hoặc URL)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... attachment S 1..1 Attachment File đính kèm (PDF, CDA, hình ảnh DICOM, v.v.)
..... contentType S 1..1 code MIME type (application/pdf, text/xml, image/dicom...)
... context SO 0..1 BackboneElement Ngữ cảnh lâm sàng
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... encounter S 0..* Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) Lượt khám liên quan
.... period S 0..1 Period Thời gian hiệu lực tài liệu

doco Documentation for this format
NameBên yêu cầu dữ liệu lõi (Data Requester)Kho hồ sơ EMR (Repository)Bên đáp ứng dữ liệu lõi (Data Responder)Ứng dụng người dân (Citizen App)Nguồn tạo hồ sơ lâm sàng (Document Source)doco
.. DocumentReference
... Slices for extension
.... extension:paperConversion
... status
... type
... subject
... date
... author
... custodian
... description
... content
... context

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
vn-document-number-issuer-scoped error DocumentReference Số văn bản nội bộ ghi dưới URI dùng tạm cấp quốc gia (http://fhir.hl7.org.vn/core/sid/document-number) phải kèm `assigner` chỉ rõ cơ sở cấp mã; khuyến nghị chính là mỗi cơ sở công bố URI riêng. A local document number recorded under the shared national placeholder URI SHALL name its assigning facility; per-facility namespace URIs are preferred. identifier.where(system = 'http://fhir.hl7.org.vn/core/sid/document-number').all(assigner.exists())

Dạng xem SnapshotView

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: vn-document-number-issuer-scoped
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:paperConversion SOC 0..1 (Complex) Bằng chứng chuyển đổi giấy ↔ điện tử theo Luật 20/2023/QH15 Điều 12
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-paper-conversion
Constraints: vn-paper-conversion-official-doc-signature
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... masterIdentifier Σ 0..1 Identifier Master Version Specific Identifier
... identifier Σ 0..* Identifier Other identifiers for the document
... status ?!SOΣ 1..1 code Trạng thái tài liệu (current | superseded | entered-in-error)
Binding: DocumentReferenceStatus (required): The status of the document reference.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... docStatus Σ 0..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.
... type SOΣ 1..1 CodeableConcept Loại tài liệu y tế
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... category SOΣ 0..* CodeableConcept Phân loại tài liệu (bệnh án, XN, CĐHA, đơn thuốc...)
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... subject SOΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Bệnh nhân
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... date SOΣ 0..1 instant Thời điểm tạo tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... author SOΣ 0..* Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Vai trò nhân viên y tế VN Core — VN Core PractitionerRole Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Tác giả tài liệu (bác sĩ, NVYT, CSKCB)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... authenticator 0..1 Reference(Nhân viên y tế VN Core — VN Core Practitioner Profile | Cơ sở y tế VN Core — VN Core Organization Profile) Người xác nhận tài liệu; bằng chứng chữ ký số nằm ngoài Reference này
... custodian SO 0..1 Reference(Cơ sở y tế VN Core — VN Core Organization Profile) Cơ sở y tế lưu trữ (theo TT 13/2025/TT-BYT)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... relatesTo Σ 0..* BackboneElement Relationships to other documents
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
.... target Σ 1..1 Reference(DocumentReference) Target of the relationship
... description SOΣ 0..1 string Mô tả nội dung tài liệu
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
... securityLabel Σ 0..* CodeableConcept Document security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
... content SOΣ 1..* BackboneElement Nội dung tài liệu (attachment hoặc URL)
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment SΣ 1..1 Attachment File đính kèm (PDF, CDA, hình ảnh DICOM, v.v.)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ 1..1 code MIME type (application/pdf, text/xml, image/dicom...)
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
Example General: text/plain; charset=UTF-8, image/png
..... language Σ 0..1 code Human language of the content (BCP-47)
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding

Example General: en-AU
..... data 0..1 base64Binary Data inline, base64ed
..... url Σ 0..1 url Uri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ 0..1 unsignedInt Number of bytes of content (if url provided)
..... hash Σ 0..1 base64Binary Hash of the data (sha-1, base64ed)
..... title Σ 0..1 string Label to display in place of the data
Example General: Official Corporate Logo
..... creation Σ 0..1 dateTime Date attachment was first created
.... format Σ 0..1 Coding Format/content rules for the document
Binding: DocumentReferenceFormatCodeSet (preferred): Document Format Codes.
... context SOΣ 0..1 BackboneElement Ngữ cảnh lâm sàng
ObligationsActor
SHALL:populate-if-known Bên đáp ứng dữ liệu lõi (Data Responder)
SHALL:no-error & SHALL:handle Bên yêu cầu dữ liệu lõi (Data Requester)
SHALL:populate-if-known Nguồn tạo hồ sơ lâm sàng (Document Source)
SHALL:no-error & SHALL:persist Kho hồ sơ EMR (Repository)
SHALL:no-error & SHALL:handle Ứng dụng người dân (Citizen App)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... encounter S 0..* Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) Lượt khám liên quan
.... event 0..* CodeableConcept Main clinical acts documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
.... period SΣ 0..1 Period Thời gian hiệu lực tài liệu
.... facilityType 0..1 CodeableConcept Kind of facility where patient was seen
Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.
.... practiceSetting 0..1 CodeableConcept Additional details about where the content was created (e.g. clinical specialty)
Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).
.... sourcePatientInfo 0..1 Reference(Patient) Patient demographics from source
.... related 0..* Reference(Resource) Related identifiers or resources

doco Documentation for this format
NameBên yêu cầu dữ liệu lõi (Data Requester)Kho hồ sơ EMR (Repository)Bên đáp ứng dữ liệu lõi (Data Responder)Ứng dụng người dân (Citizen App)Nguồn tạo hồ sơ lâm sàng (Document Source)doco
.. DocumentReference
... Slices for extension
.... extension:paperConversion
... status
... type
... subject
... date
... author
... custodian
... description
... content
... context

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.docStatus Base required CompositionStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base preferred Document Type Value Set 📍4.0.1 FHIR Std.
DocumentReference.category Base example Document Class Value Set 📍4.0.1 FHIR Std.
DocumentReference.relatesTo.​code Base required DocumentRelationshipType 📍4.0.1 FHIR Std.
DocumentReference.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.contentType Base required MimeType 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DocumentReference.content.​format Base preferred DocumentReference Format Code Set 📍4.0.1 FHIR Std.
DocumentReference.context.​event Base example v3 Code System ActCode 📦3.0.0 THO v7.2
DocumentReference.context.​facilityType Base example Facility Type Code Value Set 📍4.0.1 FHIR Std.
DocumentReference.context.​practiceSetting Base example Practice Setting Code Value Set 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error DocumentReference If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DocumentReference If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DocumentReference A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
vn-document-number-issuer-scoped error DocumentReference Số văn bản nội bộ ghi dưới URI dùng tạm cấp quốc gia (http://fhir.hl7.org.vn/core/sid/document-number) phải kèm `assigner` chỉ rõ cơ sở cấp mã; khuyến nghị chính là mỗi cơ sở công bố URI riêng. A local document number recorded under the shared national placeholder URI SHALL name its assigning facility; per-facility namespace URIs are preferred. identifier.where(system = 'http://fhir.hl7.org.vn/core/sid/document-number').all(assigner.exists())
vn-paper-conversion-official-doc-signature error DocumentReference.extension:paperConversion Khi tài liệu giấy được chuyển đổi là giấy phép, giấy chứng nhận, chứng chỉ, văn bản xác nhận hoặc văn bản chấp thuận do cơ quan, tổ chức có thẩm quyền phát hành thì bản điện tử phải có chữ ký số của bên thực hiện chuyển đổi — Luật 20/2023/QH15 Điều 12 khoản 1 điểm d. Converting an official credential SHALL carry the converter's digital signature. extension.where(url = 'officialDocument').value.ofType(boolean) = true implies extension.where(url = 'signatureEvidence').exists()
NameBên yêu cầu dữ liệu lõi (Data Requester)Kho hồ sơ EMR (Repository)Bên đáp ứng dữ liệu lõi (Data Responder)Ứng dụng người dân (Citizen App)Nguồn tạo hồ sơ lâm sàng (Document Source)doco
.. DocumentReference
... Slices for extension
.... extension:paperConversion
... status
... type
... subject
... date
... author
... custodian
... description
... content
... context

doco Documentation for this format

 

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