Hướng dẫn triển khai FHIR cốt lõi Việt Nam — VN Core FHIR Implementation Guide
0.10.0 - Draft for Community Review
Hướng dẫn triển khai FHIR cốt lõi Việt Nam — VN Core FHIR Implementation Guide - Draft for Community Review (v0.10.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| URL chính thức: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-cost-statement-segment | Phiên bản: 0.10.0 | ||||
| Computable Name: VNCoreExtCostStatementSegment | |||||
| Định danh khác: OID:2.25.161089673617632664299011809196868855799.42.136 | |||||
Bản quyền/Pháp lý: Bộ Y tế Việt Nam — QĐ 697/QĐ-BYT (19/03/2026), mẫu bảng kê chi phí khám bệnh, chữa bệnh. |
|||||
Một phân đoạn của bảng kê chi phí: một thẻ BHYT (hoặc không thẻ) trong một khoảng thời gian với một mức hưởng.
Mẫu bảng kê của QĐ 697/QĐ-BYT lặp phần chi phí theo từng thẻ và từng mức hưởng trong cùng một đợt khám chữa bệnh — một người có thể đổi thẻ giữa đợt, hoặc cùng một thẻ đổi mức hưởng khi đủ điều kiện (NĐ 188/2025/NĐ-CP Điều 21). Extension này biểu diễn đúng cách lặp đó.
Khác biệt cốt lõi so với vn-ext-coverage-benefit-stage (dùng trên Claim, đã ngừng):
coverage ở đây là 0..1. QĐ 697/QĐ-BYT Phần Hai hướng dẫn lập bảng kê cho người không có
thẻ bảo hiểm y tế — trường hợp đó phân đoạn không có Coverage nào và mức hưởng để trống. Đây
chính là điều Claim không biểu diễn được vì Claim.insurance là 1..* (xem ADR-0021).
Context of Use
This extension may be used on the following element(s)
Invoice
Usage info
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..* | Extension | Phân đoạn thẻ và mức hưởng trên bảng kê — Cost Statement Card Segment Constraints: vn-cost-statement-segment-benefit-range |
![]() ![]() |
2..* | Extension | Extension | |
![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() |
S | 1..1 | Extension | Khoá thứ tự phân đoạn — Segment sequence key |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "sequence" | |
![]() ![]() ![]() ![]() |
1..1 | positiveInt | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Thẻ BHYT của phân đoạn — BHYT card of this segment |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "coverage" | |
![]() ![]() ![]() ![]() |
1..1 | Reference(Thẻ BHYT VN Core — VN Core Coverage Profile) | Value of extension | |
![]() ![]() ![]() |
S | 1..1 | Extension | Khoảng thời gian của phân đoạn — Segment period |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "period" | |
![]() ![]() ![]() ![]() |
1..1 | Period | Value of extension | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Starting time with inclusive boundary |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | End time with inclusive boundary, if not ongoing |
![]() ![]() ![]() |
S | 0..1 | Extension | Mức hưởng BHYT của phân đoạn, 0–100 — BHYT benefit level |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "benefitLevel" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() |
1..1 | uri | "http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-cost-statement-segment" | |
![]() ![]() |
0..0 | Value of extension | ||
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| vn-cost-statement-segment-benefit-range | error | Extension | Mức hưởng của phân đoạn phải nằm trong khoảng 0–100. The segment benefit level SHALL be between 0 and 100. |
extension.where(url = 'benefitLevel').value.ofType(decimal).all($this >= 0 and $this <= 100)
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Phân đoạn thẻ và mức hưởng trên bảng kê — Cost Statement Card Segment Constraints: vn-cost-statement-segment-benefit-range |
![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() |
2..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
S | 1..1 | Extension | Khoá thứ tự phân đoạn — Segment sequence key |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "sequence" | |
![]() ![]() ![]() ![]() |
1..1 | positiveInt | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Thẻ BHYT của phân đoạn — BHYT card of this segment |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "coverage" | |
![]() ![]() ![]() ![]() |
1..1 | Reference(Thẻ BHYT VN Core — VN Core Coverage Profile) | Value of extension | |
![]() ![]() ![]() |
S | 1..1 | Extension | Khoảng thời gian của phân đoạn — Segment period |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "period" | |
![]() ![]() ![]() ![]() |
1..1 | Period | Value of extension | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
SΣC | 1..1 | dateTime | Starting time with inclusive boundary |
![]() ![]() ![]() ![]() ![]() |
SΣC | 1..1 | dateTime | End time with inclusive boundary, if not ongoing |
![]() ![]() ![]() |
S | 0..1 | Extension | Mức hưởng BHYT của phân đoạn, 0–100 — BHYT benefit level |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "benefitLevel" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() |
1..1 | uri | "http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-cost-statement-segment" | |
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| 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-cost-statement-segment-benefit-range | error | Extension | Mức hưởng của phân đoạn phải nằm trong khoảng 0–100. The segment benefit level SHALL be between 0 and 100. |
extension.where(url = 'benefitLevel').value.ofType(decimal).all($this >= 0 and $this <= 100)
|
Summary
Complex Extension: Một phân đoạn của bảng kê chi phí: một thẻ BHYT (hoặc không thẻ) trong một khoảng thời gian với một mức hưởng.
Mẫu bảng kê của QĐ 697/QĐ-BYT lặp phần chi phí theo từng thẻ và từng mức hưởng trong cùng một đợt
khám chữa bệnh — một người có thể đổi thẻ giữa đợt, hoặc cùng một thẻ đổi mức hưởng khi đủ điều
kiện (NĐ 188/2025/NĐ-CP Điều 21). Extension này biểu diễn đúng cách lặp đó.
Khác biệt cốt lõi so với vn-ext-coverage-benefit-stage (dùng trên Claim, đã ngừng):
coverage ở đây là 0..1. QĐ 697/QĐ-BYT Phần Hai hướng dẫn lập bảng kê cho người không có
thẻ bảo hiểm y tế — trường hợp đó phân đoạn không có Coverage nào và mức hưởng để trống. Đây
chính là điều Claim không biểu diễn được vì Claim.insurance là 1..* (xem ADR-0021).
Dạng xem DifferentialDifferential View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Phân đoạn thẻ và mức hưởng trên bảng kê — Cost Statement Card Segment Constraints: vn-cost-statement-segment-benefit-range |
![]() ![]() |
2..* | Extension | Extension | |
![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() |
S | 1..1 | Extension | Khoá thứ tự phân đoạn — Segment sequence key |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "sequence" | |
![]() ![]() ![]() ![]() |
1..1 | positiveInt | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Thẻ BHYT của phân đoạn — BHYT card of this segment |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "coverage" | |
![]() ![]() ![]() ![]() |
1..1 | Reference(Thẻ BHYT VN Core — VN Core Coverage Profile) | Value of extension | |
![]() ![]() ![]() |
S | 1..1 | Extension | Khoảng thời gian của phân đoạn — Segment period |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "period" | |
![]() ![]() ![]() ![]() |
1..1 | Period | Value of extension | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Starting time with inclusive boundary |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | End time with inclusive boundary, if not ongoing |
![]() ![]() ![]() |
S | 0..1 | Extension | Mức hưởng BHYT của phân đoạn, 0–100 — BHYT benefit level |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "benefitLevel" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() |
1..1 | uri | "http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-cost-statement-segment" | |
![]() ![]() |
0..0 | Value of extension | ||
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| vn-cost-statement-segment-benefit-range | error | Extension | Mức hưởng của phân đoạn phải nằm trong khoảng 0–100. The segment benefit level SHALL be between 0 and 100. |
extension.where(url = 'benefitLevel').value.ofType(decimal).all($this >= 0 and $this <= 100)
|
Dạng xem Snapshot
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Phân đoạn thẻ và mức hưởng trên bảng kê — Cost Statement Card Segment Constraints: vn-cost-statement-segment-benefit-range |
![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() |
2..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
S | 1..1 | Extension | Khoá thứ tự phân đoạn — Segment sequence key |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "sequence" | |
![]() ![]() ![]() ![]() |
1..1 | positiveInt | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Thẻ BHYT của phân đoạn — BHYT card of this segment |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "coverage" | |
![]() ![]() ![]() ![]() |
1..1 | Reference(Thẻ BHYT VN Core — VN Core Coverage Profile) | Value of extension | |
![]() ![]() ![]() |
S | 1..1 | Extension | Khoảng thời gian của phân đoạn — Segment period |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "period" | |
![]() ![]() ![]() ![]() |
1..1 | Period | Value of extension | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
SΣC | 1..1 | dateTime | Starting time with inclusive boundary |
![]() ![]() ![]() ![]() ![]() |
SΣC | 1..1 | dateTime | End time with inclusive boundary, if not ongoing |
![]() ![]() ![]() |
S | 0..1 | Extension | Mức hưởng BHYT của phân đoạn, 0–100 — BHYT benefit level |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "benefitLevel" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() |
1..1 | uri | "http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-cost-statement-segment" | |
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| 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-cost-statement-segment-benefit-range | error | Extension | Mức hưởng của phân đoạn phải nằm trong khoảng 0–100. The segment benefit level SHALL be between 0 and 100. |
extension.where(url = 'benefitLevel').value.ofType(decimal).all($this >= 0 and $this <= 100)
|
Summary
Complex Extension: Một phân đoạn của bảng kê chi phí: một thẻ BHYT (hoặc không thẻ) trong một khoảng thời gian với một mức hưởng.
Mẫu bảng kê của QĐ 697/QĐ-BYT lặp phần chi phí theo từng thẻ và từng mức hưởng trong cùng một đợt
khám chữa bệnh — một người có thể đổi thẻ giữa đợt, hoặc cùng một thẻ đổi mức hưởng khi đủ điều
kiện (NĐ 188/2025/NĐ-CP Điều 21). Extension này biểu diễn đúng cách lặp đó.
Khác biệt cốt lõi so với vn-ext-coverage-benefit-stage (dùng trên Claim, đã ngừng):
coverage ở đây là 0..1. QĐ 697/QĐ-BYT Phần Hai hướng dẫn lập bảng kê cho người không có
thẻ bảo hiểm y tế — trường hợp đó phân đoạn không có Coverage nào và mức hưởng để trống. Đây
chính là điều Claim không biểu diễn được vì Claim.insurance là 1..* (xem ADR-0021).
Biểu diễn khác của hồ sơ: CSV, Excel, Schematron