@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

<http://fhir.hl7.org.vn/core/StructureDefinition/vnPreVaccinationScreeningLm> a fhir:StructureDefinition ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:Resource.id [ fhir:value "vnPreVaccinationScreeningLm"] ;
  fhir:Resource.language [ fhir:value "vi"] ;
  fhir:DomainResource.text [
     fhir:Narrative.status [ fhir:value "extensions" ] ;
     fhir:Narrative.div "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureDefinition vnPreVaccinationScreeningLm</b></p><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border: 0px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;\"><tr style=\"border: 1px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top\"><th style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px\" class=\"hierarchy\"><a href=\"https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views\" title=\"The logical name of the element\">Name</a></th><th style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px\" class=\"hierarchy\"><a href=\"https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views\" title=\"Information about the use of the element\">Flags</a></th><th style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px\" class=\"hierarchy\"><a href=\"https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views\" title=\"Minimum and Maximum # of times the element can appear in the instance\">Card.</a></th><th style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px; width: 100px\" class=\"hierarchy\"><a href=\"https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views\" title=\"Reference to the type of the element\">Type</a></th><th style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px\" class=\"hierarchy\"><a href=\"https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views\" title=\"Additional information about the element\">Description &amp; Constraints</a><span style=\"float: right\"><a href=\"https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views\" title=\"Legend for this format\"><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3goXBCwdPqAP0wAAAldJREFUOMuNk0tIlFEYhp9z/vE2jHkhxXA0zJCMitrUQlq4lnSltEqCFhFG2MJFhIvIFpkEWaTQqjaWZRkp0g26URZkTpbaaOJkDqk10szoODP//7XIMUe0elcfnPd9zsfLOYplGrpRwZaqTtw3K7PtGem7Q6FoidbGgqHVy/HRb669R+56zx7eRV1L31JGxYbBtjKK93cxeqfyQHbehkZbUkK20goELEuIzEd+dHS+qz/Y8PTSif0FnGkbiwcAjHaU1+QWOptFiyCLp/LnKptpqIuXHx6rbR26kJcBX3yLgBfnd7CxwJmflpP2wUg0HIAoUUpZBmKzELGWcN8nAr6Gpu7tLU/CkwAaoKTWRSQyt89Q8w6J+oVQkKnBoblH7V0PPvUOvDYXfopE/SJmALsxnVm6LbkotrUtNowMeIrVrBcBpaMmdS0j9df7abpSuy7HWehwJdt1lhVwi/J58U5beXGAF6c3UXLycw1wdFklArBn87xdh0ZsZtArghBdAA3+OEDVubG4UEzP6x1FOWneHh2VDAHBAt80IbdXDcesNoCvs3E5AFyNSU5nbrDPZpcUEQQTFZiEVx+51fxMhhyJEAgvlriadIJZZksRuwBYMOPBbO3hePVVqgEJhFeUuFLhIPkRP6BQLIBrmMenujm/3g4zc398awIe90Zb5A1vREALqneMcYgP/xVQWlG+Ncu5vgwwlaUNx+3799rfe96u9K0JSDXcOzOTJg4B6IgmXfsygc7/Bvg9g9E58/cDVmGIBOP/zT8Bz1zqWqpbXIsd0O9hajXfL6u4BaOS6SeWAAAAAElFTkSuQmCC\" alt=\"doco\" style=\"background-color: inherit\"/></a></span></th></tr><tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white\"><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck1.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_element.gif\" alt=\".\" style=\"background-color: white; background-color: inherit\" title=\"Element\" class=\"hierarchy\"/> <a href=\"StructureDefinition-vnPreVaccinationScreeningLm-definitions.html#vnPreVaccinationScreeningLm\" title=\"Logical model đặc tả các phép đo mà Quyết định 1575/QĐ-BYT (ban hành và hiệu lực 27/03/2023) BUỘC phải ghi trị số trên bảng kiểm sàng lọc trước tiêm chủng cho trẻ em — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile cân nặng và profile nhiệt độ cơ thể.#xA;#xA;Cả bốn mẫu bảng kiểm (Phụ lục I-IV) đều có ô 'Cân nặng: ____' và 'Thân nhiệt: ____ °C' nằm trong phần bắt buộc điền, trước mục I 'Khám sàng lọc'. Nghĩa vụ đo và ghi không suy từ việc mẫu có ô trống — phần IV.1 của hướng dẫn nói thẳng ai làm việc đó: 'Điều dưỡng viên, hộ sinh viên: Ghi các thông tin của trẻ, TRỰC TIẾP CÂN TRẺ, ĐO VÀ GHI KẾT QUẢ NHIỆT ĐỘ của trẻ', và 'Bác sĩ, y sĩ: … trực tiếp đo và ghi kết quả nhiệt độ của trẻ khi không có điều dưỡng viên, hộ sinh viên'. Hai trị số ấy còn là căn cứ của các mục sàng lọc dẫn tới tạm hoãn: ngưỡng thân nhiệt 'Sốt: nhiệt độ ≥ 38°C; Hạ thân nhiệt: nhiệt độ ≤ 35,5°C' (đo tại nách) có ở CẢ BỐN mẫu, còn ngưỡng 'Cân nặng &lt; 2000g' CHỈ có ở hai mẫu dùng ngoài bệnh viện — Phụ lục III và IV không có mục ấy, và hướng dẫn tại bệnh viện còn ghi 'thực hiện tiêm chủng các vắc xin theo lịch với trẻ nhẹ cân (so với tuổi)'. Nghĩa vụ GHI TRỊ SỐ thì không đổi theo nơi tiêm.#xA;#xA;Hai bản dành cho trẻ dưới 1 tháng (Phụ lục II và IV) ghi cân nặng bằng GAM, hai bản còn lại bằng KILÔGAM — xem chú thích tại `canNang.giaTri` về hệ quả với ràng buộc đơn vị của profile.#xA;#xA;Model KHÔNG khai kết luận sàng lọc và loại vắc xin thành trường có nghĩa vụ: xem `ketLuanSangLoc`. / Logical model for the mandatory measurements on the pre-vaccination screening checklist required by Decision 1575/QĐ-BYT.\">vnPreVaccinationScreeningLm</a><a name=\"vnPreVaccinationScreeningLm\"> </a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><span style=\"opacity: 0.5\">0</span><span style=\"opacity: 0.5\">..</span><span style=\"opacity: 0.5\">*</span></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"http://build.fhir.org/types.html#Base\">Base</a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">Phép đo bắt buộc của bảng kiểm sàng lọc trước tiêm chủng (QĐ 1575/QĐ-BYT) — Logical Model</td></tr>#xD;\n<tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: #F7F7F7\"><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck11.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vjoin.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_datatype.gif\" alt=\".\" style=\"background-color: #F7F7F7; background-color: inherit\" title=\"Data Type\" class=\"hierarchy\"/> <a href=\"StructureDefinition-vnPreVaccinationScreeningLm-definitions.html#vnPreVaccinationScreeningLm.canNang\" title=\"Cân nặng đo tại buổi sàng lọc\">canNang</a><a name=\"vnPreVaccinationScreeningLm.canNang\"> </a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">1..1</td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"http://hl7.org/fhir/R4/datatypes.html#BackboneElement\">BackboneElement</a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">Cân nặng đo tại buổi sàng lọc</td></tr>#xD;\n<tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white\"><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck100.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vline.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vjoin_end.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_primitive.png\" alt=\".\" style=\"background-color: white; background-color: inherit\" title=\"Primitive Data Type\" class=\"hierarchy\"/> <a href=\"StructureDefinition-vnPreVaccinationScreeningLm-definitions.html#vnPreVaccinationScreeningLm.canNang.giaTri\" title=\"Trị số cân nặng\">giaTri</a><a name=\"vnPreVaccinationScreeningLm.canNang.giaTri\"> </a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">1..1</td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"http://hl7.org/fhir/R4/datatypes.html#decimal\">decimal</a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">Trị số cân nặng</td></tr>#xD;\n<tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: #F7F7F7\"><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck11.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vjoin.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_datatype.gif\" alt=\".\" style=\"background-color: #F7F7F7; background-color: inherit\" title=\"Data Type\" class=\"hierarchy\"/> <a href=\"StructureDefinition-vnPreVaccinationScreeningLm-definitions.html#vnPreVaccinationScreeningLm.thanNhiet\" title=\"Thân nhiệt đo tại buổi sàng lọc\">thanNhiet</a><a name=\"vnPreVaccinationScreeningLm.thanNhiet\"> </a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">1..1</td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"http://hl7.org/fhir/R4/datatypes.html#BackboneElement\">BackboneElement</a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">Thân nhiệt đo tại buổi sàng lọc</td></tr>#xD;\n<tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white\"><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck100.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vline.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vjoin_end.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_primitive.png\" alt=\".\" style=\"background-color: white; background-color: inherit\" title=\"Primitive Data Type\" class=\"hierarchy\"/> <a href=\"StructureDefinition-vnPreVaccinationScreeningLm-definitions.html#vnPreVaccinationScreeningLm.thanNhiet.giaTri\" title=\"Trị số thân nhiệt tính bằng độ C\">giaTri</a><a name=\"vnPreVaccinationScreeningLm.thanNhiet.giaTri\"> </a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">1..1</td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"http://hl7.org/fhir/R4/datatypes.html#decimal\">decimal</a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">Trị số thân nhiệt tính bằng độ C</td></tr>#xD;\n<tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: #F7F7F7\"><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck10.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vjoin.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_primitive.png\" alt=\".\" style=\"background-color: #F7F7F7; background-color: inherit\" title=\"Primitive Data Type\" class=\"hierarchy\"/> <a href=\"StructureDefinition-vnPreVaccinationScreeningLm-definitions.html#vnPreVaccinationScreeningLm.nhipTimNhipTho\" title=\"Đánh giá tim và nhịp thở trên bảng kiểm\">nhipTimNhipTho</a><a name=\"vnPreVaccinationScreeningLm.nhipTimNhipTho\"> </a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">0..1</td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"http://hl7.org/fhir/R4/datatypes.html#string\">string</a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">Đánh giá tim và nhịp thở trên bảng kiểm</td></tr>#xD;\n<tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white\"><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck10.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vjoin.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_primitive.png\" alt=\".\" style=\"background-color: white; background-color: inherit\" title=\"Primitive Data Type\" class=\"hierarchy\"/> <a href=\"StructureDefinition-vnPreVaccinationScreeningLm-definitions.html#vnPreVaccinationScreeningLm.ketLuanSangLoc\" title=\"Kết luận sàng lọc\">ketLuanSangLoc</a><a name=\"vnPreVaccinationScreeningLm.ketLuanSangLoc\"> </a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">1..1</td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"http://hl7.org/fhir/R4/datatypes.html#string\">string</a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">Kết luận sàng lọc</td></tr>#xD;\n<tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: #F7F7F7\"><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck10.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vjoin.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_primitive.png\" alt=\".\" style=\"background-color: #F7F7F7; background-color: inherit\" title=\"Primitive Data Type\" class=\"hierarchy\"/> <a href=\"StructureDefinition-vnPreVaccinationScreeningLm-definitions.html#vnPreVaccinationScreeningLm.loaiVacXin\" title=\"Loại vắc xin tiêm chủng lần này\">loaiVacXin</a><a name=\"vnPreVaccinationScreeningLm.loaiVacXin\"> </a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">0..1</td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"http://hl7.org/fhir/R4/datatypes.html#string\">string</a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">Loại vắc xin tiêm chủng lần này</td></tr>#xD;\n<tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white\"><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck00.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"tbl_vjoin_end.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_primitive.png\" alt=\".\" style=\"background-color: white; background-color: inherit\" title=\"Primitive Data Type\" class=\"hierarchy\"/> <a href=\"StructureDefinition-vnPreVaccinationScreeningLm-definitions.html#vnPreVaccinationScreeningLm.thoiDiemVaNguoiSangLoc\" title=\"Thời điểm sàng lọc và người thực hiện sàng lọc\">thoiDiemVaNguoiSangLoc</a><a name=\"vnPreVaccinationScreeningLm.thoiDiemVaNguoiSangLoc\"> </a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">1..1</td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"http://hl7.org/fhir/R4/datatypes.html#string\">string</a></td><td style=\"vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">Thời điểm sàng lọc và người thực hiện sàng lọc</td></tr>#xD;\n<tr><td colspan=\"5\" class=\"hierarchy\"><br/><a href=\"https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views\" title=\"Legend for this format\"><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3goXBCwdPqAP0wAAAldJREFUOMuNk0tIlFEYhp9z/vE2jHkhxXA0zJCMitrUQlq4lnSltEqCFhFG2MJFhIvIFpkEWaTQqjaWZRkp0g26URZkTpbaaOJkDqk10szoODP//7XIMUe0elcfnPd9zsfLOYplGrpRwZaqTtw3K7PtGem7Q6FoidbGgqHVy/HRb669R+56zx7eRV1L31JGxYbBtjKK93cxeqfyQHbehkZbUkK20goELEuIzEd+dHS+qz/Y8PTSif0FnGkbiwcAjHaU1+QWOptFiyCLp/LnKptpqIuXHx6rbR26kJcBX3yLgBfnd7CxwJmflpP2wUg0HIAoUUpZBmKzELGWcN8nAr6Gpu7tLU/CkwAaoKTWRSQyt89Q8w6J+oVQkKnBoblH7V0PPvUOvDYXfopE/SJmALsxnVm6LbkotrUtNowMeIrVrBcBpaMmdS0j9df7abpSuy7HWehwJdt1lhVwi/J58U5beXGAF6c3UXLycw1wdFklArBn87xdh0ZsZtArghBdAA3+OEDVubG4UEzP6x1FOWneHh2VDAHBAt80IbdXDcesNoCvs3E5AFyNSU5nbrDPZpcUEQQTFZiEVx+51fxMhhyJEAgvlriadIJZZksRuwBYMOPBbO3hePVVqgEJhFeUuFLhIPkRP6BQLIBrmMenujm/3g4zc398awIe90Zb5A1vREALqneMcYgP/xVQWlG+Ncu5vgwwlaUNx+3799rfe96u9K0JSDXcOzOTJg4B6IgmXfsygc7/Bvg9g9E58/cDVmGIBOP/zT8Bz1zqWqpbXIsd0O9hajXfL6u4BaOS6SeWAAAAAElFTkSuQmCC\" alt=\"doco\" style=\"background-color: inherit\"/> Documentation for this format</a></td></tr></table></div>"
  ] ;
  fhir:DomainResource.extension [
     fhir:index -1 ;
     fhir:Extension.url [ fhir:value "http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-legal-basis" ] ;
     fhir:Extension.valueCoding [
       fhir:Coding.system [ fhir:value "http://fhir.hl7.org.vn/core/CodeSystem/vn-legal-document-ref-cs" ] ;
       fhir:Coding.code [ fhir:value "QD-1575-2023" ]
     ]
  ] ;
  fhir:StructureDefinition.url [ fhir:value "http://fhir.hl7.org.vn/core/StructureDefinition/vnPreVaccinationScreeningLm"] ;
  fhir:StructureDefinition.identifier [
     fhir:index -1 ;
     fhir:Identifier.system [ fhir:value "urn:ietf:rfc:3986" ] ;
     fhir:Identifier.value [ fhir:value "urn:oid:2.25.161089673617632664299011809196868855799.42.224" ]
  ] ;
  fhir:StructureDefinition.version [ fhir:value "0.10.0"] ;
  fhir:StructureDefinition.name [ fhir:value "VNPreVaccinationScreeningLM"] ;
  fhir:StructureDefinition.title [ fhir:value "Phép đo bắt buộc của bảng kiểm sàng lọc trước tiêm chủng (QĐ 1575/QĐ-BYT) — Logical Model"] ;
  fhir:StructureDefinition.status [ fhir:value "draft"] ;
  fhir:StructureDefinition.date [ fhir:value "2026-09-22T23:37:51+07:00"^^xsd:dateTime] ;
  fhir:StructureDefinition.publisher [ fhir:value "Omi HealthTech / VN Core FHIR Community Initiative"] ;
  fhir:StructureDefinition.contact [
     fhir:index -1 ;
     fhir:ContactDetail.name [ fhir:value "Omi HealthTech / VN Core FHIR Community Initiative" ] ;
     fhir:ContactDetail.telecom [
       fhir:index -1 ;
       fhir:ContactPoint.system [ fhir:value "url" ] ;
       fhir:ContactPoint.value [ fhir:value "https://hl7.org.vn" ]
     ], [
       fhir:index -1 ;
       fhir:ContactPoint.system [ fhir:value "email" ] ;
       fhir:ContactPoint.value [ fhir:value "info@hl7.org.vn" ]
     ]
  ], [
     fhir:index -1 ;
     fhir:ContactDetail.name [ fhir:value "Omi HealthTech (OmiGroup)" ] ;
     fhir:ContactDetail.telecom [
       fhir:index -1 ;
       fhir:ContactPoint.system [ fhir:value "url" ] ;
       fhir:ContactPoint.value [ fhir:value "https://omihealthtech.vn" ]
     ], [
       fhir:index -1 ;
       fhir:ContactPoint.system [ fhir:value "url" ] ;
       fhir:ContactPoint.value [ fhir:value "https://omigroup.vn" ]
     ], [
       fhir:index -1 ;
       fhir:ContactPoint.system [ fhir:value "email" ] ;
       fhir:ContactPoint.value [ fhir:value "info@hl7.org.vn" ]
     ]
  ] ;
  fhir:StructureDefinition.description [ fhir:value "Logical model đặc tả các phép đo mà Quyết định 1575/QĐ-BYT (ban hành và hiệu lực 27/03/2023) BUỘC phải ghi trị số trên bảng kiểm sàng lọc trước tiêm chủng cho trẻ em — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile cân nặng và profile nhiệt độ cơ thể.\n\nCả bốn mẫu bảng kiểm (Phụ lục I-IV) đều có ô 'Cân nặng: ____' và 'Thân nhiệt: ____ °C' nằm trong phần bắt buộc điền, trước mục I 'Khám sàng lọc'. Nghĩa vụ đo và ghi không suy từ việc mẫu có ô trống — phần IV.1 của hướng dẫn nói thẳng ai làm việc đó: 'Điều dưỡng viên, hộ sinh viên: Ghi các thông tin của trẻ, TRỰC TIẾP CÂN TRẺ, ĐO VÀ GHI KẾT QUẢ NHIỆT ĐỘ của trẻ', và 'Bác sĩ, y sĩ: … trực tiếp đo và ghi kết quả nhiệt độ của trẻ khi không có điều dưỡng viên, hộ sinh viên'. Hai trị số ấy còn là căn cứ của các mục sàng lọc dẫn tới tạm hoãn: ngưỡng thân nhiệt 'Sốt: nhiệt độ ≥ 38°C; Hạ thân nhiệt: nhiệt độ ≤ 35,5°C' (đo tại nách) có ở CẢ BỐN mẫu, còn ngưỡng 'Cân nặng < 2000g' CHỈ có ở hai mẫu dùng ngoài bệnh viện — Phụ lục III và IV không có mục ấy, và hướng dẫn tại bệnh viện còn ghi 'thực hiện tiêm chủng các vắc xin theo lịch với trẻ nhẹ cân (so với tuổi)'. Nghĩa vụ GHI TRỊ SỐ thì không đổi theo nơi tiêm.\n\nHai bản dành cho trẻ dưới 1 tháng (Phụ lục II và IV) ghi cân nặng bằng GAM, hai bản còn lại bằng KILÔGAM — xem chú thích tại `canNang.giaTri` về hệ quả với ràng buộc đơn vị của profile.\n\nModel KHÔNG khai kết luận sàng lọc và loại vắc xin thành trường có nghĩa vụ: xem `ketLuanSangLoc`. / Logical model for the mandatory measurements on the pre-vaccination screening checklist required by Decision 1575/QĐ-BYT."] ;
  fhir:StructureDefinition.jurisdiction [
     fhir:index -1 ;
     fhir:CodeableConcept.coding [
       fhir:index -1 ;
       fhir:Coding.system [ fhir:value "urn:iso:std:iso:3166" ] ;
       fhir:Coding.code [ fhir:value "VN" ] ;
       fhir:Coding.display [ fhir:value "Viet Nam" ]
     ]
  ] ;
  fhir:StructureDefinition.fhirVersion [ fhir:value "4.0.1"] ;
  fhir:StructureDefinition.mapping [
     fhir:index -1 ;
     fhir:StructureDefinition.mapping.identity [ fhir:value "vn-fhir" ] ;
     fhir:StructureDefinition.mapping.uri [ fhir:value "http://fhir.hl7.org.vn/core/mapping/pre-vaccination-screening-fhir" ] ;
     fhir:StructureDefinition.mapping.name [ fhir:value "VN Core FHIR mapping" ] ;
     fhir:StructureDefinition.mapping.comment [ fhir:value "Cân nặng ánh xạ sang VNCoreObservationBodyWeight; thân nhiệt sang VNCoreObservationBodyTemperature." ]
  ] ;
  fhir:StructureDefinition.kind [ fhir:value "logical"] ;
  fhir:StructureDefinition.abstract [ fhir:value "false"^^xsd:boolean] ;
  fhir:StructureDefinition.type [ fhir:value "http://fhir.hl7.org.vn/core/StructureDefinition/vnPreVaccinationScreeningLm"] ;
  fhir:StructureDefinition.baseDefinition [
     fhir:value "http://hl7.org/fhir/StructureDefinition/Base" ;
     fhir:link <http://hl7.org/fhir/StructureDefinition/Base>
  ] ;
  fhir:StructureDefinition.derivation [ fhir:value "specialization"] ;
  fhir:StructureDefinition.snapshot [
     fhir:Element.extension [
       fhir:index -1 ;
       fhir:Extension.url [ fhir:value "http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version" ] ;
       fhir:Extension.valueString [ fhir:value "4.0.1" ]
     ] ;
     fhir:StructureDefinition.snapshot.element [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm" ] ;
       fhir:ElementDefinition.short [ fhir:value "Phép đo bắt buộc của bảng kiểm sàng lọc trước tiêm chủng (QĐ 1575/QĐ-BYT) — Logical Model" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Logical model đặc tả các phép đo mà Quyết định 1575/QĐ-BYT (ban hành và hiệu lực 27/03/2023) BUỘC phải ghi trị số trên bảng kiểm sàng lọc trước tiêm chủng cho trẻ em — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile cân nặng và profile nhiệt độ cơ thể.\n\nCả bốn mẫu bảng kiểm (Phụ lục I-IV) đều có ô 'Cân nặng: ____' và 'Thân nhiệt: ____ °C' nằm trong phần bắt buộc điền, trước mục I 'Khám sàng lọc'. Nghĩa vụ đo và ghi không suy từ việc mẫu có ô trống — phần IV.1 của hướng dẫn nói thẳng ai làm việc đó: 'Điều dưỡng viên, hộ sinh viên: Ghi các thông tin của trẻ, TRỰC TIẾP CÂN TRẺ, ĐO VÀ GHI KẾT QUẢ NHIỆT ĐỘ của trẻ', và 'Bác sĩ, y sĩ: … trực tiếp đo và ghi kết quả nhiệt độ của trẻ khi không có điều dưỡng viên, hộ sinh viên'. Hai trị số ấy còn là căn cứ của các mục sàng lọc dẫn tới tạm hoãn: ngưỡng thân nhiệt 'Sốt: nhiệt độ ≥ 38°C; Hạ thân nhiệt: nhiệt độ ≤ 35,5°C' (đo tại nách) có ở CẢ BỐN mẫu, còn ngưỡng 'Cân nặng < 2000g' CHỈ có ở hai mẫu dùng ngoài bệnh viện — Phụ lục III và IV không có mục ấy, và hướng dẫn tại bệnh viện còn ghi 'thực hiện tiêm chủng các vắc xin theo lịch với trẻ nhẹ cân (so với tuổi)'. Nghĩa vụ GHI TRỊ SỐ thì không đổi theo nơi tiêm.\n\nHai bản dành cho trẻ dưới 1 tháng (Phụ lục II và IV) ghi cân nặng bằng GAM, hai bản còn lại bằng KILÔGAM — xem chú thích tại `canNang.giaTri` về hệ quả với ràng buộc đơn vị của profile.\n\nModel KHÔNG khai kết luận sàng lọc và loại vắc xin thành trường có nghĩa vụ: xem `ketLuanSangLoc`. / Logical model for the mandatory measurements on the pre-vaccination screening checklist required by Decision 1575/QĐ-BYT." ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "*" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Base" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "*" ]
       ] ;
       fhir:ElementDefinition.isModifier [ fhir:value "false"^^xsd:boolean ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.canNang" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.canNang" ] ;
       fhir:ElementDefinition.short [ fhir:value "Cân nặng đo tại buổi sàng lọc" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Cân nặng đo tại buổi sàng lọc" ] ;
       fhir:ElementDefinition.comment [ fhir:value "Ô 'Cân nặng' đứng cùng dòng với 'Thân nhiệt' trong phần hành chính của cả bốn mẫu, tức là phải điền cho MỌI trẻ đến tiêm, không phụ thuộc kết quả các mục sàng lọc. Ở cơ sở NGOÀI bệnh viện, trị số này còn quyết định trực tiếp: mục 11 của bản trẻ từ 1 tháng và mục 3 của bản trẻ dưới 1 tháng lấy ngưỡng 2000 g làm mốc tạm hoãn, và phần 3.2 điểm b ghi 'Trẻ có cân nặng dưới 2000g' vào danh sách phải chuyển khám sàng lọc tại bệnh viện. Sửa 07/09/2026 sau phản biện Codex: hai mẫu dùng TẠI bệnh viện (Phụ lục III, IV) KHÔNG có mục ngưỡng ấy — nghĩa vụ ghi trị số vẫn còn ở cả bốn, nhưng hệ quả của trị số thì khác nhau theo nơi tiêm." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "vnPreVaccinationScreeningLm.canNang" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "BackboneElement" ]
       ] ;
       fhir:ElementDefinition.constraint [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() or (children().count() > id.count())" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Element>
         ]
       ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "vn-fhir" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "VNCoreObservationBodyWeight" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.canNang.id" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.canNang.id" ] ;
       fhir:ElementDefinition.representation [
         fhir:value "xmlAttr" ;
         fhir:index -1
       ] ;
       fhir:ElementDefinition.short [ fhir:value "Unique id for inter-element referencing" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.id" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:Element.extension [
           fhir:index -1 ;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type" ] ;
           fhir:Extension.valueUrl [ fhir:value "string" ]
         ] ;
         fhir:ElementDefinition.type.code [ fhir:value "http://hl7.org/fhirpath/System.String" ]
       ] ;
       fhir:ElementDefinition.isModifier [ fhir:value "false"^^xsd:boolean ] ;
       fhir:ElementDefinition.isSummary [ fhir:value "false"^^xsd:boolean ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.canNang.extension" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.canNang.extension" ] ;
       fhir:ElementDefinition.slicing [
         fhir:ElementDefinition.slicing.discriminator [
           fhir:index -1 ;
           fhir:ElementDefinition.slicing.discriminator.type [ fhir:value "value" ] ;
           fhir:ElementDefinition.slicing.discriminator.path [ fhir:value "url" ]
         ] ;
         fhir:ElementDefinition.slicing.description [ fhir:value "Extensions are always sliced by (at least) url" ] ;
         fhir:ElementDefinition.slicing.rules [ fhir:value "open" ]
       ] ;
       fhir:ElementDefinition.short [ fhir:value "Additional content defined by implementations" ] ;
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension." ] ;
       fhir:ElementDefinition.comment [ fhir:value "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." ] ;
       fhir:ElementDefinition.alias [
         fhir:value "extensions" ;
         fhir:index -1
       ], [
         fhir:value "user content" ;
         fhir:index -1
       ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "*" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.extension" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "*" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]
       ] ;
       fhir:ElementDefinition.constraint [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() or (children().count() > id.count())" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Element>
         ]
       ], [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ext-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "Must have either extensions or value[x], not both" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "extension.exists() != value.exists()" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Extension" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Extension>
         ]
       ] ;
       fhir:ElementDefinition.isModifier [ fhir:value "false"^^xsd:boolean ] ;
       fhir:ElementDefinition.isSummary [ fhir:value "false"^^xsd:boolean ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.canNang.modifierExtension" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.canNang.modifierExtension" ] ;
       fhir:ElementDefinition.short [ fhir:value "Extensions that cannot be ignored even if unrecognized" ] ;
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself)." ] ;
       fhir:ElementDefinition.comment [ fhir:value "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." ] ;
       fhir:ElementDefinition.requirements [ fhir:value "Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored.  This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension)." ] ;
       fhir:ElementDefinition.alias [
         fhir:value "extensions" ;
         fhir:index -1
       ], [
         fhir:value "user content" ;
         fhir:index -1
       ], [
         fhir:value "modifiers" ;
         fhir:index -1
       ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "*" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "BackboneElement.modifierExtension" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "*" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]
       ] ;
       fhir:ElementDefinition.constraint [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() or (children().count() > id.count())" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Element>
         ]
       ], [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ext-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "Must have either extensions or value[x], not both" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "extension.exists() != value.exists()" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Extension" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Extension>
         ]
       ] ;
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ] ;
       fhir:ElementDefinition.isModifierReason [ fhir:value "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them" ] ;
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.canNang.giaTri" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.canNang.giaTri" ] ;
       fhir:ElementDefinition.short [ fhir:value "Trị số cân nặng" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Trị số cân nặng" ] ;
       fhir:ElementDefinition.comment [ fhir:value "HAI ĐƠN VỊ TRONG CÙNG MỘT VĂN BẢN: Phụ lục I và III (trẻ từ 1 tháng) in sẵn 'kg' sau ô trống, còn Phụ lục II và IV (trẻ dưới 1 tháng) in 'g' — hợp lý vì cân nặng sơ sinh thường ghi bằng gam và chính ngưỡng của văn bản là '2000 g'. VNCoreObservationBodyWeight ép `valueQuantity.code = #kg` và `unit = \"kg\"`, nên hệ thống ghi bảng kiểm sơ sinh phải QUY ĐỔI sang kilôgam trước khi tạo Observation (2000 g thành 2 kg). Đây là ràng buộc có chủ ý của profile, không phải thiếu sót: cho phép cả hai đơn vị sẽ khiến hai bản ghi cùng một cân nặng không so sánh trực tiếp được." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "vnPreVaccinationScreeningLm.canNang.giaTri" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "decimal" ]
       ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "vn-fhir" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "VNCoreObservationBodyWeight.value[x]" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet" ] ;
       fhir:ElementDefinition.short [ fhir:value "Thân nhiệt đo tại buổi sàng lọc" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Thân nhiệt đo tại buổi sàng lọc" ] ;
       fhir:ElementDefinition.comment [ fhir:value "Ô 'Thân nhiệt' in sẵn dấu phẩy thập phân và ký hiệu °C trên cả bốn mẫu. Sửa 07/09/2026 sau phản biện Codex: bản đầu đọc dấu phẩy ấy thành 'mẫu phiếu ĐÒI độ chính xác tới một chữ số thập phân' — đó là suy diễn từ cách in ô trống, văn bản không đặt yêu cầu nào về độ chính xác của phép đo hay của thiết bị. Bỏ khẳng định ấy; giữ lại quan sát rằng ô có phần thập phân." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "BackboneElement" ]
       ] ;
       fhir:ElementDefinition.constraint [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() or (children().count() > id.count())" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Element>
         ]
       ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "vn-fhir" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "VNCoreObservationBodyTemperature" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.id" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.id" ] ;
       fhir:ElementDefinition.representation [
         fhir:value "xmlAttr" ;
         fhir:index -1
       ] ;
       fhir:ElementDefinition.short [ fhir:value "Unique id for inter-element referencing" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.id" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:Element.extension [
           fhir:index -1 ;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type" ] ;
           fhir:Extension.valueUrl [ fhir:value "string" ]
         ] ;
         fhir:ElementDefinition.type.code [ fhir:value "http://hl7.org/fhirpath/System.String" ]
       ] ;
       fhir:ElementDefinition.isModifier [ fhir:value "false"^^xsd:boolean ] ;
       fhir:ElementDefinition.isSummary [ fhir:value "false"^^xsd:boolean ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.extension" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.extension" ] ;
       fhir:ElementDefinition.slicing [
         fhir:ElementDefinition.slicing.discriminator [
           fhir:index -1 ;
           fhir:ElementDefinition.slicing.discriminator.type [ fhir:value "value" ] ;
           fhir:ElementDefinition.slicing.discriminator.path [ fhir:value "url" ]
         ] ;
         fhir:ElementDefinition.slicing.description [ fhir:value "Extensions are always sliced by (at least) url" ] ;
         fhir:ElementDefinition.slicing.rules [ fhir:value "open" ]
       ] ;
       fhir:ElementDefinition.short [ fhir:value "Additional content defined by implementations" ] ;
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension." ] ;
       fhir:ElementDefinition.comment [ fhir:value "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." ] ;
       fhir:ElementDefinition.alias [
         fhir:value "extensions" ;
         fhir:index -1
       ], [
         fhir:value "user content" ;
         fhir:index -1
       ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "*" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.extension" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "*" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]
       ] ;
       fhir:ElementDefinition.constraint [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() or (children().count() > id.count())" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Element>
         ]
       ], [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ext-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "Must have either extensions or value[x], not both" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "extension.exists() != value.exists()" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Extension" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Extension>
         ]
       ] ;
       fhir:ElementDefinition.isModifier [ fhir:value "false"^^xsd:boolean ] ;
       fhir:ElementDefinition.isSummary [ fhir:value "false"^^xsd:boolean ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.modifierExtension" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.modifierExtension" ] ;
       fhir:ElementDefinition.short [ fhir:value "Extensions that cannot be ignored even if unrecognized" ] ;
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself)." ] ;
       fhir:ElementDefinition.comment [ fhir:value "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." ] ;
       fhir:ElementDefinition.requirements [ fhir:value "Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored.  This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension)." ] ;
       fhir:ElementDefinition.alias [
         fhir:value "extensions" ;
         fhir:index -1
       ], [
         fhir:value "user content" ;
         fhir:index -1
       ], [
         fhir:value "modifiers" ;
         fhir:index -1
       ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "*" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "BackboneElement.modifierExtension" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "*" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]
       ] ;
       fhir:ElementDefinition.constraint [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() or (children().count() > id.count())" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Element>
         ]
       ], [
         fhir:index -1 ;
         fhir:ElementDefinition.constraint.key [ fhir:value "ext-1" ] ;
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ] ;
         fhir:ElementDefinition.constraint.human [ fhir:value "Must have either extensions or value[x], not both" ] ;
         fhir:ElementDefinition.constraint.expression [ fhir:value "extension.exists() != value.exists()" ] ;
         fhir:ElementDefinition.constraint.xpath [ fhir:value "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])" ] ;
         fhir:ElementDefinition.constraint.source [
           fhir:value "http://hl7.org/fhir/StructureDefinition/Extension" ;
           fhir:link <http://hl7.org/fhir/StructureDefinition/Extension>
         ]
       ] ;
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ] ;
       fhir:ElementDefinition.isModifierReason [ fhir:value "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them" ] ;
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.giaTri" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.giaTri" ] ;
       fhir:ElementDefinition.short [ fhir:value "Trị số thân nhiệt tính bằng độ C" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Trị số thân nhiệt tính bằng độ C" ] ;
       fhir:ElementDefinition.comment [ fhir:value "Ngưỡng nguyên văn của mục sàng lọc: 'Sốt: nhiệt độ ≥ 38°C; Hạ thân nhiệt: nhiệt độ ≤ 35,5°C'. Cả hai đầu đều là căn cứ tạm hoãn, nên trị số phải ghi cả khi bình thường — chỉ ghi khi bất thường thì không phân biệt được 'đo mà bình thường' với 'không đo'. Đơn vị của profile là °C theo UCUM (#Cel), khớp đúng đơn vị in trên mẫu. VỊ TRÍ ĐO (bổ sung 07/09/2026 sau phản biện Codex): phần thân hướng dẫn nói rõ ngưỡng ấy tính theo nhiệt độ 'đo tại NÁCH'. VNCoreObservationBodyTemperature dùng mã LOINC 8310-5 (Body temperature) không gắn vị trí đo, nên một trị số 37,8 đo ở hậu môn và một trị số 37,8 đo ở nách nằm lẫn nhau trong cùng một Observation — hệ thống áp ngưỡng của quyết định này phải tự bảo đảm vị trí đo, hoặc ghi vị trí ở `bodySite`. Đây là giới hạn của đích ánh xạ, ghi lại để bên triển khai không áp ngưỡng cho mọi phương pháp đo." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.giaTri" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "decimal" ]
       ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "vn-fhir" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "VNCoreObservationBodyTemperature.value[x]" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.nhipTimNhipTho" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.nhipTimNhipTho" ] ;
       fhir:ElementDefinition.short [ fhir:value "Đánh giá tim và nhịp thở trên bảng kiểm" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Đánh giá tim và nhịp thở trên bảng kiểm" ] ;
       fhir:ElementDefinition.comment [ fhir:value "KHÔNG ánh xạ sang VNCoreObservationHeartRate hay VNCoreObservationRespiratoryRate, dù thoạt nhìn có vẻ khớp. Lý do: bảng kiểm hỏi 'Nghe tim bất thường: Không □ Có □' và 'Nhịp thở, nghe phổi bất thường: Không □ Có □' — hai mục ấy đòi một PHÁN ĐỊNH, không đòi trị số nhịp/phút. Phụ lục V (tần số thở bình thường theo nhóm tuổi) và Phụ lục VI (nhịp tim bình thường theo tuổi) là bảng THAM CHIẾU giúp người khám đưa ra phán định ấy, không phải mẫu ghi chép. Vì vậy QĐ 1575/QĐ-BYT không đủ để đóng nghĩa vụ trường cho hai profile nhịp tim và nhịp thở; chúng vẫn thuộc diện hoãn DEF-0111-PROFILE-NO-DOC-SOURCE cho tới khi có văn bản đặt nghĩa vụ ghi trị số." ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "vnPreVaccinationScreeningLm.nhipTimNhipTho" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.ketLuanSangLoc" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.ketLuanSangLoc" ] ;
       fhir:ElementDefinition.short [ fhir:value "Kết luận sàng lọc" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Kết luận sàng lọc" ] ;
       fhir:ElementDefinition.comment [ fhir:value "NÂNG 0..1 LÊN 1..1 ngày 07/09/2026 sau phản biện Codex — bản đầu lẫn hai câu hỏi khác nhau: 'văn bản có buộc ghi kết luận không' (CÓ) và 'kết luận ấy có ánh xạ được sang Immunization không' (CHƯA). Phần c của hướng dẫn liệt kê các bước 'thực hiện và điền theo bảng kiểm' kết thúc bằng bước Kết luận, còn phần d nói 'TOÀN BỘ nội dung khám sàng lọc được ghi theo bảng kiểm… lưu tại các điểm tiêm chủng và trên Hệ thống Quản lý thông tin tiêm chủng Quốc gia. Lưu bảng kiểm 15 ngày'. Ba kết quả loại trừ nhau không làm VIỆC CÓ KẾT LUẬN thành tuỳ chọn. Element này CỐ Ý không mang ánh xạ `vn-fhir`: giữ nghĩa vụ nguồn đúng mức, và ghi nợ phần đích. Mục II của bảng kiểm có ba ô loại trừ nhau — 'Đủ điều kiện tiêm chủng ngay', 'Chống chỉ định tiêm chủng', 'Tạm hoãn tiêm chủng' — kèm dòng 'Loại vắc xin tiêm chủng lần này'. KHÔNG khai thành nghĩa vụ 1..1 trên VNCoreImmunization vì ba nhánh dẫn tới ba hình thái dữ liệu khác nhau: chỉ nhánh đủ điều kiện mới sinh ra một mũi tiêm có `vaccineCode`, hai nhánh kia sinh ra một Immunization với `status = not-done` kèm `statusReason`, hoặc không sinh resource nào nếu cơ sở chỉ lưu bảng kiểm. Riêng dòng 'Loại vắc xin tiêm chủng lần này' thì đúng là CÓ ĐIỀU KIỆN — nó chỉ phát sinh ở nhánh đủ điều kiện tiêm — nên tách thành `loaiVacXin` 0..1 dưới đây thay vì gộp chung với kết luận. Khai 1..1 cho một nghĩa vụ có điều kiện là đúng lớp lỗi đã phải sửa hai lần trong chu kỳ này (`cachSacThuoc` của TT 55/2025/TT-BYT và `khoanTienNguoiBenh` của QĐ 697/QĐ-BYT)." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "vnPreVaccinationScreeningLm.ketLuanSangLoc" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.loaiVacXin" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.loaiVacXin" ] ;
       fhir:ElementDefinition.short [ fhir:value "Loại vắc xin tiêm chủng lần này" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Loại vắc xin tiêm chủng lần này" ] ;
       fhir:ElementDefinition.comment [ fhir:value "Tách khỏi `ketLuanSangLoc` ngày 07/09/2026 sau phản biện Codex: dòng này nằm NGAY DƯỚI ô 'Đủ điều kiện tiêm chủng ngay' trong mục II và chỉ được điền ở nhánh ấy — hai nhánh chống chỉ định và tạm hoãn không sinh ra mũi tiêm nào. Đích tự nhiên là `VNCoreImmunization.vaccineCode` (1..1 MS), nhưng chỉ khi đã có một Immunization; ánh xạ đó thuộc về bản ghi mũi tiêm, không thuộc bảng kiểm." ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "vnPreVaccinationScreeningLm.loaiVacXin" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.thoiDiemVaNguoiSangLoc" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.thoiDiemVaNguoiSangLoc" ] ;
       fhir:ElementDefinition.short [ fhir:value "Thời điểm sàng lọc và người thực hiện sàng lọc" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Thời điểm sàng lọc và người thực hiện sàng lọc" ] ;
       fhir:ElementDefinition.comment [ fhir:value "NÂNG 0..1 LÊN 1..1 ngày 07/09/2026 cùng lý do với `ketLuanSangLoc`: nghĩa vụ nguồn là tuyệt đối, chỉ phần đích còn nợ. Cuối cả bốn mẫu có ô '….giờ ….phút, ngày….tháng….năm…..' và dòng 'Người thực hiện sàng lọc (ký, ghi rõ họ và tên)' — nghĩa vụ tuyệt đối của biểu mẫu. Chưa ánh xạ được vì bảng kiểm sàng lọc trước tiêm chủng CHƯA CÓ chỗ chứa trong IG: VNCoreQuestionnaireResponse hiện là profile chuyên phiếu khám sức khoẻ theo QĐ 2062/QĐ-BYT Phụ lục 01 (xem Title và Description của nó), không phải nơi chứa mọi biểu mẫu. Trỏ vào đó sẽ là ánh xạ sai phạm vi. Khoảng trống này là việc thật cho chu kỳ sau: hoặc mở rộng phạm vi VNCoreQuestionnaireResponse, hoặc dựng profile riêng cho bảng kiểm tiêm chủng." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "vnPreVaccinationScreeningLm.thoiDiemVaNguoiSangLoc" ] ;
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
         fhir:ElementDefinition.base.max [ fhir:value "1" ]
       ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]
       ]
     ]
  ] ;
  fhir:StructureDefinition.differential [
     fhir:StructureDefinition.differential.element [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm" ] ;
       fhir:ElementDefinition.short [ fhir:value "Phép đo bắt buộc của bảng kiểm sàng lọc trước tiêm chủng (QĐ 1575/QĐ-BYT) — Logical Model" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Logical model đặc tả các phép đo mà Quyết định 1575/QĐ-BYT (ban hành và hiệu lực 27/03/2023) BUỘC phải ghi trị số trên bảng kiểm sàng lọc trước tiêm chủng cho trẻ em — làm bảng chỉ tiêu văn bản để đối chiếu cardinality của profile cân nặng và profile nhiệt độ cơ thể.\n\nCả bốn mẫu bảng kiểm (Phụ lục I-IV) đều có ô 'Cân nặng: ____' và 'Thân nhiệt: ____ °C' nằm trong phần bắt buộc điền, trước mục I 'Khám sàng lọc'. Nghĩa vụ đo và ghi không suy từ việc mẫu có ô trống — phần IV.1 của hướng dẫn nói thẳng ai làm việc đó: 'Điều dưỡng viên, hộ sinh viên: Ghi các thông tin của trẻ, TRỰC TIẾP CÂN TRẺ, ĐO VÀ GHI KẾT QUẢ NHIỆT ĐỘ của trẻ', và 'Bác sĩ, y sĩ: … trực tiếp đo và ghi kết quả nhiệt độ của trẻ khi không có điều dưỡng viên, hộ sinh viên'. Hai trị số ấy còn là căn cứ của các mục sàng lọc dẫn tới tạm hoãn: ngưỡng thân nhiệt 'Sốt: nhiệt độ ≥ 38°C; Hạ thân nhiệt: nhiệt độ ≤ 35,5°C' (đo tại nách) có ở CẢ BỐN mẫu, còn ngưỡng 'Cân nặng < 2000g' CHỈ có ở hai mẫu dùng ngoài bệnh viện — Phụ lục III và IV không có mục ấy, và hướng dẫn tại bệnh viện còn ghi 'thực hiện tiêm chủng các vắc xin theo lịch với trẻ nhẹ cân (so với tuổi)'. Nghĩa vụ GHI TRỊ SỐ thì không đổi theo nơi tiêm.\n\nHai bản dành cho trẻ dưới 1 tháng (Phụ lục II và IV) ghi cân nặng bằng GAM, hai bản còn lại bằng KILÔGAM — xem chú thích tại `canNang.giaTri` về hệ quả với ràng buộc đơn vị của profile.\n\nModel KHÔNG khai kết luận sàng lọc và loại vắc xin thành trường có nghĩa vụ: xem `ketLuanSangLoc`. / Logical model for the mandatory measurements on the pre-vaccination screening checklist required by Decision 1575/QĐ-BYT." ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.canNang" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.canNang" ] ;
       fhir:ElementDefinition.short [ fhir:value "Cân nặng đo tại buổi sàng lọc" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Cân nặng đo tại buổi sàng lọc" ] ;
       fhir:ElementDefinition.comment [ fhir:value "Ô 'Cân nặng' đứng cùng dòng với 'Thân nhiệt' trong phần hành chính của cả bốn mẫu, tức là phải điền cho MỌI trẻ đến tiêm, không phụ thuộc kết quả các mục sàng lọc. Ở cơ sở NGOÀI bệnh viện, trị số này còn quyết định trực tiếp: mục 11 của bản trẻ từ 1 tháng và mục 3 của bản trẻ dưới 1 tháng lấy ngưỡng 2000 g làm mốc tạm hoãn, và phần 3.2 điểm b ghi 'Trẻ có cân nặng dưới 2000g' vào danh sách phải chuyển khám sàng lọc tại bệnh viện. Sửa 07/09/2026 sau phản biện Codex: hai mẫu dùng TẠI bệnh viện (Phụ lục III, IV) KHÔNG có mục ngưỡng ấy — nghĩa vụ ghi trị số vẫn còn ở cả bốn, nhưng hệ quả của trị số thì khác nhau theo nơi tiêm." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "BackboneElement" ]
       ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "vn-fhir" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "VNCoreObservationBodyWeight" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.canNang.giaTri" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.canNang.giaTri" ] ;
       fhir:ElementDefinition.short [ fhir:value "Trị số cân nặng" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Trị số cân nặng" ] ;
       fhir:ElementDefinition.comment [ fhir:value "HAI ĐƠN VỊ TRONG CÙNG MỘT VĂN BẢN: Phụ lục I và III (trẻ từ 1 tháng) in sẵn 'kg' sau ô trống, còn Phụ lục II và IV (trẻ dưới 1 tháng) in 'g' — hợp lý vì cân nặng sơ sinh thường ghi bằng gam và chính ngưỡng của văn bản là '2000 g'. VNCoreObservationBodyWeight ép `valueQuantity.code = #kg` và `unit = \"kg\"`, nên hệ thống ghi bảng kiểm sơ sinh phải QUY ĐỔI sang kilôgam trước khi tạo Observation (2000 g thành 2 kg). Đây là ràng buộc có chủ ý của profile, không phải thiếu sót: cho phép cả hai đơn vị sẽ khiến hai bản ghi cùng một cân nặng không so sánh trực tiếp được." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "decimal" ]
       ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "vn-fhir" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "VNCoreObservationBodyWeight.value[x]" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet" ] ;
       fhir:ElementDefinition.short [ fhir:value "Thân nhiệt đo tại buổi sàng lọc" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Thân nhiệt đo tại buổi sàng lọc" ] ;
       fhir:ElementDefinition.comment [ fhir:value "Ô 'Thân nhiệt' in sẵn dấu phẩy thập phân và ký hiệu °C trên cả bốn mẫu. Sửa 07/09/2026 sau phản biện Codex: bản đầu đọc dấu phẩy ấy thành 'mẫu phiếu ĐÒI độ chính xác tới một chữ số thập phân' — đó là suy diễn từ cách in ô trống, văn bản không đặt yêu cầu nào về độ chính xác của phép đo hay của thiết bị. Bỏ khẳng định ấy; giữ lại quan sát rằng ô có phần thập phân." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "BackboneElement" ]
       ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "vn-fhir" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "VNCoreObservationBodyTemperature" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.giaTri" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.thanNhiet.giaTri" ] ;
       fhir:ElementDefinition.short [ fhir:value "Trị số thân nhiệt tính bằng độ C" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Trị số thân nhiệt tính bằng độ C" ] ;
       fhir:ElementDefinition.comment [ fhir:value "Ngưỡng nguyên văn của mục sàng lọc: 'Sốt: nhiệt độ ≥ 38°C; Hạ thân nhiệt: nhiệt độ ≤ 35,5°C'. Cả hai đầu đều là căn cứ tạm hoãn, nên trị số phải ghi cả khi bình thường — chỉ ghi khi bất thường thì không phân biệt được 'đo mà bình thường' với 'không đo'. Đơn vị của profile là °C theo UCUM (#Cel), khớp đúng đơn vị in trên mẫu. VỊ TRÍ ĐO (bổ sung 07/09/2026 sau phản biện Codex): phần thân hướng dẫn nói rõ ngưỡng ấy tính theo nhiệt độ 'đo tại NÁCH'. VNCoreObservationBodyTemperature dùng mã LOINC 8310-5 (Body temperature) không gắn vị trí đo, nên một trị số 37,8 đo ở hậu môn và một trị số 37,8 đo ở nách nằm lẫn nhau trong cùng một Observation — hệ thống áp ngưỡng của quyết định này phải tự bảo đảm vị trí đo, hoặc ghi vị trí ở `bodySite`. Đây là giới hạn của đích ánh xạ, ghi lại để bên triển khai không áp ngưỡng cho mọi phương pháp đo." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "decimal" ]
       ] ;
       fhir:ElementDefinition.mapping [
         fhir:index -1 ;
         fhir:ElementDefinition.mapping.identity [ fhir:value "vn-fhir" ] ;
         fhir:ElementDefinition.mapping.map [ fhir:value "VNCoreObservationBodyTemperature.value[x]" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.nhipTimNhipTho" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.nhipTimNhipTho" ] ;
       fhir:ElementDefinition.short [ fhir:value "Đánh giá tim và nhịp thở trên bảng kiểm" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Đánh giá tim và nhịp thở trên bảng kiểm" ] ;
       fhir:ElementDefinition.comment [ fhir:value "KHÔNG ánh xạ sang VNCoreObservationHeartRate hay VNCoreObservationRespiratoryRate, dù thoạt nhìn có vẻ khớp. Lý do: bảng kiểm hỏi 'Nghe tim bất thường: Không □ Có □' và 'Nhịp thở, nghe phổi bất thường: Không □ Có □' — hai mục ấy đòi một PHÁN ĐỊNH, không đòi trị số nhịp/phút. Phụ lục V (tần số thở bình thường theo nhóm tuổi) và Phụ lục VI (nhịp tim bình thường theo tuổi) là bảng THAM CHIẾU giúp người khám đưa ra phán định ấy, không phải mẫu ghi chép. Vì vậy QĐ 1575/QĐ-BYT không đủ để đóng nghĩa vụ trường cho hai profile nhịp tim và nhịp thở; chúng vẫn thuộc diện hoãn DEF-0111-PROFILE-NO-DOC-SOURCE cho tới khi có văn bản đặt nghĩa vụ ghi trị số." ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.ketLuanSangLoc" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.ketLuanSangLoc" ] ;
       fhir:ElementDefinition.short [ fhir:value "Kết luận sàng lọc" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Kết luận sàng lọc" ] ;
       fhir:ElementDefinition.comment [ fhir:value "NÂNG 0..1 LÊN 1..1 ngày 07/09/2026 sau phản biện Codex — bản đầu lẫn hai câu hỏi khác nhau: 'văn bản có buộc ghi kết luận không' (CÓ) và 'kết luận ấy có ánh xạ được sang Immunization không' (CHƯA). Phần c của hướng dẫn liệt kê các bước 'thực hiện và điền theo bảng kiểm' kết thúc bằng bước Kết luận, còn phần d nói 'TOÀN BỘ nội dung khám sàng lọc được ghi theo bảng kiểm… lưu tại các điểm tiêm chủng và trên Hệ thống Quản lý thông tin tiêm chủng Quốc gia. Lưu bảng kiểm 15 ngày'. Ba kết quả loại trừ nhau không làm VIỆC CÓ KẾT LUẬN thành tuỳ chọn. Element này CỐ Ý không mang ánh xạ `vn-fhir`: giữ nghĩa vụ nguồn đúng mức, và ghi nợ phần đích. Mục II của bảng kiểm có ba ô loại trừ nhau — 'Đủ điều kiện tiêm chủng ngay', 'Chống chỉ định tiêm chủng', 'Tạm hoãn tiêm chủng' — kèm dòng 'Loại vắc xin tiêm chủng lần này'. KHÔNG khai thành nghĩa vụ 1..1 trên VNCoreImmunization vì ba nhánh dẫn tới ba hình thái dữ liệu khác nhau: chỉ nhánh đủ điều kiện mới sinh ra một mũi tiêm có `vaccineCode`, hai nhánh kia sinh ra một Immunization với `status = not-done` kèm `statusReason`, hoặc không sinh resource nào nếu cơ sở chỉ lưu bảng kiểm. Riêng dòng 'Loại vắc xin tiêm chủng lần này' thì đúng là CÓ ĐIỀU KIỆN — nó chỉ phát sinh ở nhánh đủ điều kiện tiêm — nên tách thành `loaiVacXin` 0..1 dưới đây thay vì gộp chung với kết luận. Khai 1..1 cho một nghĩa vụ có điều kiện là đúng lớp lỗi đã phải sửa hai lần trong chu kỳ này (`cachSacThuoc` của TT 55/2025/TT-BYT và `khoanTienNguoiBenh` của QĐ 697/QĐ-BYT)." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.loaiVacXin" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.loaiVacXin" ] ;
       fhir:ElementDefinition.short [ fhir:value "Loại vắc xin tiêm chủng lần này" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Loại vắc xin tiêm chủng lần này" ] ;
       fhir:ElementDefinition.comment [ fhir:value "Tách khỏi `ketLuanSangLoc` ngày 07/09/2026 sau phản biện Codex: dòng này nằm NGAY DƯỚI ô 'Đủ điều kiện tiêm chủng ngay' trong mục II và chỉ được điền ở nhánh ấy — hai nhánh chống chỉ định và tạm hoãn không sinh ra mũi tiêm nào. Đích tự nhiên là `VNCoreImmunization.vaccineCode` (1..1 MS), nhưng chỉ khi đã có một Immunization; ánh xạ đó thuộc về bản ghi mũi tiêm, không thuộc bảng kiểm." ] ;
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]
       ]
     ], [
       fhir:index -1 ;
       fhir:Element.id [ fhir:value "vnPreVaccinationScreeningLm.thoiDiemVaNguoiSangLoc" ] ;
       fhir:ElementDefinition.path [ fhir:value "vnPreVaccinationScreeningLm.thoiDiemVaNguoiSangLoc" ] ;
       fhir:ElementDefinition.short [ fhir:value "Thời điểm sàng lọc và người thực hiện sàng lọc" ] ;
       fhir:ElementDefinition.definition [ fhir:value "Thời điểm sàng lọc và người thực hiện sàng lọc" ] ;
       fhir:ElementDefinition.comment [ fhir:value "NÂNG 0..1 LÊN 1..1 ngày 07/09/2026 cùng lý do với `ketLuanSangLoc`: nghĩa vụ nguồn là tuyệt đối, chỉ phần đích còn nợ. Cuối cả bốn mẫu có ô '….giờ ….phút, ngày….tháng….năm…..' và dòng 'Người thực hiện sàng lọc (ký, ghi rõ họ và tên)' — nghĩa vụ tuyệt đối của biểu mẫu. Chưa ánh xạ được vì bảng kiểm sàng lọc trước tiêm chủng CHƯA CÓ chỗ chứa trong IG: VNCoreQuestionnaireResponse hiện là profile chuyên phiếu khám sức khoẻ theo QĐ 2062/QĐ-BYT Phụ lục 01 (xem Title và Description của nó), không phải nơi chứa mọi biểu mẫu. Trỏ vào đó sẽ là ánh xạ sai phạm vi. Khoảng trống này là việc thật cho chu kỳ sau: hoặc mở rộng phạm vi VNCoreQuestionnaireResponse, hoặc dựng profile riêng cho bảng kiểm tiêm chủng." ] ;
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ] ;
       fhir:ElementDefinition.max [ fhir:value "1" ] ;
       fhir:ElementDefinition.type [
         fhir:index -1 ;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]
       ]
     ]
  ] .

# - ontology header ------------------------------------------------------------

<http://fhir.hl7.org.vn/core/StructureDefinition/vnPreVaccinationScreeningLm.ttl> a owl:Ontology ;
  owl:imports fhir:fhir.ttl .

# -------------------------------------------------------------------------------------

