HL7 Vietnam VN Core FHIR Implementation Guide

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

Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam - Local Development build (v0.5.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.5.0 | Làm nổi bật phần thay đổi?
| Computable Name: VNCoreDocumentReference

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ứ:

- 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 hóa 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Đ 137/2024/NĐ-CP — Giao dịch điện tử, chữ ký số
- QĐ 1332/QĐ-BYT — Sổ sức khỏe điện tử trên VNeID
- Luật 91/2025/QH15 — BVDLCN: dữ liệu y tế = DLCN nhạy cảm

Usages:

- Refer to this Profile: Thông báo vi phạm DLCN (Mẫu 08) — VN Core Breach Notification Composition Profile
- Examples for this Profile: DocumentReference/ExampleDocumentReferenceConsent, DocumentReference/ExampleDocumentReferenceEMR and DocumentReference/ExampleDocumentReferenceScan
- CapabilityStatements using this Profile: VN Core Citizen App Client CapabilityStatement, VN Core EMR Server CapabilityStatement and VN Core Server CapabilityStatement

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.

- Bảng phần tử chính
- Bảng Differential
- Bảng Snapshot
- Thống kê/Tham chiếu
- Tất cả

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference |  | 0..* | DocumentReference | A reference to a document
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 1..1 | code | Trạng thái tài liệu (current | superseded | entered-in-error) Binding: DocumentReferenceStatus (required): The status of the document reference.
type | S Σ | 1..1 | CodeableConcept | Loại tài liệu y tế Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
category | S Σ | 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.
subject | S Σ | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Bệnh nhân
date | S Σ | 0..1 | instant | Thời điểm tạo tài liệu
author | S Σ | 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)
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 ký xác nhận (chữ ký số per NĐ 137/2024)
custodian | S | 0..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở y tế lưu trữ (per TT 13/2025)
description | S Σ | 0..1 | string | Mô tả nội dung tài liệu
content | S Σ | 1..* | BackboneElement | Nội dung tài liệu (attachment hoặc URL)
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 | S Σ | 0..1 | BackboneElement | Ngữ cảnh lâm sàng
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 | Σ | 0..1 | Period | Thời gian hiệu lực tài liệu
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()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference |  | 0..* | DocumentReference | A reference to a document
status | S | 1..1 | code | Trạng thái tài liệu (current | superseded | entered-in-error)
type | S | 1..1 | CodeableConcept | Loại tài liệu y tế
category | S | 0..* | CodeableConcept | Phân loại tài liệu (bệnh án, XN, CĐHA, đơn thuốc...)
subject | S | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Bệnh nhân
date | S | 0..1 | instant | Thời điểm tạo tài liệu
author | S | 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)
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 ký xác nhận (chữ ký số per NĐ 137/2024)
custodian | S | 0..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở y tế lưu trữ (per TT 13/2025)
description | S | 0..1 | string | Mô tả nội dung tài liệu
content | S | 1..* | BackboneElement | Nội dung tài liệu (attachment hoặc URL)
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 | S | 0..1 | BackboneElement | Ngữ cảnh lâm sàng
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 |  | 0..1 | Period | Thời gian hiệu lực tài liệu
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference |  | 0..* | DocumentReference | A reference to a document
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
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
masterIdentifier | Σ | 0..1 | Identifier | Master Version Specific Identifier
identifier | Σ | 0..* | Identifier | Other identifiers for the document
status | ?!S Σ | 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.
docStatus | Σ | 0..1 | code | preliminary | final | amended | entered-in-error Binding: CompositionStatus (required): Status of the underlying document.
type | S Σ | 1..1 | CodeableConcept | Loại tài liệu y tế Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
category | S Σ | 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.
subject | S Σ | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Bệnh nhân
date | S Σ | 0..1 | instant | Thời điểm tạo tài liệu
author | S Σ | 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)
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 ký xác nhận (chữ ký số per NĐ 137/2024)
custodian | S | 0..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở y tế lưu trữ (per TT 13/2025)
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 | S Σ | 0..1 | string | Mô tả nội dung tài liệu
securityLabel | Σ | 0..* | CodeableConcept | Document security-tags Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
content | S Σ | 1..* | BackboneElement | Nội dung tài liệu (attachment hoặc URL)
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 Bindings | Purpose
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 | S Σ | 0..1 | BackboneElement | Ngữ cảnh lâm sàng
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 | Σ | 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
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.1
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()`

Summary

Mandatory: 3 elements
Must-Support: 13 elements

Structures

This structure refers to these other structures:

- Bệnh nhân VN Core — VN Core Patient Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-patient)
- Nhân viên y tế VN Core — VN Core Practitioner Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-practitioner)
- Vai trò nhân viên y tế VN Core — VN Core PractitionerRole Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-practitioner-role)
- Cơ sở y tế VN Core — VN Core Organization Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-organization)
- Lượt khám/nhập viện VN Core — VN Core Encounter Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-encounter)

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

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference |  | 0..* | DocumentReference | A reference to a document
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 1..1 | code | Trạng thái tài liệu (current | superseded | entered-in-error) Binding: DocumentReferenceStatus (required): The status of the document reference.
type | S Σ | 1..1 | CodeableConcept | Loại tài liệu y tế Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
category | S Σ | 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.
subject | S Σ | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Bệnh nhân
date | S Σ | 0..1 | instant | Thời điểm tạo tài liệu
author | S Σ | 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)
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 ký xác nhận (chữ ký số per NĐ 137/2024)
custodian | S | 0..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở y tế lưu trữ (per TT 13/2025)
description | S Σ | 0..1 | string | Mô tả nội dung tài liệu
content | S Σ | 1..* | BackboneElement | Nội dung tài liệu (attachment hoặc URL)
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 | S Σ | 0..1 | BackboneElement | Ngữ cảnh lâm sàng
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 | Σ | 0..1 | Period | Thời gian hiệu lực tài liệu
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()`

Dạng xem Differential

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference |  | 0..* | DocumentReference | A reference to a document
status | S | 1..1 | code | Trạng thái tài liệu (current | superseded | entered-in-error)
type | S | 1..1 | CodeableConcept | Loại tài liệu y tế
category | S | 0..* | CodeableConcept | Phân loại tài liệu (bệnh án, XN, CĐHA, đơn thuốc...)
subject | S | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Bệnh nhân
date | S | 0..1 | instant | Thời điểm tạo tài liệu
author | S | 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)
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 ký xác nhận (chữ ký số per NĐ 137/2024)
custodian | S | 0..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở y tế lưu trữ (per TT 13/2025)
description | S | 0..1 | string | Mô tả nội dung tài liệu
content | S | 1..* | BackboneElement | Nội dung tài liệu (attachment hoặc URL)
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 | S | 0..1 | BackboneElement | Ngữ cảnh lâm sàng
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 |  | 0..1 | Period | Thời gian hiệu lực tài liệu
Documentation for this format

Dạng xem SnapshotView

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference |  | 0..* | DocumentReference | A reference to a document
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
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
masterIdentifier | Σ | 0..1 | Identifier | Master Version Specific Identifier
identifier | Σ | 0..* | Identifier | Other identifiers for the document
status | ?!S Σ | 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.
docStatus | Σ | 0..1 | code | preliminary | final | amended | entered-in-error Binding: CompositionStatus (required): Status of the underlying document.
type | S Σ | 1..1 | CodeableConcept | Loại tài liệu y tế Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
category | S Σ | 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.
subject | S Σ | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Bệnh nhân
date | S Σ | 0..1 | instant | Thời điểm tạo tài liệu
author | S Σ | 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)
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 ký xác nhận (chữ ký số per NĐ 137/2024)
custodian | S | 0..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở y tế lưu trữ (per TT 13/2025)
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 | S Σ | 0..1 | string | Mô tả nội dung tài liệu
securityLabel | Σ | 0..* | CodeableConcept | Document security-tags Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
content | S Σ | 1..* | BackboneElement | Nội dung tài liệu (attachment hoặc URL)
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 Bindings | Purpose
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 | S Σ | 0..1 | BackboneElement | Ngữ cảnh lâm sàng
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 | Σ | 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
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.1
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()`

Summary

Mandatory: 3 elements
Must-Support: 13 elements

Structures

This structure refers to these other structures:

- Bệnh nhân VN Core — VN Core Patient Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-patient)
- Nhân viên y tế VN Core — VN Core Practitioner Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-practitioner)
- Vai trò nhân viên y tế VN Core — VN Core PractitionerRole Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-practitioner-role)
- Cơ sở y tế VN Core — VN Core Organization Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-organization)
- Lượt khám/nhập viện VN Core — VN Core Encounter Profile (http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-encounter)

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