HL7 Vietnam VN Core FHIR Implementation Guide

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

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

: Bảng 9 giấy chứng sinh — XML9 Birth Certificate Logical Model — StructureMap

Draft tại thời điểm 2026-04-28

Bản thô xml | Tải xuống


<StructureMap xmlns="http://hl7.org/fhir">
  <id value="vn-sm-bhyt-xml9-birth-certificate"/>
  <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-xml9-birth-certificate</b></p><a name="vn-sm-bhyt-xml9-birth-certificate"> </a><a name="hcvn-sm-bhyt-xml9-birth-certificate"> </a><pre class="fml">
<b>map</b><span style="color: navy"> &quot;</span>http://fhir.hl7.org.vn/core/StructureMap/vn-sm-bhyt-xml9-birth-certificate<span style="color: navy">&quot; = &quot;</span>BHYTXML9BirthCertificateLMStructureMap<span style="color: navy">&quot;

</span><span style="color: navy">// </span><span style="color: green">Generated StructureMap scaffold for Bảng 9 giấy chứng sinh — XML9 Birth Certificate Logical Model. Source semantics come from the logical model mapping annotations in `BHYTXML9BirthCertificateLM.fsh` and remain aligned with the Python BHYT round-trip export adapter.</span>

<b>uses</b><span style="color: navy"> &quot;</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">&quot; </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"> &quot;</span><a href="StructureDefinition-bhytXml9BirthCertificateLm.html" title="Bảng 9 giấy chứng sinh — XML9 Birth Certificate Logical Model">http://fhir.hl7.org.vn/core/StructureDefinition/bhytXml9BirthCertificateLm</a><span style="color: navy">&quot; </span><b>alias </b>BHYTXML9BirthCertificateLM <b>as </b><b>target</b> <span style="color: navy">// </span><span style="color: green">Bảng 9 giấy chứng sinh — XML9 Birth Certificate Logical Model</span>

<span style="color: navy">// </span><span style="color: green">Rows are derived from birth-certificate DocumentReference/Composition, newborn Patient, mother/caregiver RelatedPerson and certifying Practitioner. 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>MapBHYTXML9BirthCertificateLM<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>BHYTXML9BirthCertificateLM<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> -&gt; </b></span>targetRow.maLk <i>&quot;maLk&quot;</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">maBhxhNndSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.maBhxhNnd <i>&quot;maBhxhNnd&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_BHXH_NND - Mã BHXH người nuôi dưỡng FHIR path: VNCoreRelatedPerson.identifier[BHXH].value | VNCorePatient.contact.identifier.value</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">maTheNndSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.maTheNnd <i>&quot;maTheNnd&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_THE_NND - Mã thẻ người nuôi dưỡng FHIR path: VNCoreCoverage.subscriber.resolve().identifier[BHYT].value | VNCoreRelatedPerson.identifier.value</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">hoTenNndSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.hoTenNnd <i>&quot;hoTenNnd&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: HO_TEN_NND - Họ tên người nuôi dưỡng FHIR path: VNCoreRelatedPerson.name.text | VNCorePatient.contact.name.text</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">ngaySinhNndSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.ngaySinhNnd <i>&quot;ngaySinhNnd&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGAYSINH_NND - Ngày sinh người nuôi dưỡng FHIR path: VNCoreRelatedPerson.birthDate</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">maDanTocNndSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.maDanTocNnd <i>&quot;maDanTocNnd&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_DANTOC_NND - Mã dân tộc người nuôi dưỡng FHIR path: VNCoreRelatedPerson.extension[ethnicity].valueCodeableConcept.coding.code | VNCorePatient.contact.extension[ethnicity].valueCodeableConcept.coding.code</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">ngayCapCccdNndSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.ngayCapCccdNnd <i>&quot;ngayCapCccdNnd&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGAYCAP_CCCD_NND - Ngày cấp CCCD người nuôi dưỡng FHIR path: VNCoreRelatedPerson.identifier[CCCD].period.start</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">noiCapCccdNndSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.noiCapCccdNnd <i>&quot;noiCapCccdNnd&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NOICAP_CCCD_NND - Nơi cấp CCCD người nuôi dưỡng FHIR path: VNCoreRelatedPerson.identifier[CCCD].assigner.display</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">noiCuTruNndSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.noiCuTruNnd <i>&quot;noiCuTruNnd&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NOI_CU_TRU_NND - Nơi cư trú người nuôi dưỡng FHIR path: VNCoreRelatedPerson.address.text | VNCorePatient.contact.address.text</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">maQuocTichSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.maQuocTich <i>&quot;maQuocTich&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MA_QUOCTICH - Mã quốc tịch FHIR path: VNCorePatient.extension[citizenship].extension[code].valueCodeableConcept.coding.code</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">maTinhCuTruSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.maTinhCuTru <i>&quot;maTinhCuTru&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MATINH_CU_TRU - Mã tỉnh cư trú FHIR path: VNCoreRelatedPerson.address.extension[province].valueCoding.code | VNCorePatient.address.extension[province].valueCoding.code</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">maHuyenCuTruSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.maHuyenCuTru <i>&quot;maHuyenCuTru&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MAHUYEN_CU_TRU - Mã huyện cư trú legacy FHIR path: VNCoreRelatedPerson.address.district | VNCorePatient.address.district</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">maXaCuTruSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.maXaCuTru <i>&quot;maXaCuTru&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: MAXA_CU_TRU - Mã xã cư trú FHIR path: VNCoreRelatedPerson.address.extension[ward].valueCoding.code | VNCorePatient.address.extension[ward].valueCoding.code</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">hoTenChaSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.hoTenCha <i>&quot;hoTenCha&quot;</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">maTheTamSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.maTheTam <i>&quot;maTheTam&quot;</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">hoTenConSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.hoTenCon <i>&quot;hoTenCon&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: HO_TEN_CON - Họ tên con FHIR path: VNCorePatient.name.text</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">gioiTinhConSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.gioiTinhCon <i>&quot;gioiTinhCon&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: GIOI_TINH_CON - Giới tính con FHIR path: VNCorePatient.gender</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">soConSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.soCon <i>&quot;soCon&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: SO_CON - Số con FHIR path: VNCoreObservation.valueQuantity</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">lanSinhSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.lanSinh <i>&quot;lanSinh&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: LAN_SINH - Lần sinh FHIR path: VNCoreObservation.valueInteger</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">soConSongSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.soConSong <i>&quot;soConSong&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: SO_CON_SONG - Số con sống FHIR path: VNCoreObservation.valueQuantity</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">canNangConSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.canNangCon <i>&quot;canNangCon&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: CAN_NANG_CON - Cân nặng con FHIR path: VNCoreObservation.valueQuantity | VNCorePatient.extension[birthWeight].valueQuantity</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">ngaySinhConSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.ngaySinhCon <i>&quot;ngaySinhCon&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGAY_SINH_CON - Ngày sinh con FHIR path: VNCoreDocumentReference.date | content.attachment.creation | VNCorePatient.birthDate</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">noiSinhConSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.noiSinhCon <i>&quot;noiSinhCon&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NOI_SINH_CON - Nơi sinh con FHIR path: VNCorePatient.extension[birthPlace].valueAddress.text | VNCoreEncounter.location.location.resolve().name</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">sinhConPhauThuatSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.sinhConPhauThuat <i>&quot;sinhConPhauThuat&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: SINHCON_PHAUTHUAT - Sinh con phẫu thuật FHIR path: VNCoreProcedure.code | VNCoreObservation.valueBoolean</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">sinhConDuoi32TuanSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.sinhConDuoi32Tuan <i>&quot;sinhConDuoi32Tuan&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: SINHCON_DUOI32TUAN - Sinh con dưới 32 tuần FHIR path: VNCoreObservation.valueBoolean</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">nguoiDoDeSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.nguoiDoDe <i>&quot;nguoiDoDe&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGUOI_DO_DE - Người đỡ đẻ FHIR path: VNCoreComposition.author.resolve().identifier.value | VNCorePractitioner.identifier.value</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">nguoiGhiPhieuSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.nguoiGhiPhieu <i>&quot;nguoiGhiPhieu&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: NGUOI_GHI_PHIEU - Người ghi phiếu FHIR path: VNCoreDocumentReference.author.resolve().identifier.value | VNCorePractitioner.identifier.value</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">ngayCtSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.ngayCt <i>&quot;ngayCt&quot;</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">soSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.so <i>&quot;so&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: SO - Số chứng từ FHIR path: VNCoreDocumentReference.identifier.value | VNCoreComposition.identifier.value</span>
  sourceBundle.entry<b> as </b><span style="color: maroon">quyenSoSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.quyenSo <i>&quot;quyenSo&quot;</i><span style="color: navy">;</span> <span style="color: navy">// </span><span style="color: green">Target field: QUYEN_SO - Quyển số FHIR path: VNCoreDocumentReference.identifier.value</span>
<span style="color: navy">}

</span></pre></div>
  </text>
  <url
       value="http://fhir.hl7.org.vn/core/StructureMap/vn-sm-bhyt-xml9-birth-certificate"/>
  <version value="0.5.0"/>
  <name value="BHYTXML9BirthCertificateLMStructureMap"/>
  <title
         value="Bảng 9 giấy chứng sinh — XML9 Birth Certificate 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 9 giấy chứng sinh — XML9 Birth Certificate Logical Model. Source semantics come from the logical model mapping annotations in `BHYTXML9BirthCertificateLM.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/bhytXml9BirthCertificateLm"/>
    <mode value="target"/>
    <alias value="BHYTXML9BirthCertificateLM"/>
    <documentation
                   value="Bảng 9 giấy chứng sinh — XML9 Birth Certificate Logical Model"/>
  </structure>
  <group>
    <name value="MapBHYTXML9BirthCertificateLM"/>
    <typeMode value="none"/>
    <documentation
                   value="Rows are derived from birth-certificate DocumentReference/Composition, newborn Patient, mother/caregiver RelatedPerson and certifying Practitioner. 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="BHYTXML9BirthCertificateLM"/>
      <mode value="target"/>
      <documentation
                     value="Bảng 9 giấy chứng sinh — XML9 Birth Certificate 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="maBhxhNnd"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="maBhxhNndSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="maBhxhNnd"/>
      </target>
      <documentation
                     value="Target field: MA_BHXH_NND - Mã BHXH người nuôi dưỡng FHIR path: VNCoreRelatedPerson.identifier[BHXH].value | VNCorePatient.contact.identifier.value"/>
    </rule>
    <rule>
      <name value="maTheNnd"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="maTheNndSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="maTheNnd"/>
      </target>
      <documentation
                     value="Target field: MA_THE_NND - Mã thẻ người nuôi dưỡng FHIR path: VNCoreCoverage.subscriber.resolve().identifier[BHYT].value | VNCoreRelatedPerson.identifier.value"/>
    </rule>
    <rule>
      <name value="hoTenNnd"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="hoTenNndSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="hoTenNnd"/>
      </target>
      <documentation
                     value="Target field: HO_TEN_NND - Họ tên người nuôi dưỡng FHIR path: VNCoreRelatedPerson.name.text | VNCorePatient.contact.name.text"/>
    </rule>
    <rule>
      <name value="ngaySinhNnd"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="ngaySinhNndSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="ngaySinhNnd"/>
      </target>
      <documentation
                     value="Target field: NGAYSINH_NND - Ngày sinh người nuôi dưỡng FHIR path: VNCoreRelatedPerson.birthDate"/>
    </rule>
    <rule>
      <name value="maDanTocNnd"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="maDanTocNndSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="maDanTocNnd"/>
      </target>
      <documentation
                     value="Target field: MA_DANTOC_NND - Mã dân tộc người nuôi dưỡng FHIR path: VNCoreRelatedPerson.extension[ethnicity].valueCodeableConcept.coding.code | VNCorePatient.contact.extension[ethnicity].valueCodeableConcept.coding.code"/>
    </rule>
    <rule>
      <name value="ngayCapCccdNnd"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="ngayCapCccdNndSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="ngayCapCccdNnd"/>
      </target>
      <documentation
                     value="Target field: NGAYCAP_CCCD_NND - Ngày cấp CCCD người nuôi dưỡng FHIR path: VNCoreRelatedPerson.identifier[CCCD].period.start"/>
    </rule>
    <rule>
      <name value="noiCapCccdNnd"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="noiCapCccdNndSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="noiCapCccdNnd"/>
      </target>
      <documentation
                     value="Target field: NOICAP_CCCD_NND - Nơi cấp CCCD người nuôi dưỡng FHIR path: VNCoreRelatedPerson.identifier[CCCD].assigner.display"/>
    </rule>
    <rule>
      <name value="noiCuTruNnd"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="noiCuTruNndSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="noiCuTruNnd"/>
      </target>
      <documentation
                     value="Target field: NOI_CU_TRU_NND - Nơi cư trú người nuôi dưỡng FHIR path: VNCoreRelatedPerson.address.text | VNCorePatient.contact.address.text"/>
    </rule>
    <rule>
      <name value="maQuocTich"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="maQuocTichSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="maQuocTich"/>
      </target>
      <documentation
                     value="Target field: MA_QUOCTICH - Mã quốc tịch FHIR path: VNCorePatient.extension[citizenship].extension[code].valueCodeableConcept.coding.code"/>
    </rule>
    <rule>
      <name value="maTinhCuTru"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="maTinhCuTruSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="maTinhCuTru"/>
      </target>
      <documentation
                     value="Target field: MATINH_CU_TRU - Mã tỉnh cư trú FHIR path: VNCoreRelatedPerson.address.extension[province].valueCoding.code | VNCorePatient.address.extension[province].valueCoding.code"/>
    </rule>
    <rule>
      <name value="maHuyenCuTru"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="maHuyenCuTruSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="maHuyenCuTru"/>
      </target>
      <documentation
                     value="Target field: MAHUYEN_CU_TRU - Mã huyện cư trú legacy FHIR path: VNCoreRelatedPerson.address.district | VNCorePatient.address.district"/>
    </rule>
    <rule>
      <name value="maXaCuTru"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="maXaCuTruSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="maXaCuTru"/>
      </target>
      <documentation
                     value="Target field: MAXA_CU_TRU - Mã xã cư trú FHIR path: VNCoreRelatedPerson.address.extension[ward].valueCoding.code | VNCorePatient.address.extension[ward].valueCoding.code"/>
    </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="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="hoTenCon"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="hoTenConSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="hoTenCon"/>
      </target>
      <documentation
                     value="Target field: HO_TEN_CON - Họ tên con FHIR path: VNCorePatient.name.text"/>
    </rule>
    <rule>
      <name value="gioiTinhCon"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="gioiTinhConSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="gioiTinhCon"/>
      </target>
      <documentation
                     value="Target field: GIOI_TINH_CON - Giới tính con FHIR path: VNCorePatient.gender"/>
    </rule>
    <rule>
      <name value="soCon"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="soConSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="soCon"/>
      </target>
      <documentation
                     value="Target field: SO_CON - Số con FHIR path: VNCoreObservation.valueQuantity"/>
    </rule>
    <rule>
      <name value="lanSinh"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="lanSinhSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="lanSinh"/>
      </target>
      <documentation
                     value="Target field: LAN_SINH - Lần sinh FHIR path: VNCoreObservation.valueInteger"/>
    </rule>
    <rule>
      <name value="soConSong"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="soConSongSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="soConSong"/>
      </target>
      <documentation
                     value="Target field: SO_CON_SONG - Số con sống FHIR path: VNCoreObservation.valueQuantity"/>
    </rule>
    <rule>
      <name value="canNangCon"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="canNangConSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="canNangCon"/>
      </target>
      <documentation
                     value="Target field: CAN_NANG_CON - Cân nặng con FHIR path: VNCoreObservation.valueQuantity | VNCorePatient.extension[birthWeight].valueQuantity"/>
    </rule>
    <rule>
      <name value="ngaySinhCon"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="ngaySinhConSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="ngaySinhCon"/>
      </target>
      <documentation
                     value="Target field: NGAY_SINH_CON - Ngày sinh con FHIR path: VNCoreDocumentReference.date | content.attachment.creation | VNCorePatient.birthDate"/>
    </rule>
    <rule>
      <name value="noiSinhCon"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="noiSinhConSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="noiSinhCon"/>
      </target>
      <documentation
                     value="Target field: NOI_SINH_CON - Nơi sinh con FHIR path: VNCorePatient.extension[birthPlace].valueAddress.text | VNCoreEncounter.location.location.resolve().name"/>
    </rule>
    <rule>
      <name value="sinhConPhauThuat"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="sinhConPhauThuatSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="sinhConPhauThuat"/>
      </target>
      <documentation
                     value="Target field: SINHCON_PHAUTHUAT - Sinh con phẫu thuật FHIR path: VNCoreProcedure.code | VNCoreObservation.valueBoolean"/>
    </rule>
    <rule>
      <name value="sinhConDuoi32Tuan"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="sinhConDuoi32TuanSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="sinhConDuoi32Tuan"/>
      </target>
      <documentation
                     value="Target field: SINHCON_DUOI32TUAN - Sinh con dưới 32 tuần FHIR path: VNCoreObservation.valueBoolean"/>
    </rule>
    <rule>
      <name value="nguoiDoDe"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="nguoiDoDeSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="nguoiDoDe"/>
      </target>
      <documentation
                     value="Target field: NGUOI_DO_DE - Người đỡ đẻ FHIR path: VNCoreComposition.author.resolve().identifier.value | VNCorePractitioner.identifier.value"/>
    </rule>
    <rule>
      <name value="nguoiGhiPhieu"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="nguoiGhiPhieuSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="nguoiGhiPhieu"/>
      </target>
      <documentation
                     value="Target field: NGUOI_GHI_PHIEU - Người ghi phiếu FHIR path: VNCoreDocumentReference.author.resolve().identifier.value | VNCorePractitioner.identifier.value"/>
    </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="so"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="soSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="so"/>
      </target>
      <documentation
                     value="Target field: SO - Số chứng từ FHIR path: VNCoreDocumentReference.identifier.value | VNCoreComposition.identifier.value"/>
    </rule>
    <rule>
      <name value="quyenSo"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="quyenSoSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="quyenSo"/>
      </target>
      <documentation
                     value="Target field: QUYEN_SO - Quyển số FHIR path: VNCoreDocumentReference.identifier.value"/>
    </rule>
  </group>
</StructureMap>