HL7 Vietnam VN Core FHIR Implementation Guide

Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam
0.8.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.8.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

: Bảng 5 diễn biến lâm sàng BHYT — 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-xml5-clinical-course"/>
  <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-xml5-clinical-course</b></p><a name="vn-sm-bhyt-xml5-clinical-course"> </a><a name="hcvn-sm-bhyt-xml5-clinical-course"> </a><pre class="fml">
<b>map</b><span style="color: navy"> &quot;</span>http://fhir.hl7.org.vn/core/StructureMap/vn-sm-bhyt-xml5-clinical-course<span style="color: navy">&quot; = &quot;</span>BHYTXML5ClinicalCourseLMStructureMap<span style="color: navy">&quot;

</span><span style="color: navy">// </span><span style="color: green">Generated StructureMap scaffold for Bảng 5 diễn biến lâm sàng BHYT — Logical Model. Source semantics come from the logical model mapping annotations in `BHYTXML5ClinicalCourseLM.fsh` and remain aligned with the Python BHYT round-trip export adapter.</span>

<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-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">Bảng 5 diễn biến lâm sàng BHYT — Logical Model</span>
<b>uses</b><span style="color: navy"> &quot;</span><a href="StructureDefinition-bhytXml5ClinicalCourseLm.html" title="Bảng 5 diễn biến lâm sàng BHYT — Logical Model">http://fhir.hl7.org.vn/core/StructureDefinition/bhytXml5ClinicalCourseLm</a><span style="color: navy">&quot; </span><b>alias </b>BHYTXML5ClinicalCourseLM <b>as </b><b>target</b>

<span style="color: navy">// </span><span style="color: green">Rows are derived from clinical-course timeline entries. QD 3176 XML5 currently carries row order, event time, and performer metadata only. 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>MapBHYTXML5ClinicalCourseLM<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>BHYTXML5ClinicalCourseLM<span style="color: navy">)</span><span style="color: navy"> {
</span>  <span style="color: navy">// </span><span style="color: green">Target field: Mã liên kết hồ sơ FHIR path: VNCoreClaim.identifier[MALK].value</span>
  sourceBundle.entry 0<span style="color: navy">..</span>*<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: STT - Số thứ tự dòng FHIR path: Derived export row order from the clinical course timeline</span>
  sourceBundle.entry 0<span style="color: navy">..</span>*<b> as </b><span style="color: maroon">sttSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.stt <i>&quot;stt&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">// </span><span style="color: green">Target field: DIEN_BIEN_LS - Diễn biến lâm sàng của người bệnh trong lần khám và/hoặc nội dung chăm sóc của nhân viên y tế FHIR path: VNCoreClinicalImpression.summary | VNCoreClinicalImpression.note.text Mapping note: Trường tự do. Khi mô tả diễn biến có đo chỉ số sinh tồn thì ghi theo quy ước ký hiệu Mạch (M), nhiệt độ (T), huyết áp (HA), nhịp thở (NT), SPO2 (SP), chế độ hộ lý (HL)... theo cú pháp mẫu CSST&lt;M75_T37_HA120/70_NT18_HL2&gt; (bổ sung hướng dẫn theo QĐ 4750/QĐ-BYT).</span>
  sourceBundle.entry 0<span style="color: navy">..</span>*<b> as </b><span style="color: maroon">dienBienLsSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.dienBienLs <i>&quot;dienBienLs&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">// </span><span style="color: green">Target field: GIAI_DOAN_BENH - Giai đoạn bệnh, ghi khi cơ sở KBCB đã xác định được giai đoạn bệnh FHIR path: VNCoreCondition.stage.summary Mapping note: Chỉ ghi trong trường hợp cơ sở KBCB đã xác định giai đoạn bệnh (điều kiện có/không) — QĐ 3176/QĐ-BYT.</span>
  sourceBundle.entry 0<span style="color: navy">..</span>*<b> as </b><span style="color: maroon">giaiDoanBenhSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.giaiDoanBenh <i>&quot;giaiDoanBenh&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">// </span><span style="color: green">Target field: HOI_CHAN - Kết quả hội chẩn (nếu có) FHIR path: VNCoreClinicalImpression.summary | future hội-chẩn/consultation CareTeam extension Mapping note: Chỉ ghi khi có hội chẩn. Kết quả hội chẩn là văn bản tự do; chưa có element/slice riêng cho kết quả hội chẩn (case-conference) trên VNCoreCareTeam — QĐ 3176/QĐ-BYT.</span>
  sourceBundle.entry 0<span style="color: navy">..</span>*<b> as </b><span style="color: maroon">hoiChanSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.hoiChan <i>&quot;hoiChan&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">// </span><span style="color: green">Target field: PHAU_THUAT - Mô tả cách thức phẫu thuật, thủ thuật (nếu có) FHIR path: VNCoreProcedure.note.text Mapping note: Chỉ ghi khi có phẫu thuật/thủ thuật; mô tả tự do cách thức thực hiện — QĐ 3176/QĐ-BYT.</span>
  sourceBundle.entry 0<span style="color: navy">..</span>*<b> as </b><span style="color: maroon">phauThuatSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.phauThuat <i>&quot;phauThuat&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">// </span><span style="color: green">Target field: THOI_DIEM_DBLS - Thời điểm diễn biến lâm sàng theo định dạng yyyyMMddHHmm FHIR path: VNCoreComposition.date | VNCoreObservation.effectiveDateTime</span>
  sourceBundle.entry 0<span style="color: navy">..</span>*<b> as </b><span style="color: maroon">thoiDiemDblsSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.thoiDiemDbls <i>&quot;thoiDiemDbls&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">// </span><span style="color: green">Target field: NGUOI_THUC_HIEN - Mã người thực hiện FHIR path: VNCoreComposition.author.resolve().identifier.value | VNCorePractitioner.identifier.value</span>
  sourceBundle.entry 0<span style="color: navy">..</span>*<b> as </b><span style="color: maroon">nguoiThucHienSource</span><span style="color: navy"><b> -&gt; </b></span>targetRow.nguoiThucHien <i>&quot;nguoiThucHien&quot;</i><span style="color: navy">;</span>
<span style="color: navy">}

</span></pre></div>
  </text>
  <url
       value="http://fhir.hl7.org.vn/core/StructureMap/vn-sm-bhyt-xml5-clinical-course"/>
  <identifier>
    <system value="urn:ietf:rfc:3986"/>
    <value value="urn:oid:2.25.161089673617632664299011809196868855799.43.8"/>
  </identifier>
  <version value="0.8.0"/>
  <name value="BHYTXML5ClinicalCourseLMStructureMap"/>
  <title
         value="Bảng 5 diễn biến lâm sàng BHYT — 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="info@hl7.org.vn"/>
    </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="info@hl7.org.vn"/>
    </telecom>
  </contact>
  <description
               value="Generated StructureMap scaffold for Bảng 5 diễn biến lâm sàng BHYT — Logical Model. Source semantics come from the logical model mapping annotations in `BHYTXML5ClinicalCourseLM.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/bhytXml5ClinicalCourseLm"/>
    <mode value="target"/>
    <alias value="BHYTXML5ClinicalCourseLM"/>
    <documentation value="Bảng 5 diễn biến lâm sàng BHYT — Logical Model"/>
  </structure>
  <group>
    <name value="MapBHYTXML5ClinicalCourseLM"/>
    <typeMode value="none"/>
    <documentation
                   value="Rows are derived from clinical-course timeline entries. QD 3176 XML5 currently carries row order, event time, and performer metadata only. 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="BHYTXML5ClinicalCourseLM"/>
      <mode value="target"/>
      <documentation value="Bảng 5 diễn biến lâm sàng BHYT — 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: Mã liên kết hồ sơ FHIR path: VNCoreClaim.identifier[MALK].value"/>
    </rule>
    <rule>
      <name value="stt"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="sttSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="stt"/>
      </target>
      <documentation
                     value="Target field: STT - Số thứ tự dòng FHIR path: Derived export row order from the clinical course timeline"/>
    </rule>
    <rule>
      <name value="dienBienLs"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="dienBienLsSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="dienBienLs"/>
      </target>
      <documentation
                     value="Target field: DIEN_BIEN_LS - Diễn biến lâm sàng của người bệnh trong lần khám và/hoặc nội dung chăm sóc của nhân viên y tế FHIR path: VNCoreClinicalImpression.summary | VNCoreClinicalImpression.note.text Mapping note: Trường tự do. Khi mô tả diễn biến có đo chỉ số sinh tồn thì ghi theo quy ước ký hiệu Mạch (M), nhiệt độ (T), huyết áp (HA), nhịp thở (NT), SPO2 (SP), chế độ hộ lý (HL)... theo cú pháp mẫu CSST&lt;M75_T37_HA120/70_NT18_HL2&gt; (bổ sung hướng dẫn theo QĐ 4750/QĐ-BYT)."/>
    </rule>
    <rule>
      <name value="giaiDoanBenh"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="giaiDoanBenhSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="giaiDoanBenh"/>
      </target>
      <documentation
                     value="Target field: GIAI_DOAN_BENH - Giai đoạn bệnh, ghi khi cơ sở KBCB đã xác định được giai đoạn bệnh FHIR path: VNCoreCondition.stage.summary Mapping note: Chỉ ghi trong trường hợp cơ sở KBCB đã xác định giai đoạn bệnh (điều kiện có/không) — QĐ 3176/QĐ-BYT."/>
    </rule>
    <rule>
      <name value="hoiChan"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="hoiChanSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="hoiChan"/>
      </target>
      <documentation
                     value="Target field: HOI_CHAN - Kết quả hội chẩn (nếu có) FHIR path: VNCoreClinicalImpression.summary | future hội-chẩn/consultation CareTeam extension Mapping note: Chỉ ghi khi có hội chẩn. Kết quả hội chẩn là văn bản tự do; chưa có element/slice riêng cho kết quả hội chẩn (case-conference) trên VNCoreCareTeam — QĐ 3176/QĐ-BYT."/>
    </rule>
    <rule>
      <name value="phauThuat"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="phauThuatSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="phauThuat"/>
      </target>
      <documentation
                     value="Target field: PHAU_THUAT - Mô tả cách thức phẫu thuật, thủ thuật (nếu có) FHIR path: VNCoreProcedure.note.text Mapping note: Chỉ ghi khi có phẫu thuật/thủ thuật; mô tả tự do cách thức thực hiện — QĐ 3176/QĐ-BYT."/>
    </rule>
    <rule>
      <name value="thoiDiemDbls"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="thoiDiemDblsSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="thoiDiemDbls"/>
      </target>
      <documentation
                     value="Target field: THOI_DIEM_DBLS - Thời điểm diễn biến lâm sàng theo định dạng yyyyMMddHHmm FHIR path: VNCoreComposition.date | VNCoreObservation.effectiveDateTime"/>
    </rule>
    <rule>
      <name value="nguoiThucHien"/>
      <source>
        <context value="sourceBundle"/>
        <min value="0"/>
        <max value="*"/>
        <element value="entry"/>
        <variable value="nguoiThucHienSource"/>
      </source>
      <target>
        <context value="targetRow"/>
        <contextType value="variable"/>
        <element value="nguoiThucHien"/>
      </target>
      <documentation
                     value="Target field: NGUOI_THUC_HIEN - Mã người thực hiện FHIR path: VNCoreComposition.author.resolve().identifier.value | VNCorePractitioner.identifier.value"/>
    </rule>
  </group>
</StructureMap>