Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam
0.5.0 - Draft for Community Review
Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam - Draft for Community Review (v0.5.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Draft tại thời điểm 2026-04-28 |
<StructureMap xmlns="http://hl7.org/fhir">
<id value="vn-sm-bhyt-xml7-discharge-paper"/>
<language value="vi"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureMap vn-sm-bhyt-xml7-discharge-paper</b></p><a name="vn-sm-bhyt-xml7-discharge-paper"> </a><a name="hcvn-sm-bhyt-xml7-discharge-paper"> </a><pre class="fml">
<b>map</b><span style="color: navy"> "</span>http://fhir.hl7.org.vn/core/StructureMap/vn-sm-bhyt-xml7-discharge-paper<span style="color: navy">" = "</span>BHYTXML7DischargePaperLMStructureMap<span style="color: navy">"
</span><span style="color: navy">// </span><span style="color: green">Generated StructureMap scaffold for Bảng 7 giấy ra viện — XML7 Discharge Paper Logical Model. Source semantics come from the logical model mapping annotations in `BHYTXML7DischargePaperLM.fsh` and remain aligned with the Python BHYT round-trip export adapter.</span>
<b>uses</b><span style="color: navy"> "</span><a href="StructureDefinition-vn-core-bhyt-submission-bundle.html" title="Bundle hồ sơ thanh toán BHYT — VN Core BHYT Submission Bundle">http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-bhyt-submission-bundle</a><span style="color: navy">" </span><b>alias </b>BHYTSubmissionBundle <b>as </b><b>source</b> <span style="color: navy">// </span><span style="color: green">FHIR-native source bundle profile used by the repository round-trip adapter.</span>
<b>uses</b><span style="color: navy"> "</span><a href="StructureDefinition-bhytXml7DischargePaperLm.html" title="Bảng 7 giấy ra viện — XML7 Discharge Paper Logical Model">http://fhir.hl7.org.vn/core/StructureDefinition/bhytXml7DischargePaperLm</a><span style="color: navy">" </span><b>alias </b>BHYTXML7DischargePaperLM <b>as </b><b>target</b> <span style="color: navy">// </span><span style="color: green">Bảng 7 giấy ra viện — XML7 Discharge Paper Logical Model</span>
<span style="color: navy">// </span><span style="color: green">Rows are derived from discharge Composition/DocumentReference, the linked Encounter, Condition, Practitioner and guardian/temporary card data. Generated from logical-model `^mapping` annotations. Fields still missing a field-level `^mapping.map` entry remain outside this StructureMap and are tracked in `wiki/mappings/bhyt-output-data/machine/structuremap-coverage.json`.</span>
<b>group </b>MapBHYTXML7DischargePaperLM<span style="color: navy">(</span><b>source</b> <span style="color: maroon">sourceBundle</span><span style="color: navy"> : </span>BHYTSubmissionBundle, <b>target</b> <span style="color: maroon">targetRow</span><span style="color: navy"> : </span>BHYTXML7DischargePaperLM<span style="color: navy">)</span><span style="color: navy"> {
</span> sourceBundle.entry<b> as </b><span style="color: maroon">maLkSource</span><span style="color: navy"><b> -> </b></span>targetRow.maLk <i>"maLk"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_LK - Mã liên kết hồ sơ FHIR path: VNCoreClaim.identifier[MALK].value</span>
sourceBundle.entry<b> as </b><span style="color: maroon">soLuuTruSource</span><span style="color: navy"><b> -> </b></span>targetRow.soLuuTru <i>"soLuuTru"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: SO_LUU_TRU - Số lưu trữ/số hồ sơ bệnh án FHIR path: VNCoreComposition.identifier.value | VNCoreDocumentReference.identifier.value</span>
sourceBundle.entry<b> as </b><span style="color: maroon">maYteSource</span><span style="color: navy"><b> -> </b></span>targetRow.maYte <i>"maYte"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_YTE - Mã y tế/mã người bệnh FHIR path: VNCorePatient.identifier[MRN].value</span>
sourceBundle.entry<b> as </b><span style="color: maroon">maKhoaRvSource</span><span style="color: navy"><b> -> </b></span>targetRow.maKhoaRv <i>"maKhoaRv"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_KHOA_RV - Mã khoa ra viện/tổng kết FHIR path: VNCoreEncounter.location.location.resolve().identifier.value | VNCoreOrganizationDepartment.identifier.value</span>
sourceBundle.entry<b> as </b><span style="color: maroon">ngayVaoSource</span><span style="color: navy"><b> -> </b></span>targetRow.ngayVao <i>"ngayVao"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGAY_VAO - Ngày vào viện FHIR path: VNCoreEncounter.period.start</span>
sourceBundle.entry<b> as </b><span style="color: maroon">ngayRaSource</span><span style="color: navy"><b> -> </b></span>targetRow.ngayRa <i>"ngayRa"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGAY_RA - Ngày ra viện FHIR path: VNCoreEncounter.period.end | VNCoreComposition.date</span>
sourceBundle.entry<b> as </b><span style="color: maroon">chanDoanRvSource</span><span style="color: navy"><b> -> </b></span>targetRow.chanDoanRv <i>"chanDoanRv"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: CHAN_DOAN_RV - Chẩn đoán ra viện FHIR path: VNCoreComposition.section[diagnosis].entry.resolve().code | VNCoreCondition.code | section.text</span>
sourceBundle.entry<b> as </b><span style="color: maroon">ghiChuSource</span><span style="color: navy"><b> -> </b></span>targetRow.ghiChu <i>"ghiChu"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: GHI_CHU - Ghi chú FHIR path: VNCoreDocumentReference.description | VNCoreComposition.section.text</span>
sourceBundle.entry<b> as </b><span style="color: maroon">maTtdvSource</span><span style="color: navy"><b> -> </b></span>targetRow.maTtdv <i>"maTtdv"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_TTDV - Mã thủ trưởng đơn vị/người ký FHIR path: VNCoreComposition.attester.party.resolve().identifier.value | VNCoreDocumentReference.authenticator.resolve().identifier.value</span>
sourceBundle.entry<b> as </b><span style="color: maroon">maBsSource</span><span style="color: navy"><b> -> </b></span>targetRow.maBs <i>"maBs"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_BS - Mã bác sĩ FHIR path: VNCoreComposition.author.resolve().identifier.value | VNCorePractitioner.identifier.value</span>
sourceBundle.entry<b> as </b><span style="color: maroon">tenBsSource</span><span style="color: navy"><b> -> </b></span>targetRow.tenBs <i>"tenBs"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: TEN_BS - Tên bác sĩ FHIR path: VNCoreComposition.author.display | VNCorePractitioner.name.text</span>
sourceBundle.entry<b> as </b><span style="color: maroon">ngayCtSource</span><span style="color: navy"><b> -> </b></span>targetRow.ngayCt <i>"ngayCt"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGAY_CT - Ngày cấp chứng từ FHIR path: VNCoreDocumentReference.date | VNCoreComposition.date</span>
sourceBundle.entry<b> as </b><span style="color: maroon">maChaSource</span><span style="color: navy"><b> -> </b></span>targetRow.maCha <i>"maCha"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_CHA - Mã cha FHIR path: VNCoreRelatedPerson.where(relationship.coding.code='FTH').identifier[CCCD].value | VNCorePatient.contact.where(relationship.coding.code='FTH').name</span>
sourceBundle.entry<b> as </b><span style="color: maroon">maMeSource</span><span style="color: navy"><b> -> </b></span>targetRow.maMe <i>"maMe"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_ME - Mã mẹ FHIR path: VNCoreRelatedPerson.where(relationship.coding.code='MTH').identifier[CCCD].value | VNCorePatient.contact.where(relationship.coding.code='MTH').name</span>
sourceBundle.entry<b> as </b><span style="color: maroon">maTheTamSource</span><span style="color: navy"><b> -> </b></span>targetRow.maTheTam <i>"maTheTam"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_THE_TAM - Mã thẻ tạm FHIR path: VNCoreCoverage.identifier.value Mapping note: Temporary card identifiers are kept as Coverage.identifier until a dedicated temporary-card slice is profiled.</span>
sourceBundle.entry<b> as </b><span style="color: maroon">hoTenChaSource</span><span style="color: navy"><b> -> </b></span>targetRow.hoTenCha <i>"hoTenCha"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: HO_TEN_CHA - Họ tên cha FHIR path: VNCoreRelatedPerson.where(relationship.coding.code='FTH').name.text | VNCorePatient.contact.where(relationship.coding.code='FTH').name.text</span>
sourceBundle.entry<b> as </b><span style="color: maroon">hoTenMeSource</span><span style="color: navy"><b> -> </b></span>targetRow.hoTenMe <i>"hoTenMe"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: HO_TEN_ME - Họ tên mẹ FHIR path: VNCoreRelatedPerson.where(relationship.coding.code='MTH').name.text | VNCorePatient.contact.where(relationship.coding.code='MTH').name.text</span>
sourceBundle.entry<b> as </b><span style="color: maroon">soNgayNghiSource</span><span style="color: navy"><b> -> </b></span>targetRow.soNgayNghi <i>"soNgayNghi"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: SO_NGAY_NGHI - Số ngày nghỉ FHIR path: Derived from VNCoreDocumentReference.context.period | VNCoreComposition.event.period</span>
sourceBundle.entry<b> as </b><span style="color: maroon">ngoaiTruTuNgaySource</span><span style="color: navy"><b> -> </b></span>targetRow.ngoaiTruTuNgay <i>"ngoaiTruTuNgay"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGOAITRU_TUNGAY - Ngoại trú từ ngày FHIR path: VNCoreDocumentReference.context.period.start | VNCoreComposition.event.period.start</span>
sourceBundle.entry<b> as </b><span style="color: maroon">ngoaiTruDenNgaySource</span><span style="color: navy"><b> -> </b></span>targetRow.ngoaiTruDenNgay <i>"ngoaiTruDenNgay"</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGOAITRU_DENNGAY - Ngoại trú đến ngày FHIR path: VNCoreDocumentReference.context.period.end | VNCoreComposition.event.period.end</span>
<span style="color: navy">}
</span></pre></div>
</text>
<url
value="http://fhir.hl7.org.vn/core/StructureMap/vn-sm-bhyt-xml7-discharge-paper"/>
<version value="0.5.0"/>
<name value="BHYTXML7DischargePaperLMStructureMap"/>
<title
value="Bảng 7 giấy ra viện — XML7 Discharge Paper Logical Model — StructureMap"/>
<status value="draft"/>
<experimental value="false"/>
<date value="2026-04-28"/>
<publisher value="Omi HealthTech / VN Core FHIR Community Initiative"/>
<contact>
<name value="Omi HealthTech / VN Core FHIR Community Initiative"/>
<telecom>
<system value="url"/>
<value value="https://hl7.org.vn"/>
</telecom>
<telecom>
<system value="email"/>
<value value="[email protected]"/>
</telecom>
</contact>
<contact>
<name value="Omi HealthTech (OmiGroup)"/>
<telecom>
<system value="url"/>
<value value="https://omihealthtech.vn"/>
</telecom>
<telecom>
<system value="url"/>
<value value="https://omigroup.vn"/>
</telecom>
<telecom>
<system value="email"/>
<value value="[email protected]"/>
</telecom>
</contact>
<description
value="Generated StructureMap scaffold for Bảng 7 giấy ra viện — XML7 Discharge Paper Logical Model. Source semantics come from the logical model mapping annotations in `BHYTXML7DischargePaperLM.fsh` and remain aligned with the Python BHYT round-trip export adapter."/>
<jurisdiction>
<coding>
<system value="urn:iso:std:iso:3166"/>
<code value="VN"/>
<display value="Viet Nam"/>
</coding>
</jurisdiction>
<purpose
value="Publish canonical, reviewable FHIR-to-BHYT XML mapping artifacts for XML1-XML12 without duplicating field-level mapping semantics across FSH, wiki, and export code."/>
<structure>
<url
value="http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-bhyt-submission-bundle"/>
<mode value="source"/>
<alias value="BHYTSubmissionBundle"/>
<documentation
value="FHIR-native source bundle profile used by the repository round-trip adapter."/>
</structure>
<structure>
<url
value="http://fhir.hl7.org.vn/core/StructureDefinition/bhytXml7DischargePaperLm"/>
<mode value="target"/>
<alias value="BHYTXML7DischargePaperLM"/>
<documentation
value="Bảng 7 giấy ra viện — XML7 Discharge Paper Logical Model"/>
</structure>
<group>
<name value="MapBHYTXML7DischargePaperLM"/>
<typeMode value="none"/>
<documentation
value="Rows are derived from discharge Composition/DocumentReference, the linked Encounter, Condition, Practitioner and guardian/temporary card data. Generated from logical-model `^mapping` annotations. Fields still missing a field-level `^mapping.map` entry remain outside this StructureMap and are tracked in `wiki/mappings/bhyt-output-data/machine/structuremap-coverage.json`."/>
<input>
<name value="sourceBundle"/>
<type value="BHYTSubmissionBundle"/>
<mode value="source"/>
<documentation value="VN Core BHYT submission bundle."/>
</input>
<input>
<name value="targetRow"/>
<type value="BHYTXML7DischargePaperLM"/>
<mode value="target"/>
<documentation
value="Bảng 7 giấy ra viện — XML7 Discharge Paper Logical Model"/>
</input>
<rule>
<name value="maLk"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="maLkSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="maLk"/>
</target>
<documentation
value="Target field: MA_LK - Mã liên kết hồ sơ FHIR path: VNCoreClaim.identifier[MALK].value"/>
</rule>
<rule>
<name value="soLuuTru"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="soLuuTruSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="soLuuTru"/>
</target>
<documentation
value="Target field: SO_LUU_TRU - Số lưu trữ/số hồ sơ bệnh án FHIR path: VNCoreComposition.identifier.value | VNCoreDocumentReference.identifier.value"/>
</rule>
<rule>
<name value="maYte"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="maYteSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="maYte"/>
</target>
<documentation
value="Target field: MA_YTE - Mã y tế/mã người bệnh FHIR path: VNCorePatient.identifier[MRN].value"/>
</rule>
<rule>
<name value="maKhoaRv"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="maKhoaRvSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="maKhoaRv"/>
</target>
<documentation
value="Target field: MA_KHOA_RV - Mã khoa ra viện/tổng kết FHIR path: VNCoreEncounter.location.location.resolve().identifier.value | VNCoreOrganizationDepartment.identifier.value"/>
</rule>
<rule>
<name value="ngayVao"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="ngayVaoSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="ngayVao"/>
</target>
<documentation
value="Target field: NGAY_VAO - Ngày vào viện FHIR path: VNCoreEncounter.period.start"/>
</rule>
<rule>
<name value="ngayRa"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="ngayRaSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="ngayRa"/>
</target>
<documentation
value="Target field: NGAY_RA - Ngày ra viện FHIR path: VNCoreEncounter.period.end | VNCoreComposition.date"/>
</rule>
<rule>
<name value="chanDoanRv"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="chanDoanRvSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="chanDoanRv"/>
</target>
<documentation
value="Target field: CHAN_DOAN_RV - Chẩn đoán ra viện FHIR path: VNCoreComposition.section[diagnosis].entry.resolve().code | VNCoreCondition.code | section.text"/>
</rule>
<rule>
<name value="ghiChu"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="ghiChuSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="ghiChu"/>
</target>
<documentation
value="Target field: GHI_CHU - Ghi chú FHIR path: VNCoreDocumentReference.description | VNCoreComposition.section.text"/>
</rule>
<rule>
<name value="maTtdv"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="maTtdvSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="maTtdv"/>
</target>
<documentation
value="Target field: MA_TTDV - Mã thủ trưởng đơn vị/người ký FHIR path: VNCoreComposition.attester.party.resolve().identifier.value | VNCoreDocumentReference.authenticator.resolve().identifier.value"/>
</rule>
<rule>
<name value="maBs"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="maBsSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="maBs"/>
</target>
<documentation
value="Target field: MA_BS - Mã bác sĩ FHIR path: VNCoreComposition.author.resolve().identifier.value | VNCorePractitioner.identifier.value"/>
</rule>
<rule>
<name value="tenBs"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="tenBsSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="tenBs"/>
</target>
<documentation
value="Target field: TEN_BS - Tên bác sĩ FHIR path: VNCoreComposition.author.display | VNCorePractitioner.name.text"/>
</rule>
<rule>
<name value="ngayCt"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="ngayCtSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="ngayCt"/>
</target>
<documentation
value="Target field: NGAY_CT - Ngày cấp chứng từ FHIR path: VNCoreDocumentReference.date | VNCoreComposition.date"/>
</rule>
<rule>
<name value="maCha"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="maChaSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="maCha"/>
</target>
<documentation
value="Target field: MA_CHA - Mã cha FHIR path: VNCoreRelatedPerson.where(relationship.coding.code='FTH').identifier[CCCD].value | VNCorePatient.contact.where(relationship.coding.code='FTH').name"/>
</rule>
<rule>
<name value="maMe"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="maMeSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="maMe"/>
</target>
<documentation
value="Target field: MA_ME - Mã mẹ FHIR path: VNCoreRelatedPerson.where(relationship.coding.code='MTH').identifier[CCCD].value | VNCorePatient.contact.where(relationship.coding.code='MTH').name"/>
</rule>
<rule>
<name value="maTheTam"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="maTheTamSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="maTheTam"/>
</target>
<documentation
value="Target field: MA_THE_TAM - Mã thẻ tạm FHIR path: VNCoreCoverage.identifier.value Mapping note: Temporary card identifiers are kept as Coverage.identifier until a dedicated temporary-card slice is profiled."/>
</rule>
<rule>
<name value="hoTenCha"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="hoTenChaSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="hoTenCha"/>
</target>
<documentation
value="Target field: HO_TEN_CHA - Họ tên cha FHIR path: VNCoreRelatedPerson.where(relationship.coding.code='FTH').name.text | VNCorePatient.contact.where(relationship.coding.code='FTH').name.text"/>
</rule>
<rule>
<name value="hoTenMe"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="hoTenMeSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="hoTenMe"/>
</target>
<documentation
value="Target field: HO_TEN_ME - Họ tên mẹ FHIR path: VNCoreRelatedPerson.where(relationship.coding.code='MTH').name.text | VNCorePatient.contact.where(relationship.coding.code='MTH').name.text"/>
</rule>
<rule>
<name value="soNgayNghi"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="soNgayNghiSource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="soNgayNghi"/>
</target>
<documentation
value="Target field: SO_NGAY_NGHI - Số ngày nghỉ FHIR path: Derived from VNCoreDocumentReference.context.period | VNCoreComposition.event.period"/>
</rule>
<rule>
<name value="ngoaiTruTuNgay"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="ngoaiTruTuNgaySource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="ngoaiTruTuNgay"/>
</target>
<documentation
value="Target field: NGOAITRU_TUNGAY - Ngoại trú từ ngày FHIR path: VNCoreDocumentReference.context.period.start | VNCoreComposition.event.period.start"/>
</rule>
<rule>
<name value="ngoaiTruDenNgay"/>
<source>
<context value="sourceBundle"/>
<min value="0"/>
<max value="*"/>
<element value="entry"/>
<variable value="ngoaiTruDenNgaySource"/>
</source>
<target>
<context value="targetRow"/>
<contextType value="variable"/>
<element value="ngoaiTruDenNgay"/>
</target>
<documentation
value="Target field: NGOAITRU_DENNGAY - Ngoại trú đến ngày FHIR path: VNCoreDocumentReference.context.period.end | VNCoreComposition.event.period.end"/>
</rule>
</group>
</StructureMap>