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 - Draft for Community Review (v0.5.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| URL chính thức: http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-bhyt-submission-bundle | Phiên bản: 0.5.0 | ||||
| Computable Name: VNCoreBHYTSubmissionBundle | |||||
Bản quyền/Pháp lý: Căn cứ pháp lý Việt Nam: Luật 25/2008/QH12 ngày 14/11/2008; Luật 51/2024/QH15 ngày 27/11/2024; NĐ 188/2025/NĐ-CP ban hành 01/07/2025, hiệu lực 15/08/2025; QĐ 3176/QĐ-BYT ngày 29/10/2024; QĐ 697/QĐ-BYT ngày 19/03/2026. |
|||||
Profile Bundle chuyên dùng cho gửi hồ sơ thanh toán BHYT lên Cổng giám định BHXH. Bundle này thuộc lớp liên thông hồ sơ thanh toán BHYT, tách biệt với các Bundle FHIR nội bộ. Căn cứ: Luật 25/2008/QH12 ngày 14/11/2008 về BHYT; Luật 51/2024/QH15 ngày 27/11/2024 sửa đổi Luật BHYT; NĐ 188/2025/NĐ-CP ban hành 01/07/2025, hiệu lực 15/08/2025 hướng dẫn Luật BHYT; QĐ 3176/QĐ-BYT ngày 29/10/2024 về chuẩn dữ liệu đầu ra KCB; QĐ 697/QĐ-BYT ngày 19/03/2026 về mẫu bảng kê chi phí KCB. Nguồn TVPL NĐ 188/2025/NĐ-CP: https://thuvienphapluat.vn/van-ban/Bao-hiem/Nghi-dinh-188-2025-ND-CP-huong-dan-Luat-Bao-hiem-y-te-641049.aspx
Usages:
You can also check for usages in the FHIR IG Statistics
Mô tả profile, differential, snapshot và các biểu diễn liên quan.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | VNCoreBundle | Contains a collection of resources Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, vn-bundle-document-first, vn-bhyt-submission-has-claim, vn-bhyt-submission-has-patient, vn-bhyt-submission-has-coverage |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
SΣ | 1..1 | Identifier | MA_LK của hồ sơ thanh toán BHYT |
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . |
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. Required Pattern: At least the following |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-identifier-type-cs | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: MA_LK | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |
![]() ![]() ![]() |
Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.hl7.org.vn/core/sid/ma-lk |
![]() ![]() ![]() |
SΣ | 1..1 | string | Giá trị MA_LK Example General: 123456 |
![]() ![]() |
SΣ | 1..1 | code | Bundle hồ sơ thanh toán BHYT Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Required Pattern: collection |
![]() ![]() |
SΣ | 1..1 | instant | Thời điểm đóng gói bundle hồ sơ thanh toán |
![]() ![]() |
SΣC | 1..* | BackboneElement | Danh sách tài nguyên phục vụ hồ sơ BHYT Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣ | 1..1 | Resource | Resource FHIR |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Bundle.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| Bundle.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| Bundle.type | Base | required | BundleType | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| bdl-1 | error | Bundle | total only when a search or history |
total.empty() or (type = 'searchset') or (type = 'history')
|
| bdl-2 | error | Bundle | entry.search only when a search |
entry.search.empty() or (type = 'searchset')
|
| bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited |
entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
|
| bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited |
entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
|
| bdl-5 | error | Bundle.entry | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry | fullUrl cannot be a version specific reference |
fullUrl.contains('/_history/').not()
|
| bdl-9 | error | Bundle | A document must have an identifier with a system and a value |
type = 'document' implies (identifier.system.exists() and identifier.value.exists())
|
| bdl-10 | error | Bundle | A document must have a date |
type = 'document' implies (timestamp.hasValue())
|
| bdl-11 | error | Bundle | A document must have a Composition as the first resource |
type = 'document' implies entry.first().resource.is(Composition)
|
| bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource |
type = 'message' implies entry.first().resource.is(MessageHeader)
|
| 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-bhyt-submission-has-claim | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Claim để biểu diễn chi phí/yêu cầu thanh toán từ chuẩn dữ liệu QĐ 3176/QĐ-BYT và bảng kê QĐ 697/QĐ-BYT |
entry.resource.ofType(Claim).exists()
|
| vn-bhyt-submission-has-coverage | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Coverage để biểu diễn quyền lợi/thẻ BHYT theo Luật BHYT, NĐ 188/2025/NĐ-CP và các trường thẻ trong QĐ 3176/QĐ-BYT |
entry.resource.ofType(Coverage).exists()
|
| vn-bhyt-submission-has-patient | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Patient để biểu diễn nhóm thông tin người bệnh trong QĐ 3176/QĐ-BYT và hồ sơ bệnh án điện tử theo TT 13/2025/TT-BYT |
entry.resource.ofType(Patient).exists()
|
| vn-bundle-document-first | error | Bundle | Bundle type 'document' phải có Composition là entry đầu tiên (per FHIR Bundle spec) |
type = 'document' implies entry.first().resource.is(Composition)
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | VNCoreBundle | Contains a collection of resources Constraints: vn-bhyt-submission-has-claim, vn-bhyt-submission-has-patient, vn-bhyt-submission-has-coverage |
![]() ![]() |
S | 1..1 | Identifier | MA_LK của hồ sơ thanh toán BHYT |
![]() ![]() ![]() |
0..1 | CodeableConcept | Description of identifier Required Pattern: At least the following | |
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-identifier-type-cs | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: MA_LK | |
![]() ![]() ![]() |
1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.hl7.org.vn/core/sid/ma-lk | |
![]() ![]() ![]() |
S | 1..1 | string | Giá trị MA_LK |
![]() ![]() |
1..1 | code | Bundle hồ sơ thanh toán BHYT Required Pattern: collection | |
![]() ![]() |
1..1 | instant | Thời điểm đóng gói bundle hồ sơ thanh toán | |
![]() ![]() |
1..* | BackboneElement | Danh sách tài nguyên phục vụ hồ sơ BHYT | |
![]() ![]() ![]() |
S | 1..1 | Resource | Resource FHIR |
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| vn-bhyt-submission-has-claim | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Claim để biểu diễn chi phí/yêu cầu thanh toán từ chuẩn dữ liệu QĐ 3176/QĐ-BYT và bảng kê QĐ 697/QĐ-BYT |
entry.resource.ofType(Claim).exists()
|
| vn-bhyt-submission-has-coverage | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Coverage để biểu diễn quyền lợi/thẻ BHYT theo Luật BHYT, NĐ 188/2025/NĐ-CP và các trường thẻ trong QĐ 3176/QĐ-BYT |
entry.resource.ofType(Coverage).exists()
|
| vn-bhyt-submission-has-patient | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Patient để biểu diễn nhóm thông tin người bệnh trong QĐ 3176/QĐ-BYT và hồ sơ bệnh án điện tử theo TT 13/2025/TT-BYT |
entry.resource.ofType(Patient).exists()
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | VNCoreBundle | Contains a collection of resources Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, vn-bundle-document-first, vn-bhyt-submission-has-claim, vn-bhyt-submission-has-patient, vn-bhyt-submission-has-coverage | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
SΣ | 1..1 | Identifier | MA_LK của hồ sơ thanh toán BHYT | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-identifier-type-cs | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: MA_LK | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||
![]() ![]() ![]() |
Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.hl7.org.vn/core/sid/ma-lk | ||||
![]() ![]() ![]() |
SΣ | 1..1 | string | Giá trị MA_LK Example General: 123456 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
SΣ | 1..1 | code | Bundle hồ sơ thanh toán BHYT Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Required Pattern: collection | ||||
![]() ![]() |
SΣ | 1..1 | instant | Thời điểm đóng gói bundle hồ sơ thanh toán | ||||
![]() ![]() |
ΣC | 0..1 | unsignedInt | If search, the total number of matches | ||||
![]() ![]() |
Σ | 0..* | BackboneElement | Links related to this Bundle | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | ||||
![]() ![]() ![]() |
Σ | 1..1 | uri | Reference details for the link | ||||
![]() ![]() |
SΣC | 1..* | BackboneElement | Danh sách tài nguyên phục vụ hồ sơ BHYT Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 0..* | See link (Bundle) | Links related to this entry | ||||
![]() ![]() ![]() |
Σ | 0..1 | uri | URL đầy đủ | ||||
![]() ![]() ![]() |
SΣ | 1..1 | Resource | Resource FHIR | ||||
![]() ![]() ![]() |
ΣC | 0..1 | BackboneElement | Search related information | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | code | match | include | outcome - why this is in the result set Binding: SearchEntryMode (required): Why an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process. | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Search ranking (between 0 and 1) | ||||
![]() ![]() ![]() |
ΣC | 0..1 | BackboneElement | Additional execution information (transaction/batch/history) | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | GET | HEAD | POST | PUT | DELETE | PATCH Binding: HTTPVerb (required): HTTP verbs (in the HTTP command line). See HTTP rfc for details. | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URL for HTTP equivalent of this entry | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | For managing cache currency | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | instant | For managing cache currency | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | For managing update contention | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | For conditional creates | ||||
![]() ![]() ![]() |
ΣC | 0..1 | BackboneElement | Results of execution (transaction/batch/history) | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Status response code (text optional) | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | uri | The location (if the operation returns a location) | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | The Etag for the resource (if relevant) | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | instant | Server's date time modified | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Resource | OperationOutcome with hints and warnings (for batch/transaction) | ||||
![]() ![]() |
Σ | 0..1 | Signature | Digital Signature | ||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Bundle.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| Bundle.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| Bundle.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| Bundle.type | Base | required | BundleType | 📍4.0.1 | FHIR Std. |
| Bundle.entry.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| bdl-1 | error | Bundle | total only when a search or history |
total.empty() or (type = 'searchset') or (type = 'history')
|
| bdl-2 | error | Bundle | entry.search only when a search |
entry.search.empty() or (type = 'searchset')
|
| bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited |
entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
|
| bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited |
entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
|
| bdl-5 | error | Bundle.entry | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry | fullUrl cannot be a version specific reference |
fullUrl.contains('/_history/').not()
|
| bdl-9 | error | Bundle | A document must have an identifier with a system and a value |
type = 'document' implies (identifier.system.exists() and identifier.value.exists())
|
| bdl-10 | error | Bundle | A document must have a date |
type = 'document' implies (timestamp.hasValue())
|
| bdl-11 | error | Bundle | A document must have a Composition as the first resource |
type = 'document' implies entry.first().resource.is(Composition)
|
| bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource |
type = 'message' implies entry.first().resource.is(MessageHeader)
|
| 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-bhyt-submission-has-claim | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Claim để biểu diễn chi phí/yêu cầu thanh toán từ chuẩn dữ liệu QĐ 3176/QĐ-BYT và bảng kê QĐ 697/QĐ-BYT |
entry.resource.ofType(Claim).exists()
|
| vn-bhyt-submission-has-coverage | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Coverage để biểu diễn quyền lợi/thẻ BHYT theo Luật BHYT, NĐ 188/2025/NĐ-CP và các trường thẻ trong QĐ 3176/QĐ-BYT |
entry.resource.ofType(Coverage).exists()
|
| vn-bhyt-submission-has-patient | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Patient để biểu diễn nhóm thông tin người bệnh trong QĐ 3176/QĐ-BYT và hồ sơ bệnh án điện tử theo TT 13/2025/TT-BYT |
entry.resource.ofType(Patient).exists()
|
| vn-bundle-document-first | error | Bundle | Bundle type 'document' phải có Composition là entry đầu tiên (per FHIR Bundle spec) |
type = 'document' implies entry.first().resource.is(Composition)
|
Dạng xem phần tử chính
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | VNCoreBundle | Contains a collection of resources Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, vn-bundle-document-first, vn-bhyt-submission-has-claim, vn-bhyt-submission-has-patient, vn-bhyt-submission-has-coverage |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
SΣ | 1..1 | Identifier | MA_LK của hồ sơ thanh toán BHYT |
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . |
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. Required Pattern: At least the following |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-identifier-type-cs | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: MA_LK | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |
![]() ![]() ![]() |
Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.hl7.org.vn/core/sid/ma-lk |
![]() ![]() ![]() |
SΣ | 1..1 | string | Giá trị MA_LK Example General: 123456 |
![]() ![]() |
SΣ | 1..1 | code | Bundle hồ sơ thanh toán BHYT Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Required Pattern: collection |
![]() ![]() |
SΣ | 1..1 | instant | Thời điểm đóng gói bundle hồ sơ thanh toán |
![]() ![]() |
SΣC | 1..* | BackboneElement | Danh sách tài nguyên phục vụ hồ sơ BHYT Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣ | 1..1 | Resource | Resource FHIR |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Bundle.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| Bundle.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| Bundle.type | Base | required | BundleType | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| bdl-1 | error | Bundle | total only when a search or history |
total.empty() or (type = 'searchset') or (type = 'history')
|
| bdl-2 | error | Bundle | entry.search only when a search |
entry.search.empty() or (type = 'searchset')
|
| bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited |
entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
|
| bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited |
entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
|
| bdl-5 | error | Bundle.entry | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry | fullUrl cannot be a version specific reference |
fullUrl.contains('/_history/').not()
|
| bdl-9 | error | Bundle | A document must have an identifier with a system and a value |
type = 'document' implies (identifier.system.exists() and identifier.value.exists())
|
| bdl-10 | error | Bundle | A document must have a date |
type = 'document' implies (timestamp.hasValue())
|
| bdl-11 | error | Bundle | A document must have a Composition as the first resource |
type = 'document' implies entry.first().resource.is(Composition)
|
| bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource |
type = 'message' implies entry.first().resource.is(MessageHeader)
|
| 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-bhyt-submission-has-claim | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Claim để biểu diễn chi phí/yêu cầu thanh toán từ chuẩn dữ liệu QĐ 3176/QĐ-BYT và bảng kê QĐ 697/QĐ-BYT |
entry.resource.ofType(Claim).exists()
|
| vn-bhyt-submission-has-coverage | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Coverage để biểu diễn quyền lợi/thẻ BHYT theo Luật BHYT, NĐ 188/2025/NĐ-CP và các trường thẻ trong QĐ 3176/QĐ-BYT |
entry.resource.ofType(Coverage).exists()
|
| vn-bhyt-submission-has-patient | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Patient để biểu diễn nhóm thông tin người bệnh trong QĐ 3176/QĐ-BYT và hồ sơ bệnh án điện tử theo TT 13/2025/TT-BYT |
entry.resource.ofType(Patient).exists()
|
| vn-bundle-document-first | error | Bundle | Bundle type 'document' phải có Composition là entry đầu tiên (per FHIR Bundle spec) |
type = 'document' implies entry.first().resource.is(Composition)
|
Dạng xem Differential
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | VNCoreBundle | Contains a collection of resources Constraints: vn-bhyt-submission-has-claim, vn-bhyt-submission-has-patient, vn-bhyt-submission-has-coverage |
![]() ![]() |
S | 1..1 | Identifier | MA_LK của hồ sơ thanh toán BHYT |
![]() ![]() ![]() |
0..1 | CodeableConcept | Description of identifier Required Pattern: At least the following | |
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-identifier-type-cs | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: MA_LK | |
![]() ![]() ![]() |
1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.hl7.org.vn/core/sid/ma-lk | |
![]() ![]() ![]() |
S | 1..1 | string | Giá trị MA_LK |
![]() ![]() |
1..1 | code | Bundle hồ sơ thanh toán BHYT Required Pattern: collection | |
![]() ![]() |
1..1 | instant | Thời điểm đóng gói bundle hồ sơ thanh toán | |
![]() ![]() |
1..* | BackboneElement | Danh sách tài nguyên phục vụ hồ sơ BHYT | |
![]() ![]() ![]() |
S | 1..1 | Resource | Resource FHIR |
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| vn-bhyt-submission-has-claim | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Claim để biểu diễn chi phí/yêu cầu thanh toán từ chuẩn dữ liệu QĐ 3176/QĐ-BYT và bảng kê QĐ 697/QĐ-BYT |
entry.resource.ofType(Claim).exists()
|
| vn-bhyt-submission-has-coverage | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Coverage để biểu diễn quyền lợi/thẻ BHYT theo Luật BHYT, NĐ 188/2025/NĐ-CP và các trường thẻ trong QĐ 3176/QĐ-BYT |
entry.resource.ofType(Coverage).exists()
|
| vn-bhyt-submission-has-patient | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Patient để biểu diễn nhóm thông tin người bệnh trong QĐ 3176/QĐ-BYT và hồ sơ bệnh án điện tử theo TT 13/2025/TT-BYT |
entry.resource.ofType(Patient).exists()
|
Dạng xem SnapshotView
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | VNCoreBundle | Contains a collection of resources Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, vn-bundle-document-first, vn-bhyt-submission-has-claim, vn-bhyt-submission-has-patient, vn-bhyt-submission-has-coverage | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
SΣ | 1..1 | Identifier | MA_LK của hồ sơ thanh toán BHYT | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-identifier-type-cs | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: MA_LK | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||
![]() ![]() ![]() |
Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.hl7.org.vn/core/sid/ma-lk | ||||
![]() ![]() ![]() |
SΣ | 1..1 | string | Giá trị MA_LK Example General: 123456 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
SΣ | 1..1 | code | Bundle hồ sơ thanh toán BHYT Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Required Pattern: collection | ||||
![]() ![]() |
SΣ | 1..1 | instant | Thời điểm đóng gói bundle hồ sơ thanh toán | ||||
![]() ![]() |
ΣC | 0..1 | unsignedInt | If search, the total number of matches | ||||
![]() ![]() |
Σ | 0..* | BackboneElement | Links related to this Bundle | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | ||||
![]() ![]() ![]() |
Σ | 1..1 | uri | Reference details for the link | ||||
![]() ![]() |
SΣC | 1..* | BackboneElement | Danh sách tài nguyên phục vụ hồ sơ BHYT Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 0..* | See link (Bundle) | Links related to this entry | ||||
![]() ![]() ![]() |
Σ | 0..1 | uri | URL đầy đủ | ||||
![]() ![]() ![]() |
SΣ | 1..1 | Resource | Resource FHIR | ||||
![]() ![]() ![]() |
ΣC | 0..1 | BackboneElement | Search related information | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | code | match | include | outcome - why this is in the result set Binding: SearchEntryMode (required): Why an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process. | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Search ranking (between 0 and 1) | ||||
![]() ![]() ![]() |
ΣC | 0..1 | BackboneElement | Additional execution information (transaction/batch/history) | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | GET | HEAD | POST | PUT | DELETE | PATCH Binding: HTTPVerb (required): HTTP verbs (in the HTTP command line). See HTTP rfc for details. | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URL for HTTP equivalent of this entry | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | For managing cache currency | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | instant | For managing cache currency | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | For managing update contention | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | For conditional creates | ||||
![]() ![]() ![]() |
ΣC | 0..1 | BackboneElement | Results of execution (transaction/batch/history) | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Status response code (text optional) | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | uri | The location (if the operation returns a location) | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | The Etag for the resource (if relevant) | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | instant | Server's date time modified | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Resource | OperationOutcome with hints and warnings (for batch/transaction) | ||||
![]() ![]() |
Σ | 0..1 | Signature | Digital Signature | ||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Bundle.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| Bundle.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| Bundle.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| Bundle.type | Base | required | BundleType | 📍4.0.1 | FHIR Std. |
| Bundle.entry.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| bdl-1 | error | Bundle | total only when a search or history |
total.empty() or (type = 'searchset') or (type = 'history')
|
| bdl-2 | error | Bundle | entry.search only when a search |
entry.search.empty() or (type = 'searchset')
|
| bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited |
entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
|
| bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited |
entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
|
| bdl-5 | error | Bundle.entry | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry | fullUrl cannot be a version specific reference |
fullUrl.contains('/_history/').not()
|
| bdl-9 | error | Bundle | A document must have an identifier with a system and a value |
type = 'document' implies (identifier.system.exists() and identifier.value.exists())
|
| bdl-10 | error | Bundle | A document must have a date |
type = 'document' implies (timestamp.hasValue())
|
| bdl-11 | error | Bundle | A document must have a Composition as the first resource |
type = 'document' implies entry.first().resource.is(Composition)
|
| bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource |
type = 'message' implies entry.first().resource.is(MessageHeader)
|
| 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-bhyt-submission-has-claim | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Claim để biểu diễn chi phí/yêu cầu thanh toán từ chuẩn dữ liệu QĐ 3176/QĐ-BYT và bảng kê QĐ 697/QĐ-BYT |
entry.resource.ofType(Claim).exists()
|
| vn-bhyt-submission-has-coverage | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Coverage để biểu diễn quyền lợi/thẻ BHYT theo Luật BHYT, NĐ 188/2025/NĐ-CP và các trường thẻ trong QĐ 3176/QĐ-BYT |
entry.resource.ofType(Coverage).exists()
|
| vn-bhyt-submission-has-patient | error | Bundle | Bundle hồ sơ thanh toán BHYT phải chứa ít nhất một Patient để biểu diễn nhóm thông tin người bệnh trong QĐ 3176/QĐ-BYT và hồ sơ bệnh án điện tử theo TT 13/2025/TT-BYT |
entry.resource.ofType(Patient).exists()
|
| vn-bundle-document-first | error | Bundle | Bundle type 'document' phải có Composition là entry đầu tiên (per FHIR Bundle spec) |
type = 'document' implies entry.first().resource.is(Composition)
|
Biểu diễn khác của hồ sơ: CSV, Excel, Schematron