Hướng dẫn triển khai FHIR cốt lõi Việt Nam — VN Core FHIR Implementation Guide
0.9.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 - Local Development build (v0.9.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/vnCoreQuarterlyHealthcareCostSettlement | Phiên bản: 0.9.0 | ||||
| Computable Name: VNCoreQuarterlyHealthcareCostSettlement | |||||
| Định danh khác: OID:2.25.161089673617632664299011809196868855799.42.156 | |||||
Mô hình logic chuẩn cho Biên bản quyết toán, thanh toán chi phí khám bệnh, chữa bệnh BHYT theo quý (Mẫu số 06/BH), gồm định danh biên bản, đúng một quý, bên chi trả, cơ sở KCB, hợp đồng, bộ 55 chỉ tiêu hiện hành với hai cột trong quý/lũy kế, ý kiến hai bên và người ký xác nhận. LogicalModel là carrier dữ liệu của biểu mẫu; PaymentReconciliation tiếp tục mang semantics remittance/phân bổ khoản thanh toán bulk, còn tài liệu ký có thể render từ instance này và đóng gói bằng Composition/DocumentReference. Căn cứ: [TT 12/2026/TT-BTC] (ban hành 10/02/2026, hiệu lực 10/02/2026) — Giám định, thanh toán, quyết toán chi phí KCB BHYT; [NĐ 188/2025/NĐ-CP] (ban hành 01/07/2025, hiệu lực 15/08/2025) — Hướng dẫn thi hành Luật BHYT.
This logical model is the canonical data carrier for the quarterly BHYT healthcare-cost settlement and payment record (Form 06/BH). It contains the settlement identifiers, exactly one calendar quarter, payer, provider, contract, the current 55-indicator set with quarter and year-to-date columns, both parties' opinions, and attestations. PaymentReconciliation retains its FHIR remittance and bulk-payment allocation semantics; a signed document may be rendered from this model and packaged using Composition or DocumentReference.
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..* | Base | Quyết toán chi phí KCB BHYT theo quý — VN Core Quarterly Healthcare Cost Settlement Constraints: vn-quarterly-settlement-current-indicator-set, vn-quarterly-settlement-calendar-quarter, vn-quarterly-settlement-money-vnd, vn-quarterly-settlement-amount-applicability, vn-quarterly-settlement-formula-1, vn-quarterly-settlement-formula-2, vn-quarterly-settlement-formula-4, vn-quarterly-settlement-formula-9, vn-quarterly-settlement-formula-10, vn-quarterly-settlement-formula-11, vn-quarterly-settlement-formula-12, vn-quarterly-settlement-formula-14, vn-quarterly-settlement-formula-18, vn-quarterly-settlement-formula-21, vn-quarterly-settlement-formula-22, vn-quarterly-settlement-formula-24, vn-quarterly-settlement-formula-27, vn-quarterly-settlement-formula-33, vn-quarterly-settlement-formula-34, vn-quarterly-settlement-formula-37, vn-quarterly-settlement-formula-41, vn-quarterly-settlement-formula-42, vn-quarterly-settlement-formula-44, vn-quarterly-settlement-formula-45, vn-quarterly-settlement-44-45-mutually-exclusive, vn-quarterly-settlement-provider-payer-signers, vn-quarterly-settlement-formula-48, vn-quarterly-settlement-formula-50, vn-quarterly-settlement-formula-55 |
![]() ![]() |
1..* | Identifier | Định danh biên bản — Settlement identifier | |
![]() ![]() |
1..1 | Period | Quý quyết toán — Settlement quarter | |
![]() ![]() ![]() |
1..1 | dateTime | Starting time with inclusive boundary | |
![]() ![]() ![]() |
1..1 | dateTime | End time with inclusive boundary, if not ongoing | |
![]() ![]() |
1..1 | Reference(Organization) | Cơ quan BHXH — BHXH payer | |
![]() ![]() |
1..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở KCB — Healthcare provider | |
![]() ![]() |
1..1 | Identifier | Hợp đồng KCB BHYT — BHYT healthcare contract | |
![]() ![]() |
0..1 | date | Ngày hợp đồng — Contract date | |
![]() ![]() |
0..* | Reference(DocumentReference) | Tài liệu hỗ trợ — Supporting document | |
![]() ![]() |
0..1 | string | Tài khoản ngân hàng cơ quan BHXH — Payer bank account | |
![]() ![]() |
0..1 | string | Ngân hàng của cơ quan BHXH — Payer bank name | |
![]() ![]() |
0..1 | string | Tài khoản ngân hàng cơ sở KCB — Provider bank account | |
![]() ![]() |
0..1 | string | Ngân hàng của cơ sở KCB — Provider bank name | |
![]() ![]() |
1..* | BackboneElement | Chỉ tiêu quyết toán — Settlement indicator | |
![]() ![]() ![]() |
1..1 | Coding | Mã chỉ tiêu — Indicator code Binding: Chỉ tiêu quyết toán chi phí KCB BHYT theo quý — VN Quarterly Healthcare Cost Settlement Indicator ValueSet (required) | |
![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-quarterly-settlement-indicator-cs | |
![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() |
1..1 | Money | Số tiền trong quý — Quarter amount | |
![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() ![]() |
1..1 | Money | Lũy kế từ đầu năm — Year-to-date amount | |
![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() |
0..1 | string | Ý kiến cơ quan BHXH — Payer opinion | |
![]() ![]() |
0..1 | string | Ý kiến cơ sở KCB — Provider opinion | |
![]() ![]() |
2..* | BackboneElement | Người ký xác nhận — Attester | |
![]() ![]() ![]() |
1..1 | Reference(PractitionerRole) | Người ký theo vai trò — Attesting party and role | |
![]() ![]() ![]() |
1..1 | CodeableConcept | Vai trò ký — Attestation role | |
![]() ![]() ![]() |
0..1 | dateTime | Thời điểm ký — Attestation time | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| vnCoreQuarterlyHealthcareCostSettlement.indicator.code | Base | required | Chỉ tiêu quyết toán chi phí KCB BHYT theo quý — VN Quarterly Healthcare Cost Settlement Indicator ValueSet | 📦0.9.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| vn-quarterly-settlement-44-45-mutually-exclusive | error | vnCoreQuarterlyHealthcareCostSettlement | Nếu mã 44 dương thì mã 45 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, áp dụng độc lập cho từng cột. If indicator 44 is positive, indicator 45 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
(indicator.where(code.code = '44').quarterAmount.value > 0 implies ((indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = 0) or (indicator.where(code.code = '45').quarterAmount.value.empty() and indicator.where(code.code = '45').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and (indicator.where(code.code = '44').yearToDateAmount.value > 0 implies ((indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = 0) or (indicator.where(code.code = '45').yearToDateAmount.value.empty() and indicator.where(code.code = '45').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-amount-applicability | error | vnCoreQuarterlyHealthcareCostSettlement | Ma trận áp dụng của Mẫu 06/BH phải được giữ nguyên: mã 1, 2, 3, 10 không có giá trị lũy kế và phải mang DAR `not-applicable`; mã 30, 43 không có giá trị ở cả hai cột và phải mang cùng DAR; các ô áp dụng khác phải có đúng một Money.value, ngoại trừ nhánh điều kiện của mã 42 và cặp 44/45 được kiểm riêng. Preserve the Form 06/BH applicability matrix: indicators 1, 2, 3, and 10 have no year-to-date value and SHALL carry DAR `not-applicable`; indicators 30 and 43 have no value in either column and SHALL carry the same DAR; every other applicable cell SHALL contain exactly one Money.value, except the conditional branches of indicator 42 and indicators 44/45, which are validated separately. |
indicator.where(code.code = '1' or code.code = '2' or code.code = '3' or code.code = '10').yearToDateAmount.all(value.empty() and extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable') and indicator.where(code.code = '30' or code.code = '43').all(quarterAmount.value.empty() and quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable' and yearToDateAmount.value.empty() and yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable') and indicator.where(code.code != '30' and code.code != '42' and code.code != '43' and code.code != '44' and code.code != '45').quarterAmount.all(value.count() = 1) and indicator.where(code.code != '1' and code.code != '2' and code.code != '3' and code.code != '10' and code.code != '30' and code.code != '42' and code.code != '43' and code.code != '44' and code.code != '45').yearToDateAmount.all(value.count() = 1)
|
| vn-quarterly-settlement-calendar-quarter | error | vnCoreQuarterlyHealthcareCostSettlement | Period phải bắt đầu ngày đầu quý và kết thúc ngày cuối cùng của cùng quý, cùng năm. The period SHALL start on the first day and end on the last day of the same calendar quarter and year. |
period.start.exists() and period.end.exists() and period.start.toString().substring(0, 4) = period.end.toString().substring(0, 4) and ((period.start.toString().contains('-01-01') and period.end.toString().contains('-03-31')) or (period.start.toString().contains('-04-01') and period.end.toString().contains('-06-30')) or (period.start.toString().contains('-07-01') and period.end.toString().contains('-09-30')) or (period.start.toString().contains('-10-01') and period.end.toString().contains('-12-31')))
|
| vn-quarterly-settlement-current-indicator-set | error | vnCoreQuarterlyHealthcareCostSettlement | Biên bản phải có đúng và đủ 55 mã chỉ tiêu hiện hành, mỗi mã xuất hiện đúng một lần. The settlement SHALL contain the complete current set of 55 indicator codes, with no duplicate code. |
indicator.code.code.count() = 55 and indicator.code.code.isDistinct()
|
| vn-quarterly-settlement-formula-1 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 1 phải bằng mã số 2 cộng mã số 11; biểu mẫu không ghi lũy kế cho mã 1 và 2. In the quarter column, indicator 1 SHALL equal indicators 2 plus 11; the form does not populate year-to-date values for indicators 1 and 2. |
indicator.where(code.code = '1').quarterAmount.value = indicator.where(code.code = '2').quarterAmount.value + indicator.where(code.code = '11').quarterAmount.value
|
| vn-quarterly-settlement-formula-2 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 2 phải bằng mã số 3 cộng mã số 4 trừ mã số 8; biểu mẫu không ghi lũy kế cho mã 2 và 3. In the quarter column, indicator 2 SHALL equal 3 plus 4 minus 8; the form does not populate year-to-date values for indicators 2 and 3. |
indicator.where(code.code = '2').quarterAmount.value = indicator.where(code.code = '3').quarterAmount.value + indicator.where(code.code = '4').quarterAmount.value - indicator.where(code.code = '8').quarterAmount.value
|
| vn-quarterly-settlement-formula-4 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 4 phải bằng mã số 5 cộng mã số 6 trừ mã số 7 cho cả hai cột. Indicator 4 SHALL equal 5 plus 6 minus 7 for both columns. |
indicator.where(code.code = '4').quarterAmount.value = indicator.where(code.code = '5').quarterAmount.value + indicator.where(code.code = '6').quarterAmount.value - indicator.where(code.code = '7').quarterAmount.value and indicator.where(code.code = '4').yearToDateAmount.value = indicator.where(code.code = '5').yearToDateAmount.value + indicator.where(code.code = '6').yearToDateAmount.value - indicator.where(code.code = '7').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-9 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 9 phải bằng mã số 23 cho cả hai cột. Indicator 9 SHALL equal indicator 23 for both columns. |
indicator.where(code.code = '9').quarterAmount.value = indicator.where(code.code = '23').quarterAmount.value and indicator.where(code.code = '9').yearToDateAmount.value = indicator.where(code.code = '23').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-10 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 10 phải bằng mã số 2 trừ mã số 9; biểu mẫu không ghi lũy kế cho mã 10. In the quarter column, indicator 10 SHALL equal indicator 2 minus indicator 9; the form does not populate a year-to-date value for indicator 10. |
indicator.where(code.code = '10').quarterAmount.value = indicator.where(code.code = '2').quarterAmount.value - indicator.where(code.code = '9').quarterAmount.value
|
| vn-quarterly-settlement-formula-11 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 11 phải bằng mã số 24 cho cả hai cột. Indicator 11 SHALL equal indicator 24 for both columns. |
indicator.where(code.code = '11').quarterAmount.value = indicator.where(code.code = '24').quarterAmount.value and indicator.where(code.code = '11').yearToDateAmount.value = indicator.where(code.code = '24').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-12 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 12 phải bằng mã số 13 cộng mã số 14 cộng mã số 18 cho cả hai cột. Indicator 12 SHALL equal indicators 13 plus 14 plus 18 for both columns. |
indicator.where(code.code = '12').quarterAmount.value = indicator.where(code.code = '13').quarterAmount.value + indicator.where(code.code = '14').quarterAmount.value + indicator.where(code.code = '18').quarterAmount.value and indicator.where(code.code = '12').yearToDateAmount.value = indicator.where(code.code = '13').yearToDateAmount.value + indicator.where(code.code = '14').yearToDateAmount.value + indicator.where(code.code = '18').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-14 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 14 phải bằng mã số 15 cộng mã số 16 cộng mã số 17 cho cả hai cột. Indicator 14 SHALL equal indicators 15 plus 16 plus 17 for both columns. |
indicator.where(code.code = '14').quarterAmount.value = indicator.where(code.code = '15').quarterAmount.value + indicator.where(code.code = '16').quarterAmount.value + indicator.where(code.code = '17').quarterAmount.value and indicator.where(code.code = '14').yearToDateAmount.value = indicator.where(code.code = '15').yearToDateAmount.value + indicator.where(code.code = '16').yearToDateAmount.value + indicator.where(code.code = '17').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-18 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 18 phải bằng mã số 19 trừ mã số 20 cho cả hai cột. Indicator 18 SHALL equal indicator 19 minus indicator 20 for both columns. |
indicator.where(code.code = '18').quarterAmount.value = indicator.where(code.code = '19').quarterAmount.value - indicator.where(code.code = '20').quarterAmount.value and indicator.where(code.code = '18').yearToDateAmount.value = indicator.where(code.code = '19').yearToDateAmount.value - indicator.where(code.code = '20').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-21 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 21 phải bằng mã số 13 cộng mã số 15 cộng mã số 18 cho cả hai cột. Indicator 21 SHALL equal indicators 13 plus 15 plus 18 for both columns. |
indicator.where(code.code = '21').quarterAmount.value = indicator.where(code.code = '13').quarterAmount.value + indicator.where(code.code = '15').quarterAmount.value + indicator.where(code.code = '18').quarterAmount.value and indicator.where(code.code = '21').yearToDateAmount.value = indicator.where(code.code = '13').yearToDateAmount.value + indicator.where(code.code = '15').yearToDateAmount.value + indicator.where(code.code = '18').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-22 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 22 phải bằng mã số 23 cộng mã số 24 cho cả hai cột. Indicator 22 SHALL equal indicators 23 plus 24 for both columns. |
indicator.where(code.code = '22').quarterAmount.value = indicator.where(code.code = '23').quarterAmount.value + indicator.where(code.code = '24').quarterAmount.value and indicator.where(code.code = '22').yearToDateAmount.value = indicator.where(code.code = '23').yearToDateAmount.value + indicator.where(code.code = '24').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-24 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 24 phải bằng mã số 25 cộng mã số 26 cho cả hai cột. Indicator 24 SHALL equal indicators 25 plus 26 for both columns. |
indicator.where(code.code = '24').quarterAmount.value = indicator.where(code.code = '25').quarterAmount.value + indicator.where(code.code = '26').quarterAmount.value and indicator.where(code.code = '24').yearToDateAmount.value = indicator.where(code.code = '25').yearToDateAmount.value + indicator.where(code.code = '26').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-27 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 27 phải bằng mã số 21 trừ mã số 23 cho cả hai cột. Indicator 27 SHALL equal indicator 21 minus indicator 23 for both columns. |
indicator.where(code.code = '27').quarterAmount.value = indicator.where(code.code = '21').quarterAmount.value - indicator.where(code.code = '23').quarterAmount.value and indicator.where(code.code = '27').yearToDateAmount.value = indicator.where(code.code = '21').yearToDateAmount.value - indicator.where(code.code = '23').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-33 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 33 phải bằng mã số 34 cộng mã số 37 cho cả hai cột. Indicator 33 SHALL equal indicators 34 plus 37 for both columns. |
indicator.where(code.code = '33').quarterAmount.value = indicator.where(code.code = '34').quarterAmount.value + indicator.where(code.code = '37').quarterAmount.value and indicator.where(code.code = '33').yearToDateAmount.value = indicator.where(code.code = '34').yearToDateAmount.value + indicator.where(code.code = '37').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-34 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 34 phải bằng mã số 35 cộng mã số 36 cho cả hai cột. Indicator 34 SHALL equal indicators 35 plus 36 for both columns. |
indicator.where(code.code = '34').quarterAmount.value = indicator.where(code.code = '35').quarterAmount.value + indicator.where(code.code = '36').quarterAmount.value and indicator.where(code.code = '34').yearToDateAmount.value = indicator.where(code.code = '35').yearToDateAmount.value + indicator.where(code.code = '36').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-37 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 37 phải bằng mã số 38 cộng mã số 39 cho cả hai cột. Indicator 37 SHALL equal indicators 38 plus 39 for both columns. |
indicator.where(code.code = '37').quarterAmount.value = indicator.where(code.code = '38').quarterAmount.value + indicator.where(code.code = '39').quarterAmount.value and indicator.where(code.code = '37').yearToDateAmount.value = indicator.where(code.code = '38').yearToDateAmount.value + indicator.where(code.code = '39').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-41 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 41 phải bằng mã số 22 trừ mã số 40 cho cả hai cột. Indicator 41 SHALL equal indicator 22 minus indicator 40 for both columns. |
indicator.where(code.code = '41').quarterAmount.value = indicator.where(code.code = '22').quarterAmount.value - indicator.where(code.code = '40').quarterAmount.value and indicator.where(code.code = '41').yearToDateAmount.value = indicator.where(code.code = '22').yearToDateAmount.value - indicator.where(code.code = '40').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-42 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi mã số 35 lớn hơn hoặc bằng mã số 23, mã số 42 phải bằng mã số 35 trừ mã số 23; khi mã số 35 nhỏ hơn mã số 23, mã số 42 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, áp dụng độc lập cho từng cột. When indicator 35 is greater than or equal to indicator 23, indicator 42 SHALL equal 35 minus 23; when indicator 35 is less than indicator 23, indicator 42 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
(indicator.where(code.code = '35').quarterAmount.value >= indicator.where(code.code = '23').quarterAmount.value implies (indicator.where(code.code = '42').quarterAmount.value.count() = 1 and indicator.where(code.code = '42').quarterAmount.value = indicator.where(code.code = '35').quarterAmount.value - indicator.where(code.code = '23').quarterAmount.value)) and (indicator.where(code.code = '35').quarterAmount.value < indicator.where(code.code = '23').quarterAmount.value implies ((indicator.where(code.code = '42').quarterAmount.value.count() = 1 and indicator.where(code.code = '42').quarterAmount.value = 0) or (indicator.where(code.code = '42').quarterAmount.value.empty() and indicator.where(code.code = '42').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and (indicator.where(code.code = '35').yearToDateAmount.value >= indicator.where(code.code = '23').yearToDateAmount.value implies (indicator.where(code.code = '42').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '42').yearToDateAmount.value = indicator.where(code.code = '35').yearToDateAmount.value - indicator.where(code.code = '23').yearToDateAmount.value)) and (indicator.where(code.code = '35').yearToDateAmount.value < indicator.where(code.code = '23').yearToDateAmount.value implies ((indicator.where(code.code = '42').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '42').yearToDateAmount.value = 0) or (indicator.where(code.code = '42').yearToDateAmount.value.empty() and indicator.where(code.code = '42').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-44 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi nguồn kinh phí sau điều chỉnh đủ thanh toán mã 41 và 42, mã 44 bằng (31-32+33)-41-42; ở nhánh thiếu kinh phí, mã 44 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, cho từng cột. When adjusted available funding covers indicators 41 and 42, indicator 44 SHALL equal (31-32+33)-41-42; in the insufficient-funding branch, indicator 44 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) >= (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies (indicator.where(code.code = '44').quarterAmount.value.count() = 1 and indicator.where(code.code = '44').quarterAmount.value = indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value - indicator.where(code.code = '41').quarterAmount.value - indicator.where(code.code = '42').quarterAmount.value)) and ((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) < (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies ((indicator.where(code.code = '44').quarterAmount.value.count() = 1 and indicator.where(code.code = '44').quarterAmount.value = 0) or (indicator.where(code.code = '44').quarterAmount.value.empty() and indicator.where(code.code = '44').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) >= (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies (indicator.where(code.code = '44').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '44').yearToDateAmount.value = indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value - indicator.where(code.code = '41').yearToDateAmount.value - indicator.where(code.code = '42').yearToDateAmount.value)) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) < (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies ((indicator.where(code.code = '44').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '44').yearToDateAmount.value = 0) or (indicator.where(code.code = '44').yearToDateAmount.value.empty() and indicator.where(code.code = '44').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-45 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi nguồn kinh phí sau điều chỉnh không đủ thanh toán mã 41 và 42, mã 45 bằng 41+42-(31-32+33); ở nhánh đủ kinh phí, mã 45 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, cho từng cột. When adjusted available funding is insufficient for indicators 41 and 42, indicator 45 SHALL equal 41+42-(31-32+33); in the sufficient-funding branch, indicator 45 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) < (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies (indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value - (indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value))) and ((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) >= (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies ((indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = 0) or (indicator.where(code.code = '45').quarterAmount.value.empty() and indicator.where(code.code = '45').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) < (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies (indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value - (indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) >= (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies ((indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = 0) or (indicator.where(code.code = '45').yearToDateAmount.value.empty() and indicator.where(code.code = '45').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-48 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 48 phải bằng mã số 42 cho cả hai cột. Indicator 48 SHALL equal indicator 42 for both columns. |
indicator.where(code.code = '48').quarterAmount.value = indicator.where(code.code = '42').quarterAmount.value and indicator.where(code.code = '48').yearToDateAmount.value = indicator.where(code.code = '42').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-50 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 50 phải bằng mã số 47 cộng mã số 48 trừ mã số 49 cho cả hai cột. Indicator 50 SHALL equal indicators 47 plus 48 minus 49 for both columns. |
indicator.where(code.code = '50').quarterAmount.value = indicator.where(code.code = '47').quarterAmount.value + indicator.where(code.code = '48').quarterAmount.value - indicator.where(code.code = '49').quarterAmount.value and indicator.where(code.code = '50').yearToDateAmount.value = indicator.where(code.code = '47').yearToDateAmount.value + indicator.where(code.code = '48').yearToDateAmount.value - indicator.where(code.code = '49').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-55 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 55 phải bằng mã số 52 cộng mã số 53 trừ mã số 54 cho cả hai cột. Indicator 55 SHALL equal indicators 52 plus 53 minus 54 for both columns. |
indicator.where(code.code = '55').quarterAmount.value = indicator.where(code.code = '52').quarterAmount.value + indicator.where(code.code = '53').quarterAmount.value - indicator.where(code.code = '54').quarterAmount.value and indicator.where(code.code = '55').yearToDateAmount.value = indicator.where(code.code = '52').yearToDateAmount.value + indicator.where(code.code = '53').yearToDateAmount.value - indicator.where(code.code = '54').yearToDateAmount.value
|
| vn-quarterly-settlement-money-vnd | error | vnCoreQuarterlyHealthcareCostSettlement | Mọi số tiền trong quý và lũy kế phải dùng VND. Every quarter and year-to-date amount SHALL use VND. |
indicator.quarterAmount.currency.all($this = 'VND') and indicator.yearToDateAmount.currency.all($this = 'VND')
|
| vn-quarterly-settlement-provider-payer-signers | error | vnCoreQuarterlyHealthcareCostSettlement | Hai nhóm người ký logic đều bắt buộc và tách biệt: providerSigner 1..* dùng đúng một role AUT và payerSigner 1..* dùng đúng một role VRF; một attester không được đồng thời thuộc cả hai nhóm. Both logical signer groups are required and distinct: providerSigner 1..* uses exactly one AUT discriminator and payerSigner 1..* uses exactly one VRF discriminator; an attester cannot belong to both groups. |
attester.all(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and (code = 'AUT' or code = 'VRF')).code.count() = 1) and attester.where(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code = 'AUT').exists()).count() >= 1 and attester.where(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code = 'VRF').exists()).count() >= 1
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Base | Quyết toán chi phí KCB BHYT theo quý — VN Core Quarterly Healthcare Cost Settlement Constraints: vn-quarterly-settlement-current-indicator-set, vn-quarterly-settlement-calendar-quarter, vn-quarterly-settlement-money-vnd, vn-quarterly-settlement-amount-applicability, vn-quarterly-settlement-formula-1, vn-quarterly-settlement-formula-2, vn-quarterly-settlement-formula-4, vn-quarterly-settlement-formula-9, vn-quarterly-settlement-formula-10, vn-quarterly-settlement-formula-11, vn-quarterly-settlement-formula-12, vn-quarterly-settlement-formula-14, vn-quarterly-settlement-formula-18, vn-quarterly-settlement-formula-21, vn-quarterly-settlement-formula-22, vn-quarterly-settlement-formula-24, vn-quarterly-settlement-formula-27, vn-quarterly-settlement-formula-33, vn-quarterly-settlement-formula-34, vn-quarterly-settlement-formula-37, vn-quarterly-settlement-formula-41, vn-quarterly-settlement-formula-42, vn-quarterly-settlement-formula-44, vn-quarterly-settlement-formula-45, vn-quarterly-settlement-44-45-mutually-exclusive, vn-quarterly-settlement-provider-payer-signers, vn-quarterly-settlement-formula-48, vn-quarterly-settlement-formula-50, vn-quarterly-settlement-formula-55 |
![]() ![]() |
1..* | Identifier | Định danh biên bản — Settlement identifier | |
![]() ![]() |
C | 1..1 | Period | Quý quyết toán — Settlement quarter Constraints: per-1 |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
ΣC | 1..1 | dateTime | Starting time with inclusive boundary |
![]() ![]() ![]() |
ΣC | 1..1 | dateTime | End time with inclusive boundary, if not ongoing |
![]() ![]() |
1..1 | Reference(Organization) | Cơ quan BHXH — BHXH payer | |
![]() ![]() |
1..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở KCB — Healthcare provider | |
![]() ![]() |
1..1 | Identifier | Hợp đồng KCB BHYT — BHYT healthcare contract | |
![]() ![]() |
0..1 | date | Ngày hợp đồng — Contract date | |
![]() ![]() |
0..* | Reference(DocumentReference) | Tài liệu hỗ trợ — Supporting document | |
![]() ![]() |
0..1 | string | Tài khoản ngân hàng cơ quan BHXH — Payer bank account | |
![]() ![]() |
0..1 | string | Ngân hàng của cơ quan BHXH — Payer bank name | |
![]() ![]() |
0..1 | string | Tài khoản ngân hàng cơ sở KCB — Provider bank account | |
![]() ![]() |
0..1 | string | Ngân hàng của cơ sở KCB — Provider bank name | |
![]() ![]() |
1..* | BackboneElement | Chỉ tiêu quyết toán — Settlement indicator | |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
1..1 | Coding | Mã chỉ tiêu — Indicator code Binding: Chỉ tiêu quyết toán chi phí KCB BHYT theo quý — VN Quarterly Healthcare Cost Settlement Indicator ValueSet (required) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-quarterly-settlement-indicator-cs |
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant |
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system |
![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user |
![]() ![]() ![]() |
1..1 | Money | Số tiền trong quý — Quarter amount | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() ![]() |
1..1 | Money | Lũy kế từ đầu năm — Year-to-date amount | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() |
0..1 | string | Ý kiến cơ quan BHXH — Payer opinion | |
![]() ![]() |
0..1 | string | Ý kiến cơ sở KCB — Provider opinion | |
![]() ![]() |
2..* | BackboneElement | Người ký xác nhận — Attester | |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
1..1 | Reference(PractitionerRole) | Người ký theo vai trò — Attesting party and role | |
![]() ![]() ![]() |
1..1 | CodeableConcept | Vai trò ký — Attestation role | |
![]() ![]() ![]() |
0..1 | dateTime | Thời điểm ký — Attestation time | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| vnCoreQuarterlyHealthcareCostSettlement.indicator.code | Base | required | Chỉ tiêu quyết toán chi phí KCB BHYT theo quý — VN Quarterly Healthcare Cost Settlement Indicator ValueSet | 📦0.9.0 | This IG |
| vnCoreQuarterlyHealthcareCostSettlement.indicator.quarterAmount.currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| vnCoreQuarterlyHealthcareCostSettlement.indicator.yearToDateAmount.currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| 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()
|
| per-1 | error | vnCoreQuarterlyHealthcareCostSettlement.period | If present, start SHALL have a lower value than end |
start.hasValue().not() or end.hasValue().not() or (start <= end)
|
| vn-quarterly-settlement-44-45-mutually-exclusive | error | vnCoreQuarterlyHealthcareCostSettlement | Nếu mã 44 dương thì mã 45 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, áp dụng độc lập cho từng cột. If indicator 44 is positive, indicator 45 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
(indicator.where(code.code = '44').quarterAmount.value > 0 implies ((indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = 0) or (indicator.where(code.code = '45').quarterAmount.value.empty() and indicator.where(code.code = '45').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and (indicator.where(code.code = '44').yearToDateAmount.value > 0 implies ((indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = 0) or (indicator.where(code.code = '45').yearToDateAmount.value.empty() and indicator.where(code.code = '45').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-amount-applicability | error | vnCoreQuarterlyHealthcareCostSettlement | Ma trận áp dụng của Mẫu 06/BH phải được giữ nguyên: mã 1, 2, 3, 10 không có giá trị lũy kế và phải mang DAR `not-applicable`; mã 30, 43 không có giá trị ở cả hai cột và phải mang cùng DAR; các ô áp dụng khác phải có đúng một Money.value, ngoại trừ nhánh điều kiện của mã 42 và cặp 44/45 được kiểm riêng. Preserve the Form 06/BH applicability matrix: indicators 1, 2, 3, and 10 have no year-to-date value and SHALL carry DAR `not-applicable`; indicators 30 and 43 have no value in either column and SHALL carry the same DAR; every other applicable cell SHALL contain exactly one Money.value, except the conditional branches of indicator 42 and indicators 44/45, which are validated separately. |
indicator.where(code.code = '1' or code.code = '2' or code.code = '3' or code.code = '10').yearToDateAmount.all(value.empty() and extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable') and indicator.where(code.code = '30' or code.code = '43').all(quarterAmount.value.empty() and quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable' and yearToDateAmount.value.empty() and yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable') and indicator.where(code.code != '30' and code.code != '42' and code.code != '43' and code.code != '44' and code.code != '45').quarterAmount.all(value.count() = 1) and indicator.where(code.code != '1' and code.code != '2' and code.code != '3' and code.code != '10' and code.code != '30' and code.code != '42' and code.code != '43' and code.code != '44' and code.code != '45').yearToDateAmount.all(value.count() = 1)
|
| vn-quarterly-settlement-calendar-quarter | error | vnCoreQuarterlyHealthcareCostSettlement | Period phải bắt đầu ngày đầu quý và kết thúc ngày cuối cùng của cùng quý, cùng năm. The period SHALL start on the first day and end on the last day of the same calendar quarter and year. |
period.start.exists() and period.end.exists() and period.start.toString().substring(0, 4) = period.end.toString().substring(0, 4) and ((period.start.toString().contains('-01-01') and period.end.toString().contains('-03-31')) or (period.start.toString().contains('-04-01') and period.end.toString().contains('-06-30')) or (period.start.toString().contains('-07-01') and period.end.toString().contains('-09-30')) or (period.start.toString().contains('-10-01') and period.end.toString().contains('-12-31')))
|
| vn-quarterly-settlement-current-indicator-set | error | vnCoreQuarterlyHealthcareCostSettlement | Biên bản phải có đúng và đủ 55 mã chỉ tiêu hiện hành, mỗi mã xuất hiện đúng một lần. The settlement SHALL contain the complete current set of 55 indicator codes, with no duplicate code. |
indicator.code.code.count() = 55 and indicator.code.code.isDistinct()
|
| vn-quarterly-settlement-formula-1 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 1 phải bằng mã số 2 cộng mã số 11; biểu mẫu không ghi lũy kế cho mã 1 và 2. In the quarter column, indicator 1 SHALL equal indicators 2 plus 11; the form does not populate year-to-date values for indicators 1 and 2. |
indicator.where(code.code = '1').quarterAmount.value = indicator.where(code.code = '2').quarterAmount.value + indicator.where(code.code = '11').quarterAmount.value
|
| vn-quarterly-settlement-formula-2 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 2 phải bằng mã số 3 cộng mã số 4 trừ mã số 8; biểu mẫu không ghi lũy kế cho mã 2 và 3. In the quarter column, indicator 2 SHALL equal 3 plus 4 minus 8; the form does not populate year-to-date values for indicators 2 and 3. |
indicator.where(code.code = '2').quarterAmount.value = indicator.where(code.code = '3').quarterAmount.value + indicator.where(code.code = '4').quarterAmount.value - indicator.where(code.code = '8').quarterAmount.value
|
| vn-quarterly-settlement-formula-4 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 4 phải bằng mã số 5 cộng mã số 6 trừ mã số 7 cho cả hai cột. Indicator 4 SHALL equal 5 plus 6 minus 7 for both columns. |
indicator.where(code.code = '4').quarterAmount.value = indicator.where(code.code = '5').quarterAmount.value + indicator.where(code.code = '6').quarterAmount.value - indicator.where(code.code = '7').quarterAmount.value and indicator.where(code.code = '4').yearToDateAmount.value = indicator.where(code.code = '5').yearToDateAmount.value + indicator.where(code.code = '6').yearToDateAmount.value - indicator.where(code.code = '7').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-9 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 9 phải bằng mã số 23 cho cả hai cột. Indicator 9 SHALL equal indicator 23 for both columns. |
indicator.where(code.code = '9').quarterAmount.value = indicator.where(code.code = '23').quarterAmount.value and indicator.where(code.code = '9').yearToDateAmount.value = indicator.where(code.code = '23').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-10 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 10 phải bằng mã số 2 trừ mã số 9; biểu mẫu không ghi lũy kế cho mã 10. In the quarter column, indicator 10 SHALL equal indicator 2 minus indicator 9; the form does not populate a year-to-date value for indicator 10. |
indicator.where(code.code = '10').quarterAmount.value = indicator.where(code.code = '2').quarterAmount.value - indicator.where(code.code = '9').quarterAmount.value
|
| vn-quarterly-settlement-formula-11 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 11 phải bằng mã số 24 cho cả hai cột. Indicator 11 SHALL equal indicator 24 for both columns. |
indicator.where(code.code = '11').quarterAmount.value = indicator.where(code.code = '24').quarterAmount.value and indicator.where(code.code = '11').yearToDateAmount.value = indicator.where(code.code = '24').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-12 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 12 phải bằng mã số 13 cộng mã số 14 cộng mã số 18 cho cả hai cột. Indicator 12 SHALL equal indicators 13 plus 14 plus 18 for both columns. |
indicator.where(code.code = '12').quarterAmount.value = indicator.where(code.code = '13').quarterAmount.value + indicator.where(code.code = '14').quarterAmount.value + indicator.where(code.code = '18').quarterAmount.value and indicator.where(code.code = '12').yearToDateAmount.value = indicator.where(code.code = '13').yearToDateAmount.value + indicator.where(code.code = '14').yearToDateAmount.value + indicator.where(code.code = '18').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-14 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 14 phải bằng mã số 15 cộng mã số 16 cộng mã số 17 cho cả hai cột. Indicator 14 SHALL equal indicators 15 plus 16 plus 17 for both columns. |
indicator.where(code.code = '14').quarterAmount.value = indicator.where(code.code = '15').quarterAmount.value + indicator.where(code.code = '16').quarterAmount.value + indicator.where(code.code = '17').quarterAmount.value and indicator.where(code.code = '14').yearToDateAmount.value = indicator.where(code.code = '15').yearToDateAmount.value + indicator.where(code.code = '16').yearToDateAmount.value + indicator.where(code.code = '17').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-18 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 18 phải bằng mã số 19 trừ mã số 20 cho cả hai cột. Indicator 18 SHALL equal indicator 19 minus indicator 20 for both columns. |
indicator.where(code.code = '18').quarterAmount.value = indicator.where(code.code = '19').quarterAmount.value - indicator.where(code.code = '20').quarterAmount.value and indicator.where(code.code = '18').yearToDateAmount.value = indicator.where(code.code = '19').yearToDateAmount.value - indicator.where(code.code = '20').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-21 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 21 phải bằng mã số 13 cộng mã số 15 cộng mã số 18 cho cả hai cột. Indicator 21 SHALL equal indicators 13 plus 15 plus 18 for both columns. |
indicator.where(code.code = '21').quarterAmount.value = indicator.where(code.code = '13').quarterAmount.value + indicator.where(code.code = '15').quarterAmount.value + indicator.where(code.code = '18').quarterAmount.value and indicator.where(code.code = '21').yearToDateAmount.value = indicator.where(code.code = '13').yearToDateAmount.value + indicator.where(code.code = '15').yearToDateAmount.value + indicator.where(code.code = '18').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-22 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 22 phải bằng mã số 23 cộng mã số 24 cho cả hai cột. Indicator 22 SHALL equal indicators 23 plus 24 for both columns. |
indicator.where(code.code = '22').quarterAmount.value = indicator.where(code.code = '23').quarterAmount.value + indicator.where(code.code = '24').quarterAmount.value and indicator.where(code.code = '22').yearToDateAmount.value = indicator.where(code.code = '23').yearToDateAmount.value + indicator.where(code.code = '24').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-24 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 24 phải bằng mã số 25 cộng mã số 26 cho cả hai cột. Indicator 24 SHALL equal indicators 25 plus 26 for both columns. |
indicator.where(code.code = '24').quarterAmount.value = indicator.where(code.code = '25').quarterAmount.value + indicator.where(code.code = '26').quarterAmount.value and indicator.where(code.code = '24').yearToDateAmount.value = indicator.where(code.code = '25').yearToDateAmount.value + indicator.where(code.code = '26').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-27 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 27 phải bằng mã số 21 trừ mã số 23 cho cả hai cột. Indicator 27 SHALL equal indicator 21 minus indicator 23 for both columns. |
indicator.where(code.code = '27').quarterAmount.value = indicator.where(code.code = '21').quarterAmount.value - indicator.where(code.code = '23').quarterAmount.value and indicator.where(code.code = '27').yearToDateAmount.value = indicator.where(code.code = '21').yearToDateAmount.value - indicator.where(code.code = '23').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-33 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 33 phải bằng mã số 34 cộng mã số 37 cho cả hai cột. Indicator 33 SHALL equal indicators 34 plus 37 for both columns. |
indicator.where(code.code = '33').quarterAmount.value = indicator.where(code.code = '34').quarterAmount.value + indicator.where(code.code = '37').quarterAmount.value and indicator.where(code.code = '33').yearToDateAmount.value = indicator.where(code.code = '34').yearToDateAmount.value + indicator.where(code.code = '37').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-34 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 34 phải bằng mã số 35 cộng mã số 36 cho cả hai cột. Indicator 34 SHALL equal indicators 35 plus 36 for both columns. |
indicator.where(code.code = '34').quarterAmount.value = indicator.where(code.code = '35').quarterAmount.value + indicator.where(code.code = '36').quarterAmount.value and indicator.where(code.code = '34').yearToDateAmount.value = indicator.where(code.code = '35').yearToDateAmount.value + indicator.where(code.code = '36').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-37 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 37 phải bằng mã số 38 cộng mã số 39 cho cả hai cột. Indicator 37 SHALL equal indicators 38 plus 39 for both columns. |
indicator.where(code.code = '37').quarterAmount.value = indicator.where(code.code = '38').quarterAmount.value + indicator.where(code.code = '39').quarterAmount.value and indicator.where(code.code = '37').yearToDateAmount.value = indicator.where(code.code = '38').yearToDateAmount.value + indicator.where(code.code = '39').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-41 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 41 phải bằng mã số 22 trừ mã số 40 cho cả hai cột. Indicator 41 SHALL equal indicator 22 minus indicator 40 for both columns. |
indicator.where(code.code = '41').quarterAmount.value = indicator.where(code.code = '22').quarterAmount.value - indicator.where(code.code = '40').quarterAmount.value and indicator.where(code.code = '41').yearToDateAmount.value = indicator.where(code.code = '22').yearToDateAmount.value - indicator.where(code.code = '40').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-42 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi mã số 35 lớn hơn hoặc bằng mã số 23, mã số 42 phải bằng mã số 35 trừ mã số 23; khi mã số 35 nhỏ hơn mã số 23, mã số 42 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, áp dụng độc lập cho từng cột. When indicator 35 is greater than or equal to indicator 23, indicator 42 SHALL equal 35 minus 23; when indicator 35 is less than indicator 23, indicator 42 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
(indicator.where(code.code = '35').quarterAmount.value >= indicator.where(code.code = '23').quarterAmount.value implies (indicator.where(code.code = '42').quarterAmount.value.count() = 1 and indicator.where(code.code = '42').quarterAmount.value = indicator.where(code.code = '35').quarterAmount.value - indicator.where(code.code = '23').quarterAmount.value)) and (indicator.where(code.code = '35').quarterAmount.value < indicator.where(code.code = '23').quarterAmount.value implies ((indicator.where(code.code = '42').quarterAmount.value.count() = 1 and indicator.where(code.code = '42').quarterAmount.value = 0) or (indicator.where(code.code = '42').quarterAmount.value.empty() and indicator.where(code.code = '42').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and (indicator.where(code.code = '35').yearToDateAmount.value >= indicator.where(code.code = '23').yearToDateAmount.value implies (indicator.where(code.code = '42').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '42').yearToDateAmount.value = indicator.where(code.code = '35').yearToDateAmount.value - indicator.where(code.code = '23').yearToDateAmount.value)) and (indicator.where(code.code = '35').yearToDateAmount.value < indicator.where(code.code = '23').yearToDateAmount.value implies ((indicator.where(code.code = '42').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '42').yearToDateAmount.value = 0) or (indicator.where(code.code = '42').yearToDateAmount.value.empty() and indicator.where(code.code = '42').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-44 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi nguồn kinh phí sau điều chỉnh đủ thanh toán mã 41 và 42, mã 44 bằng (31-32+33)-41-42; ở nhánh thiếu kinh phí, mã 44 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, cho từng cột. When adjusted available funding covers indicators 41 and 42, indicator 44 SHALL equal (31-32+33)-41-42; in the insufficient-funding branch, indicator 44 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) >= (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies (indicator.where(code.code = '44').quarterAmount.value.count() = 1 and indicator.where(code.code = '44').quarterAmount.value = indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value - indicator.where(code.code = '41').quarterAmount.value - indicator.where(code.code = '42').quarterAmount.value)) and ((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) < (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies ((indicator.where(code.code = '44').quarterAmount.value.count() = 1 and indicator.where(code.code = '44').quarterAmount.value = 0) or (indicator.where(code.code = '44').quarterAmount.value.empty() and indicator.where(code.code = '44').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) >= (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies (indicator.where(code.code = '44').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '44').yearToDateAmount.value = indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value - indicator.where(code.code = '41').yearToDateAmount.value - indicator.where(code.code = '42').yearToDateAmount.value)) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) < (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies ((indicator.where(code.code = '44').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '44').yearToDateAmount.value = 0) or (indicator.where(code.code = '44').yearToDateAmount.value.empty() and indicator.where(code.code = '44').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-45 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi nguồn kinh phí sau điều chỉnh không đủ thanh toán mã 41 và 42, mã 45 bằng 41+42-(31-32+33); ở nhánh đủ kinh phí, mã 45 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, cho từng cột. When adjusted available funding is insufficient for indicators 41 and 42, indicator 45 SHALL equal 41+42-(31-32+33); in the sufficient-funding branch, indicator 45 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) < (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies (indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value - (indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value))) and ((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) >= (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies ((indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = 0) or (indicator.where(code.code = '45').quarterAmount.value.empty() and indicator.where(code.code = '45').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) < (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies (indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value - (indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) >= (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies ((indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = 0) or (indicator.where(code.code = '45').yearToDateAmount.value.empty() and indicator.where(code.code = '45').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-48 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 48 phải bằng mã số 42 cho cả hai cột. Indicator 48 SHALL equal indicator 42 for both columns. |
indicator.where(code.code = '48').quarterAmount.value = indicator.where(code.code = '42').quarterAmount.value and indicator.where(code.code = '48').yearToDateAmount.value = indicator.where(code.code = '42').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-50 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 50 phải bằng mã số 47 cộng mã số 48 trừ mã số 49 cho cả hai cột. Indicator 50 SHALL equal indicators 47 plus 48 minus 49 for both columns. |
indicator.where(code.code = '50').quarterAmount.value = indicator.where(code.code = '47').quarterAmount.value + indicator.where(code.code = '48').quarterAmount.value - indicator.where(code.code = '49').quarterAmount.value and indicator.where(code.code = '50').yearToDateAmount.value = indicator.where(code.code = '47').yearToDateAmount.value + indicator.where(code.code = '48').yearToDateAmount.value - indicator.where(code.code = '49').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-55 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 55 phải bằng mã số 52 cộng mã số 53 trừ mã số 54 cho cả hai cột. Indicator 55 SHALL equal indicators 52 plus 53 minus 54 for both columns. |
indicator.where(code.code = '55').quarterAmount.value = indicator.where(code.code = '52').quarterAmount.value + indicator.where(code.code = '53').quarterAmount.value - indicator.where(code.code = '54').quarterAmount.value and indicator.where(code.code = '55').yearToDateAmount.value = indicator.where(code.code = '52').yearToDateAmount.value + indicator.where(code.code = '53').yearToDateAmount.value - indicator.where(code.code = '54').yearToDateAmount.value
|
| vn-quarterly-settlement-money-vnd | error | vnCoreQuarterlyHealthcareCostSettlement | Mọi số tiền trong quý và lũy kế phải dùng VND. Every quarter and year-to-date amount SHALL use VND. |
indicator.quarterAmount.currency.all($this = 'VND') and indicator.yearToDateAmount.currency.all($this = 'VND')
|
| vn-quarterly-settlement-provider-payer-signers | error | vnCoreQuarterlyHealthcareCostSettlement | Hai nhóm người ký logic đều bắt buộc và tách biệt: providerSigner 1..* dùng đúng một role AUT và payerSigner 1..* dùng đúng một role VRF; một attester không được đồng thời thuộc cả hai nhóm. Both logical signer groups are required and distinct: providerSigner 1..* uses exactly one AUT discriminator and payerSigner 1..* uses exactly one VRF discriminator; an attester cannot belong to both groups. |
attester.all(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and (code = 'AUT' or code = 'VRF')).code.count() = 1) and attester.where(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code = 'AUT').exists()).count() >= 1 and attester.where(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code = 'VRF').exists()).count() >= 1
|
Dạng xem Differential
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Base | Quyết toán chi phí KCB BHYT theo quý — VN Core Quarterly Healthcare Cost Settlement Constraints: vn-quarterly-settlement-current-indicator-set, vn-quarterly-settlement-calendar-quarter, vn-quarterly-settlement-money-vnd, vn-quarterly-settlement-amount-applicability, vn-quarterly-settlement-formula-1, vn-quarterly-settlement-formula-2, vn-quarterly-settlement-formula-4, vn-quarterly-settlement-formula-9, vn-quarterly-settlement-formula-10, vn-quarterly-settlement-formula-11, vn-quarterly-settlement-formula-12, vn-quarterly-settlement-formula-14, vn-quarterly-settlement-formula-18, vn-quarterly-settlement-formula-21, vn-quarterly-settlement-formula-22, vn-quarterly-settlement-formula-24, vn-quarterly-settlement-formula-27, vn-quarterly-settlement-formula-33, vn-quarterly-settlement-formula-34, vn-quarterly-settlement-formula-37, vn-quarterly-settlement-formula-41, vn-quarterly-settlement-formula-42, vn-quarterly-settlement-formula-44, vn-quarterly-settlement-formula-45, vn-quarterly-settlement-44-45-mutually-exclusive, vn-quarterly-settlement-provider-payer-signers, vn-quarterly-settlement-formula-48, vn-quarterly-settlement-formula-50, vn-quarterly-settlement-formula-55 |
![]() ![]() |
1..* | Identifier | Định danh biên bản — Settlement identifier | |
![]() ![]() |
1..1 | Period | Quý quyết toán — Settlement quarter | |
![]() ![]() ![]() |
1..1 | dateTime | Starting time with inclusive boundary | |
![]() ![]() ![]() |
1..1 | dateTime | End time with inclusive boundary, if not ongoing | |
![]() ![]() |
1..1 | Reference(Organization) | Cơ quan BHXH — BHXH payer | |
![]() ![]() |
1..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở KCB — Healthcare provider | |
![]() ![]() |
1..1 | Identifier | Hợp đồng KCB BHYT — BHYT healthcare contract | |
![]() ![]() |
0..1 | date | Ngày hợp đồng — Contract date | |
![]() ![]() |
0..* | Reference(DocumentReference) | Tài liệu hỗ trợ — Supporting document | |
![]() ![]() |
0..1 | string | Tài khoản ngân hàng cơ quan BHXH — Payer bank account | |
![]() ![]() |
0..1 | string | Ngân hàng của cơ quan BHXH — Payer bank name | |
![]() ![]() |
0..1 | string | Tài khoản ngân hàng cơ sở KCB — Provider bank account | |
![]() ![]() |
0..1 | string | Ngân hàng của cơ sở KCB — Provider bank name | |
![]() ![]() |
1..* | BackboneElement | Chỉ tiêu quyết toán — Settlement indicator | |
![]() ![]() ![]() |
1..1 | Coding | Mã chỉ tiêu — Indicator code Binding: Chỉ tiêu quyết toán chi phí KCB BHYT theo quý — VN Quarterly Healthcare Cost Settlement Indicator ValueSet (required) | |
![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-quarterly-settlement-indicator-cs | |
![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() |
1..1 | Money | Số tiền trong quý — Quarter amount | |
![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() ![]() |
1..1 | Money | Lũy kế từ đầu năm — Year-to-date amount | |
![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() |
0..1 | string | Ý kiến cơ quan BHXH — Payer opinion | |
![]() ![]() |
0..1 | string | Ý kiến cơ sở KCB — Provider opinion | |
![]() ![]() |
2..* | BackboneElement | Người ký xác nhận — Attester | |
![]() ![]() ![]() |
1..1 | Reference(PractitionerRole) | Người ký theo vai trò — Attesting party and role | |
![]() ![]() ![]() |
1..1 | CodeableConcept | Vai trò ký — Attestation role | |
![]() ![]() ![]() |
0..1 | dateTime | Thời điểm ký — Attestation time | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| vnCoreQuarterlyHealthcareCostSettlement.indicator.code | Base | required | Chỉ tiêu quyết toán chi phí KCB BHYT theo quý — VN Quarterly Healthcare Cost Settlement Indicator ValueSet | 📦0.9.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| vn-quarterly-settlement-44-45-mutually-exclusive | error | vnCoreQuarterlyHealthcareCostSettlement | Nếu mã 44 dương thì mã 45 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, áp dụng độc lập cho từng cột. If indicator 44 is positive, indicator 45 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
(indicator.where(code.code = '44').quarterAmount.value > 0 implies ((indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = 0) or (indicator.where(code.code = '45').quarterAmount.value.empty() and indicator.where(code.code = '45').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and (indicator.where(code.code = '44').yearToDateAmount.value > 0 implies ((indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = 0) or (indicator.where(code.code = '45').yearToDateAmount.value.empty() and indicator.where(code.code = '45').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-amount-applicability | error | vnCoreQuarterlyHealthcareCostSettlement | Ma trận áp dụng của Mẫu 06/BH phải được giữ nguyên: mã 1, 2, 3, 10 không có giá trị lũy kế và phải mang DAR `not-applicable`; mã 30, 43 không có giá trị ở cả hai cột và phải mang cùng DAR; các ô áp dụng khác phải có đúng một Money.value, ngoại trừ nhánh điều kiện của mã 42 và cặp 44/45 được kiểm riêng. Preserve the Form 06/BH applicability matrix: indicators 1, 2, 3, and 10 have no year-to-date value and SHALL carry DAR `not-applicable`; indicators 30 and 43 have no value in either column and SHALL carry the same DAR; every other applicable cell SHALL contain exactly one Money.value, except the conditional branches of indicator 42 and indicators 44/45, which are validated separately. |
indicator.where(code.code = '1' or code.code = '2' or code.code = '3' or code.code = '10').yearToDateAmount.all(value.empty() and extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable') and indicator.where(code.code = '30' or code.code = '43').all(quarterAmount.value.empty() and quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable' and yearToDateAmount.value.empty() and yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable') and indicator.where(code.code != '30' and code.code != '42' and code.code != '43' and code.code != '44' and code.code != '45').quarterAmount.all(value.count() = 1) and indicator.where(code.code != '1' and code.code != '2' and code.code != '3' and code.code != '10' and code.code != '30' and code.code != '42' and code.code != '43' and code.code != '44' and code.code != '45').yearToDateAmount.all(value.count() = 1)
|
| vn-quarterly-settlement-calendar-quarter | error | vnCoreQuarterlyHealthcareCostSettlement | Period phải bắt đầu ngày đầu quý và kết thúc ngày cuối cùng của cùng quý, cùng năm. The period SHALL start on the first day and end on the last day of the same calendar quarter and year. |
period.start.exists() and period.end.exists() and period.start.toString().substring(0, 4) = period.end.toString().substring(0, 4) and ((period.start.toString().contains('-01-01') and period.end.toString().contains('-03-31')) or (period.start.toString().contains('-04-01') and period.end.toString().contains('-06-30')) or (period.start.toString().contains('-07-01') and period.end.toString().contains('-09-30')) or (period.start.toString().contains('-10-01') and period.end.toString().contains('-12-31')))
|
| vn-quarterly-settlement-current-indicator-set | error | vnCoreQuarterlyHealthcareCostSettlement | Biên bản phải có đúng và đủ 55 mã chỉ tiêu hiện hành, mỗi mã xuất hiện đúng một lần. The settlement SHALL contain the complete current set of 55 indicator codes, with no duplicate code. |
indicator.code.code.count() = 55 and indicator.code.code.isDistinct()
|
| vn-quarterly-settlement-formula-1 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 1 phải bằng mã số 2 cộng mã số 11; biểu mẫu không ghi lũy kế cho mã 1 và 2. In the quarter column, indicator 1 SHALL equal indicators 2 plus 11; the form does not populate year-to-date values for indicators 1 and 2. |
indicator.where(code.code = '1').quarterAmount.value = indicator.where(code.code = '2').quarterAmount.value + indicator.where(code.code = '11').quarterAmount.value
|
| vn-quarterly-settlement-formula-2 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 2 phải bằng mã số 3 cộng mã số 4 trừ mã số 8; biểu mẫu không ghi lũy kế cho mã 2 và 3. In the quarter column, indicator 2 SHALL equal 3 plus 4 minus 8; the form does not populate year-to-date values for indicators 2 and 3. |
indicator.where(code.code = '2').quarterAmount.value = indicator.where(code.code = '3').quarterAmount.value + indicator.where(code.code = '4').quarterAmount.value - indicator.where(code.code = '8').quarterAmount.value
|
| vn-quarterly-settlement-formula-4 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 4 phải bằng mã số 5 cộng mã số 6 trừ mã số 7 cho cả hai cột. Indicator 4 SHALL equal 5 plus 6 minus 7 for both columns. |
indicator.where(code.code = '4').quarterAmount.value = indicator.where(code.code = '5').quarterAmount.value + indicator.where(code.code = '6').quarterAmount.value - indicator.where(code.code = '7').quarterAmount.value and indicator.where(code.code = '4').yearToDateAmount.value = indicator.where(code.code = '5').yearToDateAmount.value + indicator.where(code.code = '6').yearToDateAmount.value - indicator.where(code.code = '7').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-9 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 9 phải bằng mã số 23 cho cả hai cột. Indicator 9 SHALL equal indicator 23 for both columns. |
indicator.where(code.code = '9').quarterAmount.value = indicator.where(code.code = '23').quarterAmount.value and indicator.where(code.code = '9').yearToDateAmount.value = indicator.where(code.code = '23').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-10 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 10 phải bằng mã số 2 trừ mã số 9; biểu mẫu không ghi lũy kế cho mã 10. In the quarter column, indicator 10 SHALL equal indicator 2 minus indicator 9; the form does not populate a year-to-date value for indicator 10. |
indicator.where(code.code = '10').quarterAmount.value = indicator.where(code.code = '2').quarterAmount.value - indicator.where(code.code = '9').quarterAmount.value
|
| vn-quarterly-settlement-formula-11 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 11 phải bằng mã số 24 cho cả hai cột. Indicator 11 SHALL equal indicator 24 for both columns. |
indicator.where(code.code = '11').quarterAmount.value = indicator.where(code.code = '24').quarterAmount.value and indicator.where(code.code = '11').yearToDateAmount.value = indicator.where(code.code = '24').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-12 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 12 phải bằng mã số 13 cộng mã số 14 cộng mã số 18 cho cả hai cột. Indicator 12 SHALL equal indicators 13 plus 14 plus 18 for both columns. |
indicator.where(code.code = '12').quarterAmount.value = indicator.where(code.code = '13').quarterAmount.value + indicator.where(code.code = '14').quarterAmount.value + indicator.where(code.code = '18').quarterAmount.value and indicator.where(code.code = '12').yearToDateAmount.value = indicator.where(code.code = '13').yearToDateAmount.value + indicator.where(code.code = '14').yearToDateAmount.value + indicator.where(code.code = '18').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-14 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 14 phải bằng mã số 15 cộng mã số 16 cộng mã số 17 cho cả hai cột. Indicator 14 SHALL equal indicators 15 plus 16 plus 17 for both columns. |
indicator.where(code.code = '14').quarterAmount.value = indicator.where(code.code = '15').quarterAmount.value + indicator.where(code.code = '16').quarterAmount.value + indicator.where(code.code = '17').quarterAmount.value and indicator.where(code.code = '14').yearToDateAmount.value = indicator.where(code.code = '15').yearToDateAmount.value + indicator.where(code.code = '16').yearToDateAmount.value + indicator.where(code.code = '17').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-18 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 18 phải bằng mã số 19 trừ mã số 20 cho cả hai cột. Indicator 18 SHALL equal indicator 19 minus indicator 20 for both columns. |
indicator.where(code.code = '18').quarterAmount.value = indicator.where(code.code = '19').quarterAmount.value - indicator.where(code.code = '20').quarterAmount.value and indicator.where(code.code = '18').yearToDateAmount.value = indicator.where(code.code = '19').yearToDateAmount.value - indicator.where(code.code = '20').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-21 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 21 phải bằng mã số 13 cộng mã số 15 cộng mã số 18 cho cả hai cột. Indicator 21 SHALL equal indicators 13 plus 15 plus 18 for both columns. |
indicator.where(code.code = '21').quarterAmount.value = indicator.where(code.code = '13').quarterAmount.value + indicator.where(code.code = '15').quarterAmount.value + indicator.where(code.code = '18').quarterAmount.value and indicator.where(code.code = '21').yearToDateAmount.value = indicator.where(code.code = '13').yearToDateAmount.value + indicator.where(code.code = '15').yearToDateAmount.value + indicator.where(code.code = '18').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-22 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 22 phải bằng mã số 23 cộng mã số 24 cho cả hai cột. Indicator 22 SHALL equal indicators 23 plus 24 for both columns. |
indicator.where(code.code = '22').quarterAmount.value = indicator.where(code.code = '23').quarterAmount.value + indicator.where(code.code = '24').quarterAmount.value and indicator.where(code.code = '22').yearToDateAmount.value = indicator.where(code.code = '23').yearToDateAmount.value + indicator.where(code.code = '24').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-24 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 24 phải bằng mã số 25 cộng mã số 26 cho cả hai cột. Indicator 24 SHALL equal indicators 25 plus 26 for both columns. |
indicator.where(code.code = '24').quarterAmount.value = indicator.where(code.code = '25').quarterAmount.value + indicator.where(code.code = '26').quarterAmount.value and indicator.where(code.code = '24').yearToDateAmount.value = indicator.where(code.code = '25').yearToDateAmount.value + indicator.where(code.code = '26').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-27 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 27 phải bằng mã số 21 trừ mã số 23 cho cả hai cột. Indicator 27 SHALL equal indicator 21 minus indicator 23 for both columns. |
indicator.where(code.code = '27').quarterAmount.value = indicator.where(code.code = '21').quarterAmount.value - indicator.where(code.code = '23').quarterAmount.value and indicator.where(code.code = '27').yearToDateAmount.value = indicator.where(code.code = '21').yearToDateAmount.value - indicator.where(code.code = '23').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-33 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 33 phải bằng mã số 34 cộng mã số 37 cho cả hai cột. Indicator 33 SHALL equal indicators 34 plus 37 for both columns. |
indicator.where(code.code = '33').quarterAmount.value = indicator.where(code.code = '34').quarterAmount.value + indicator.where(code.code = '37').quarterAmount.value and indicator.where(code.code = '33').yearToDateAmount.value = indicator.where(code.code = '34').yearToDateAmount.value + indicator.where(code.code = '37').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-34 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 34 phải bằng mã số 35 cộng mã số 36 cho cả hai cột. Indicator 34 SHALL equal indicators 35 plus 36 for both columns. |
indicator.where(code.code = '34').quarterAmount.value = indicator.where(code.code = '35').quarterAmount.value + indicator.where(code.code = '36').quarterAmount.value and indicator.where(code.code = '34').yearToDateAmount.value = indicator.where(code.code = '35').yearToDateAmount.value + indicator.where(code.code = '36').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-37 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 37 phải bằng mã số 38 cộng mã số 39 cho cả hai cột. Indicator 37 SHALL equal indicators 38 plus 39 for both columns. |
indicator.where(code.code = '37').quarterAmount.value = indicator.where(code.code = '38').quarterAmount.value + indicator.where(code.code = '39').quarterAmount.value and indicator.where(code.code = '37').yearToDateAmount.value = indicator.where(code.code = '38').yearToDateAmount.value + indicator.where(code.code = '39').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-41 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 41 phải bằng mã số 22 trừ mã số 40 cho cả hai cột. Indicator 41 SHALL equal indicator 22 minus indicator 40 for both columns. |
indicator.where(code.code = '41').quarterAmount.value = indicator.where(code.code = '22').quarterAmount.value - indicator.where(code.code = '40').quarterAmount.value and indicator.where(code.code = '41').yearToDateAmount.value = indicator.where(code.code = '22').yearToDateAmount.value - indicator.where(code.code = '40').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-42 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi mã số 35 lớn hơn hoặc bằng mã số 23, mã số 42 phải bằng mã số 35 trừ mã số 23; khi mã số 35 nhỏ hơn mã số 23, mã số 42 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, áp dụng độc lập cho từng cột. When indicator 35 is greater than or equal to indicator 23, indicator 42 SHALL equal 35 minus 23; when indicator 35 is less than indicator 23, indicator 42 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
(indicator.where(code.code = '35').quarterAmount.value >= indicator.where(code.code = '23').quarterAmount.value implies (indicator.where(code.code = '42').quarterAmount.value.count() = 1 and indicator.where(code.code = '42').quarterAmount.value = indicator.where(code.code = '35').quarterAmount.value - indicator.where(code.code = '23').quarterAmount.value)) and (indicator.where(code.code = '35').quarterAmount.value < indicator.where(code.code = '23').quarterAmount.value implies ((indicator.where(code.code = '42').quarterAmount.value.count() = 1 and indicator.where(code.code = '42').quarterAmount.value = 0) or (indicator.where(code.code = '42').quarterAmount.value.empty() and indicator.where(code.code = '42').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and (indicator.where(code.code = '35').yearToDateAmount.value >= indicator.where(code.code = '23').yearToDateAmount.value implies (indicator.where(code.code = '42').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '42').yearToDateAmount.value = indicator.where(code.code = '35').yearToDateAmount.value - indicator.where(code.code = '23').yearToDateAmount.value)) and (indicator.where(code.code = '35').yearToDateAmount.value < indicator.where(code.code = '23').yearToDateAmount.value implies ((indicator.where(code.code = '42').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '42').yearToDateAmount.value = 0) or (indicator.where(code.code = '42').yearToDateAmount.value.empty() and indicator.where(code.code = '42').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-44 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi nguồn kinh phí sau điều chỉnh đủ thanh toán mã 41 và 42, mã 44 bằng (31-32+33)-41-42; ở nhánh thiếu kinh phí, mã 44 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, cho từng cột. When adjusted available funding covers indicators 41 and 42, indicator 44 SHALL equal (31-32+33)-41-42; in the insufficient-funding branch, indicator 44 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) >= (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies (indicator.where(code.code = '44').quarterAmount.value.count() = 1 and indicator.where(code.code = '44').quarterAmount.value = indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value - indicator.where(code.code = '41').quarterAmount.value - indicator.where(code.code = '42').quarterAmount.value)) and ((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) < (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies ((indicator.where(code.code = '44').quarterAmount.value.count() = 1 and indicator.where(code.code = '44').quarterAmount.value = 0) or (indicator.where(code.code = '44').quarterAmount.value.empty() and indicator.where(code.code = '44').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) >= (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies (indicator.where(code.code = '44').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '44').yearToDateAmount.value = indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value - indicator.where(code.code = '41').yearToDateAmount.value - indicator.where(code.code = '42').yearToDateAmount.value)) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) < (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies ((indicator.where(code.code = '44').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '44').yearToDateAmount.value = 0) or (indicator.where(code.code = '44').yearToDateAmount.value.empty() and indicator.where(code.code = '44').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-45 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi nguồn kinh phí sau điều chỉnh không đủ thanh toán mã 41 và 42, mã 45 bằng 41+42-(31-32+33); ở nhánh đủ kinh phí, mã 45 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, cho từng cột. When adjusted available funding is insufficient for indicators 41 and 42, indicator 45 SHALL equal 41+42-(31-32+33); in the sufficient-funding branch, indicator 45 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) < (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies (indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value - (indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value))) and ((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) >= (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies ((indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = 0) or (indicator.where(code.code = '45').quarterAmount.value.empty() and indicator.where(code.code = '45').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) < (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies (indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value - (indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) >= (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies ((indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = 0) or (indicator.where(code.code = '45').yearToDateAmount.value.empty() and indicator.where(code.code = '45').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-48 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 48 phải bằng mã số 42 cho cả hai cột. Indicator 48 SHALL equal indicator 42 for both columns. |
indicator.where(code.code = '48').quarterAmount.value = indicator.where(code.code = '42').quarterAmount.value and indicator.where(code.code = '48').yearToDateAmount.value = indicator.where(code.code = '42').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-50 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 50 phải bằng mã số 47 cộng mã số 48 trừ mã số 49 cho cả hai cột. Indicator 50 SHALL equal indicators 47 plus 48 minus 49 for both columns. |
indicator.where(code.code = '50').quarterAmount.value = indicator.where(code.code = '47').quarterAmount.value + indicator.where(code.code = '48').quarterAmount.value - indicator.where(code.code = '49').quarterAmount.value and indicator.where(code.code = '50').yearToDateAmount.value = indicator.where(code.code = '47').yearToDateAmount.value + indicator.where(code.code = '48').yearToDateAmount.value - indicator.where(code.code = '49').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-55 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 55 phải bằng mã số 52 cộng mã số 53 trừ mã số 54 cho cả hai cột. Indicator 55 SHALL equal indicators 52 plus 53 minus 54 for both columns. |
indicator.where(code.code = '55').quarterAmount.value = indicator.where(code.code = '52').quarterAmount.value + indicator.where(code.code = '53').quarterAmount.value - indicator.where(code.code = '54').quarterAmount.value and indicator.where(code.code = '55').yearToDateAmount.value = indicator.where(code.code = '52').yearToDateAmount.value + indicator.where(code.code = '53').yearToDateAmount.value - indicator.where(code.code = '54').yearToDateAmount.value
|
| vn-quarterly-settlement-money-vnd | error | vnCoreQuarterlyHealthcareCostSettlement | Mọi số tiền trong quý và lũy kế phải dùng VND. Every quarter and year-to-date amount SHALL use VND. |
indicator.quarterAmount.currency.all($this = 'VND') and indicator.yearToDateAmount.currency.all($this = 'VND')
|
| vn-quarterly-settlement-provider-payer-signers | error | vnCoreQuarterlyHealthcareCostSettlement | Hai nhóm người ký logic đều bắt buộc và tách biệt: providerSigner 1..* dùng đúng một role AUT và payerSigner 1..* dùng đúng một role VRF; một attester không được đồng thời thuộc cả hai nhóm. Both logical signer groups are required and distinct: providerSigner 1..* uses exactly one AUT discriminator and payerSigner 1..* uses exactly one VRF discriminator; an attester cannot belong to both groups. |
attester.all(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and (code = 'AUT' or code = 'VRF')).code.count() = 1) and attester.where(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code = 'AUT').exists()).count() >= 1 and attester.where(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code = 'VRF').exists()).count() >= 1
|
Dạng xem SnapshotView
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Base | Quyết toán chi phí KCB BHYT theo quý — VN Core Quarterly Healthcare Cost Settlement Constraints: vn-quarterly-settlement-current-indicator-set, vn-quarterly-settlement-calendar-quarter, vn-quarterly-settlement-money-vnd, vn-quarterly-settlement-amount-applicability, vn-quarterly-settlement-formula-1, vn-quarterly-settlement-formula-2, vn-quarterly-settlement-formula-4, vn-quarterly-settlement-formula-9, vn-quarterly-settlement-formula-10, vn-quarterly-settlement-formula-11, vn-quarterly-settlement-formula-12, vn-quarterly-settlement-formula-14, vn-quarterly-settlement-formula-18, vn-quarterly-settlement-formula-21, vn-quarterly-settlement-formula-22, vn-quarterly-settlement-formula-24, vn-quarterly-settlement-formula-27, vn-quarterly-settlement-formula-33, vn-quarterly-settlement-formula-34, vn-quarterly-settlement-formula-37, vn-quarterly-settlement-formula-41, vn-quarterly-settlement-formula-42, vn-quarterly-settlement-formula-44, vn-quarterly-settlement-formula-45, vn-quarterly-settlement-44-45-mutually-exclusive, vn-quarterly-settlement-provider-payer-signers, vn-quarterly-settlement-formula-48, vn-quarterly-settlement-formula-50, vn-quarterly-settlement-formula-55 |
![]() ![]() |
1..* | Identifier | Định danh biên bản — Settlement identifier | |
![]() ![]() |
C | 1..1 | Period | Quý quyết toán — Settlement quarter Constraints: per-1 |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
ΣC | 1..1 | dateTime | Starting time with inclusive boundary |
![]() ![]() ![]() |
ΣC | 1..1 | dateTime | End time with inclusive boundary, if not ongoing |
![]() ![]() |
1..1 | Reference(Organization) | Cơ quan BHXH — BHXH payer | |
![]() ![]() |
1..1 | Reference(Cơ sở y tế VN Core — VN Core Organization Profile) | Cơ sở KCB — Healthcare provider | |
![]() ![]() |
1..1 | Identifier | Hợp đồng KCB BHYT — BHYT healthcare contract | |
![]() ![]() |
0..1 | date | Ngày hợp đồng — Contract date | |
![]() ![]() |
0..* | Reference(DocumentReference) | Tài liệu hỗ trợ — Supporting document | |
![]() ![]() |
0..1 | string | Tài khoản ngân hàng cơ quan BHXH — Payer bank account | |
![]() ![]() |
0..1 | string | Ngân hàng của cơ quan BHXH — Payer bank name | |
![]() ![]() |
0..1 | string | Tài khoản ngân hàng cơ sở KCB — Provider bank account | |
![]() ![]() |
0..1 | string | Ngân hàng của cơ sở KCB — Provider bank name | |
![]() ![]() |
1..* | BackboneElement | Chỉ tiêu quyết toán — Settlement indicator | |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
1..1 | Coding | Mã chỉ tiêu — Indicator code Binding: Chỉ tiêu quyết toán chi phí KCB BHYT theo quý — VN Quarterly Healthcare Cost Settlement Indicator ValueSet (required) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://fhir.hl7.org.vn/core/CodeSystem/vn-quarterly-settlement-indicator-cs |
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant |
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system |
![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user |
![]() ![]() ![]() |
1..1 | Money | Số tiền trong quý — Quarter amount | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() ![]() |
1..1 | Money | Lũy kế từ đầu năm — Year-to-date amount | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() |
0..1 | string | Ý kiến cơ quan BHXH — Payer opinion | |
![]() ![]() |
0..1 | string | Ý kiến cơ sở KCB — Provider opinion | |
![]() ![]() |
2..* | BackboneElement | Người ký xác nhận — Attester | |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
1..1 | Reference(PractitionerRole) | Người ký theo vai trò — Attesting party and role | |
![]() ![]() ![]() |
1..1 | CodeableConcept | Vai trò ký — Attestation role | |
![]() ![]() ![]() |
0..1 | dateTime | Thời điểm ký — Attestation time | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| vnCoreQuarterlyHealthcareCostSettlement.indicator.code | Base | required | Chỉ tiêu quyết toán chi phí KCB BHYT theo quý — VN Quarterly Healthcare Cost Settlement Indicator ValueSet | 📦0.9.0 | This IG |
| vnCoreQuarterlyHealthcareCostSettlement.indicator.quarterAmount.currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| vnCoreQuarterlyHealthcareCostSettlement.indicator.yearToDateAmount.currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| 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()
|
| per-1 | error | vnCoreQuarterlyHealthcareCostSettlement.period | If present, start SHALL have a lower value than end |
start.hasValue().not() or end.hasValue().not() or (start <= end)
|
| vn-quarterly-settlement-44-45-mutually-exclusive | error | vnCoreQuarterlyHealthcareCostSettlement | Nếu mã 44 dương thì mã 45 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, áp dụng độc lập cho từng cột. If indicator 44 is positive, indicator 45 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
(indicator.where(code.code = '44').quarterAmount.value > 0 implies ((indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = 0) or (indicator.where(code.code = '45').quarterAmount.value.empty() and indicator.where(code.code = '45').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and (indicator.where(code.code = '44').yearToDateAmount.value > 0 implies ((indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = 0) or (indicator.where(code.code = '45').yearToDateAmount.value.empty() and indicator.where(code.code = '45').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-amount-applicability | error | vnCoreQuarterlyHealthcareCostSettlement | Ma trận áp dụng của Mẫu 06/BH phải được giữ nguyên: mã 1, 2, 3, 10 không có giá trị lũy kế và phải mang DAR `not-applicable`; mã 30, 43 không có giá trị ở cả hai cột và phải mang cùng DAR; các ô áp dụng khác phải có đúng một Money.value, ngoại trừ nhánh điều kiện của mã 42 và cặp 44/45 được kiểm riêng. Preserve the Form 06/BH applicability matrix: indicators 1, 2, 3, and 10 have no year-to-date value and SHALL carry DAR `not-applicable`; indicators 30 and 43 have no value in either column and SHALL carry the same DAR; every other applicable cell SHALL contain exactly one Money.value, except the conditional branches of indicator 42 and indicators 44/45, which are validated separately. |
indicator.where(code.code = '1' or code.code = '2' or code.code = '3' or code.code = '10').yearToDateAmount.all(value.empty() and extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable') and indicator.where(code.code = '30' or code.code = '43').all(quarterAmount.value.empty() and quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable' and yearToDateAmount.value.empty() and yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable') and indicator.where(code.code != '30' and code.code != '42' and code.code != '43' and code.code != '44' and code.code != '45').quarterAmount.all(value.count() = 1) and indicator.where(code.code != '1' and code.code != '2' and code.code != '3' and code.code != '10' and code.code != '30' and code.code != '42' and code.code != '43' and code.code != '44' and code.code != '45').yearToDateAmount.all(value.count() = 1)
|
| vn-quarterly-settlement-calendar-quarter | error | vnCoreQuarterlyHealthcareCostSettlement | Period phải bắt đầu ngày đầu quý và kết thúc ngày cuối cùng của cùng quý, cùng năm. The period SHALL start on the first day and end on the last day of the same calendar quarter and year. |
period.start.exists() and period.end.exists() and period.start.toString().substring(0, 4) = period.end.toString().substring(0, 4) and ((period.start.toString().contains('-01-01') and period.end.toString().contains('-03-31')) or (period.start.toString().contains('-04-01') and period.end.toString().contains('-06-30')) or (period.start.toString().contains('-07-01') and period.end.toString().contains('-09-30')) or (period.start.toString().contains('-10-01') and period.end.toString().contains('-12-31')))
|
| vn-quarterly-settlement-current-indicator-set | error | vnCoreQuarterlyHealthcareCostSettlement | Biên bản phải có đúng và đủ 55 mã chỉ tiêu hiện hành, mỗi mã xuất hiện đúng một lần. The settlement SHALL contain the complete current set of 55 indicator codes, with no duplicate code. |
indicator.code.code.count() = 55 and indicator.code.code.isDistinct()
|
| vn-quarterly-settlement-formula-1 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 1 phải bằng mã số 2 cộng mã số 11; biểu mẫu không ghi lũy kế cho mã 1 và 2. In the quarter column, indicator 1 SHALL equal indicators 2 plus 11; the form does not populate year-to-date values for indicators 1 and 2. |
indicator.where(code.code = '1').quarterAmount.value = indicator.where(code.code = '2').quarterAmount.value + indicator.where(code.code = '11').quarterAmount.value
|
| vn-quarterly-settlement-formula-2 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 2 phải bằng mã số 3 cộng mã số 4 trừ mã số 8; biểu mẫu không ghi lũy kế cho mã 2 và 3. In the quarter column, indicator 2 SHALL equal 3 plus 4 minus 8; the form does not populate year-to-date values for indicators 2 and 3. |
indicator.where(code.code = '2').quarterAmount.value = indicator.where(code.code = '3').quarterAmount.value + indicator.where(code.code = '4').quarterAmount.value - indicator.where(code.code = '8').quarterAmount.value
|
| vn-quarterly-settlement-formula-4 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 4 phải bằng mã số 5 cộng mã số 6 trừ mã số 7 cho cả hai cột. Indicator 4 SHALL equal 5 plus 6 minus 7 for both columns. |
indicator.where(code.code = '4').quarterAmount.value = indicator.where(code.code = '5').quarterAmount.value + indicator.where(code.code = '6').quarterAmount.value - indicator.where(code.code = '7').quarterAmount.value and indicator.where(code.code = '4').yearToDateAmount.value = indicator.where(code.code = '5').yearToDateAmount.value + indicator.where(code.code = '6').yearToDateAmount.value - indicator.where(code.code = '7').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-9 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 9 phải bằng mã số 23 cho cả hai cột. Indicator 9 SHALL equal indicator 23 for both columns. |
indicator.where(code.code = '9').quarterAmount.value = indicator.where(code.code = '23').quarterAmount.value and indicator.where(code.code = '9').yearToDateAmount.value = indicator.where(code.code = '23').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-10 | error | vnCoreQuarterlyHealthcareCostSettlement | Trong cột trong quý, mã số 10 phải bằng mã số 2 trừ mã số 9; biểu mẫu không ghi lũy kế cho mã 10. In the quarter column, indicator 10 SHALL equal indicator 2 minus indicator 9; the form does not populate a year-to-date value for indicator 10. |
indicator.where(code.code = '10').quarterAmount.value = indicator.where(code.code = '2').quarterAmount.value - indicator.where(code.code = '9').quarterAmount.value
|
| vn-quarterly-settlement-formula-11 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 11 phải bằng mã số 24 cho cả hai cột. Indicator 11 SHALL equal indicator 24 for both columns. |
indicator.where(code.code = '11').quarterAmount.value = indicator.where(code.code = '24').quarterAmount.value and indicator.where(code.code = '11').yearToDateAmount.value = indicator.where(code.code = '24').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-12 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 12 phải bằng mã số 13 cộng mã số 14 cộng mã số 18 cho cả hai cột. Indicator 12 SHALL equal indicators 13 plus 14 plus 18 for both columns. |
indicator.where(code.code = '12').quarterAmount.value = indicator.where(code.code = '13').quarterAmount.value + indicator.where(code.code = '14').quarterAmount.value + indicator.where(code.code = '18').quarterAmount.value and indicator.where(code.code = '12').yearToDateAmount.value = indicator.where(code.code = '13').yearToDateAmount.value + indicator.where(code.code = '14').yearToDateAmount.value + indicator.where(code.code = '18').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-14 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 14 phải bằng mã số 15 cộng mã số 16 cộng mã số 17 cho cả hai cột. Indicator 14 SHALL equal indicators 15 plus 16 plus 17 for both columns. |
indicator.where(code.code = '14').quarterAmount.value = indicator.where(code.code = '15').quarterAmount.value + indicator.where(code.code = '16').quarterAmount.value + indicator.where(code.code = '17').quarterAmount.value and indicator.where(code.code = '14').yearToDateAmount.value = indicator.where(code.code = '15').yearToDateAmount.value + indicator.where(code.code = '16').yearToDateAmount.value + indicator.where(code.code = '17').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-18 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 18 phải bằng mã số 19 trừ mã số 20 cho cả hai cột. Indicator 18 SHALL equal indicator 19 minus indicator 20 for both columns. |
indicator.where(code.code = '18').quarterAmount.value = indicator.where(code.code = '19').quarterAmount.value - indicator.where(code.code = '20').quarterAmount.value and indicator.where(code.code = '18').yearToDateAmount.value = indicator.where(code.code = '19').yearToDateAmount.value - indicator.where(code.code = '20').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-21 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 21 phải bằng mã số 13 cộng mã số 15 cộng mã số 18 cho cả hai cột. Indicator 21 SHALL equal indicators 13 plus 15 plus 18 for both columns. |
indicator.where(code.code = '21').quarterAmount.value = indicator.where(code.code = '13').quarterAmount.value + indicator.where(code.code = '15').quarterAmount.value + indicator.where(code.code = '18').quarterAmount.value and indicator.where(code.code = '21').yearToDateAmount.value = indicator.where(code.code = '13').yearToDateAmount.value + indicator.where(code.code = '15').yearToDateAmount.value + indicator.where(code.code = '18').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-22 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 22 phải bằng mã số 23 cộng mã số 24 cho cả hai cột. Indicator 22 SHALL equal indicators 23 plus 24 for both columns. |
indicator.where(code.code = '22').quarterAmount.value = indicator.where(code.code = '23').quarterAmount.value + indicator.where(code.code = '24').quarterAmount.value and indicator.where(code.code = '22').yearToDateAmount.value = indicator.where(code.code = '23').yearToDateAmount.value + indicator.where(code.code = '24').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-24 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 24 phải bằng mã số 25 cộng mã số 26 cho cả hai cột. Indicator 24 SHALL equal indicators 25 plus 26 for both columns. |
indicator.where(code.code = '24').quarterAmount.value = indicator.where(code.code = '25').quarterAmount.value + indicator.where(code.code = '26').quarterAmount.value and indicator.where(code.code = '24').yearToDateAmount.value = indicator.where(code.code = '25').yearToDateAmount.value + indicator.where(code.code = '26').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-27 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 27 phải bằng mã số 21 trừ mã số 23 cho cả hai cột. Indicator 27 SHALL equal indicator 21 minus indicator 23 for both columns. |
indicator.where(code.code = '27').quarterAmount.value = indicator.where(code.code = '21').quarterAmount.value - indicator.where(code.code = '23').quarterAmount.value and indicator.where(code.code = '27').yearToDateAmount.value = indicator.where(code.code = '21').yearToDateAmount.value - indicator.where(code.code = '23').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-33 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 33 phải bằng mã số 34 cộng mã số 37 cho cả hai cột. Indicator 33 SHALL equal indicators 34 plus 37 for both columns. |
indicator.where(code.code = '33').quarterAmount.value = indicator.where(code.code = '34').quarterAmount.value + indicator.where(code.code = '37').quarterAmount.value and indicator.where(code.code = '33').yearToDateAmount.value = indicator.where(code.code = '34').yearToDateAmount.value + indicator.where(code.code = '37').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-34 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 34 phải bằng mã số 35 cộng mã số 36 cho cả hai cột. Indicator 34 SHALL equal indicators 35 plus 36 for both columns. |
indicator.where(code.code = '34').quarterAmount.value = indicator.where(code.code = '35').quarterAmount.value + indicator.where(code.code = '36').quarterAmount.value and indicator.where(code.code = '34').yearToDateAmount.value = indicator.where(code.code = '35').yearToDateAmount.value + indicator.where(code.code = '36').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-37 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 37 phải bằng mã số 38 cộng mã số 39 cho cả hai cột. Indicator 37 SHALL equal indicators 38 plus 39 for both columns. |
indicator.where(code.code = '37').quarterAmount.value = indicator.where(code.code = '38').quarterAmount.value + indicator.where(code.code = '39').quarterAmount.value and indicator.where(code.code = '37').yearToDateAmount.value = indicator.where(code.code = '38').yearToDateAmount.value + indicator.where(code.code = '39').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-41 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 41 phải bằng mã số 22 trừ mã số 40 cho cả hai cột. Indicator 41 SHALL equal indicator 22 minus indicator 40 for both columns. |
indicator.where(code.code = '41').quarterAmount.value = indicator.where(code.code = '22').quarterAmount.value - indicator.where(code.code = '40').quarterAmount.value and indicator.where(code.code = '41').yearToDateAmount.value = indicator.where(code.code = '22').yearToDateAmount.value - indicator.where(code.code = '40').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-42 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi mã số 35 lớn hơn hoặc bằng mã số 23, mã số 42 phải bằng mã số 35 trừ mã số 23; khi mã số 35 nhỏ hơn mã số 23, mã số 42 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, áp dụng độc lập cho từng cột. When indicator 35 is greater than or equal to indicator 23, indicator 42 SHALL equal 35 minus 23; when indicator 35 is less than indicator 23, indicator 42 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
(indicator.where(code.code = '35').quarterAmount.value >= indicator.where(code.code = '23').quarterAmount.value implies (indicator.where(code.code = '42').quarterAmount.value.count() = 1 and indicator.where(code.code = '42').quarterAmount.value = indicator.where(code.code = '35').quarterAmount.value - indicator.where(code.code = '23').quarterAmount.value)) and (indicator.where(code.code = '35').quarterAmount.value < indicator.where(code.code = '23').quarterAmount.value implies ((indicator.where(code.code = '42').quarterAmount.value.count() = 1 and indicator.where(code.code = '42').quarterAmount.value = 0) or (indicator.where(code.code = '42').quarterAmount.value.empty() and indicator.where(code.code = '42').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and (indicator.where(code.code = '35').yearToDateAmount.value >= indicator.where(code.code = '23').yearToDateAmount.value implies (indicator.where(code.code = '42').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '42').yearToDateAmount.value = indicator.where(code.code = '35').yearToDateAmount.value - indicator.where(code.code = '23').yearToDateAmount.value)) and (indicator.where(code.code = '35').yearToDateAmount.value < indicator.where(code.code = '23').yearToDateAmount.value implies ((indicator.where(code.code = '42').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '42').yearToDateAmount.value = 0) or (indicator.where(code.code = '42').yearToDateAmount.value.empty() and indicator.where(code.code = '42').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-44 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi nguồn kinh phí sau điều chỉnh đủ thanh toán mã 41 và 42, mã 44 bằng (31-32+33)-41-42; ở nhánh thiếu kinh phí, mã 44 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, cho từng cột. When adjusted available funding covers indicators 41 and 42, indicator 44 SHALL equal (31-32+33)-41-42; in the insufficient-funding branch, indicator 44 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) >= (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies (indicator.where(code.code = '44').quarterAmount.value.count() = 1 and indicator.where(code.code = '44').quarterAmount.value = indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value - indicator.where(code.code = '41').quarterAmount.value - indicator.where(code.code = '42').quarterAmount.value)) and ((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) < (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies ((indicator.where(code.code = '44').quarterAmount.value.count() = 1 and indicator.where(code.code = '44').quarterAmount.value = 0) or (indicator.where(code.code = '44').quarterAmount.value.empty() and indicator.where(code.code = '44').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) >= (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies (indicator.where(code.code = '44').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '44').yearToDateAmount.value = indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value - indicator.where(code.code = '41').yearToDateAmount.value - indicator.where(code.code = '42').yearToDateAmount.value)) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) < (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies ((indicator.where(code.code = '44').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '44').yearToDateAmount.value = 0) or (indicator.where(code.code = '44').yearToDateAmount.value.empty() and indicator.where(code.code = '44').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-45 | error | vnCoreQuarterlyHealthcareCostSettlement | Khi nguồn kinh phí sau điều chỉnh không đủ thanh toán mã 41 và 42, mã 45 bằng 41+42-(31-32+33); ở nhánh đủ kinh phí, mã 45 phải bằng 0 hoặc vắng mặt kèm DAR `not-applicable`, cho từng cột. When adjusted available funding is insufficient for indicators 41 and 42, indicator 45 SHALL equal 41+42-(31-32+33); in the sufficient-funding branch, indicator 45 SHALL be zero or absent with DAR `not-applicable`, independently for each column. |
((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) < (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies (indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value - (indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value))) and ((indicator.where(code.code = '31').quarterAmount.value - indicator.where(code.code = '32').quarterAmount.value + indicator.where(code.code = '33').quarterAmount.value) >= (indicator.where(code.code = '41').quarterAmount.value + indicator.where(code.code = '42').quarterAmount.value) implies ((indicator.where(code.code = '45').quarterAmount.value.count() = 1 and indicator.where(code.code = '45').quarterAmount.value = 0) or (indicator.where(code.code = '45').quarterAmount.value.empty() and indicator.where(code.code = '45').quarterAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable'))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) < (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies (indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value - (indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value))) and ((indicator.where(code.code = '31').yearToDateAmount.value - indicator.where(code.code = '32').yearToDateAmount.value + indicator.where(code.code = '33').yearToDateAmount.value) >= (indicator.where(code.code = '41').yearToDateAmount.value + indicator.where(code.code = '42').yearToDateAmount.value) implies ((indicator.where(code.code = '45').yearToDateAmount.value.count() = 1 and indicator.where(code.code = '45').yearToDateAmount.value = 0) or (indicator.where(code.code = '45').yearToDateAmount.value.empty() and indicator.where(code.code = '45').yearToDateAmount.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').value = 'not-applicable')))
|
| vn-quarterly-settlement-formula-48 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 48 phải bằng mã số 42 cho cả hai cột. Indicator 48 SHALL equal indicator 42 for both columns. |
indicator.where(code.code = '48').quarterAmount.value = indicator.where(code.code = '42').quarterAmount.value and indicator.where(code.code = '48').yearToDateAmount.value = indicator.where(code.code = '42').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-50 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 50 phải bằng mã số 47 cộng mã số 48 trừ mã số 49 cho cả hai cột. Indicator 50 SHALL equal indicators 47 plus 48 minus 49 for both columns. |
indicator.where(code.code = '50').quarterAmount.value = indicator.where(code.code = '47').quarterAmount.value + indicator.where(code.code = '48').quarterAmount.value - indicator.where(code.code = '49').quarterAmount.value and indicator.where(code.code = '50').yearToDateAmount.value = indicator.where(code.code = '47').yearToDateAmount.value + indicator.where(code.code = '48').yearToDateAmount.value - indicator.where(code.code = '49').yearToDateAmount.value
|
| vn-quarterly-settlement-formula-55 | error | vnCoreQuarterlyHealthcareCostSettlement | Mã số 55 phải bằng mã số 52 cộng mã số 53 trừ mã số 54 cho cả hai cột. Indicator 55 SHALL equal indicators 52 plus 53 minus 54 for both columns. |
indicator.where(code.code = '55').quarterAmount.value = indicator.where(code.code = '52').quarterAmount.value + indicator.where(code.code = '53').quarterAmount.value - indicator.where(code.code = '54').quarterAmount.value and indicator.where(code.code = '55').yearToDateAmount.value = indicator.where(code.code = '52').yearToDateAmount.value + indicator.where(code.code = '53').yearToDateAmount.value - indicator.where(code.code = '54').yearToDateAmount.value
|
| vn-quarterly-settlement-money-vnd | error | vnCoreQuarterlyHealthcareCostSettlement | Mọi số tiền trong quý và lũy kế phải dùng VND. Every quarter and year-to-date amount SHALL use VND. |
indicator.quarterAmount.currency.all($this = 'VND') and indicator.yearToDateAmount.currency.all($this = 'VND')
|
| vn-quarterly-settlement-provider-payer-signers | error | vnCoreQuarterlyHealthcareCostSettlement | Hai nhóm người ký logic đều bắt buộc và tách biệt: providerSigner 1..* dùng đúng một role AUT và payerSigner 1..* dùng đúng một role VRF; một attester không được đồng thời thuộc cả hai nhóm. Both logical signer groups are required and distinct: providerSigner 1..* uses exactly one AUT discriminator and payerSigner 1..* uses exactly one VRF discriminator; an attester cannot belong to both groups. |
attester.all(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and (code = 'AUT' or code = 'VRF')).code.count() = 1) and attester.where(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code = 'AUT').exists()).count() >= 1 and attester.where(role.coding.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code = 'VRF').exists()).count() >= 1
|