Uzbekistan Digital Health Platform
0.10.0 - draft
This page is part of the Uzbekistan Digital Health Platform (v0.10.0: Releases Draft) based on FHIR (HL7® FHIR® Standard) v5.0.0. This is the current published version. For a full list of available versions, see the Directory of published versions
| Draft as of 2026-08-13 |
{
"resourceType" : "OperationDefinition",
"id" : "patient-populate",
"language" : "en",
"text" : {
"status" : "generated",
"div" : "<div xml:lang=\"en\" lang=\"en\"><hr/><p><b>English</b></p><hr/><p class=\"res-header-id\"><b>Generated Narrative: OperationDefinition patient-populate</b></p><a name=\"patient-populate\"> </a><a name=\"hcpatient-populate\"> </a><p>URL: [base]/Patient/$populate</p><h3>Parameters</h3><table class=\"grid\"><tr><td><b>Use</b></td><td><b>Name</b></td><td><b>Scope</b></td><td><b>Cardinality</b></td><td><b>Type</b></td><td><b>Binding</b></td><td><b>Documentation</b></td></tr><tr><td>IN</td><td>system</td><td/><td>1..1</td><td><a href=\"http://hl7.org/fhir/R5/datatypes.html#uri\">uri</a></td><td/><td><div><p>Identification system of the document (Identifier.system). Permitted values: <code>http://terminology.hl7.org/CodeSystem/v2-0203</code>, <code>https://dhp.uz/fhir/core/sid/pid/uz/ni</code> (PINFL), <code>https://dhp.uz/fhir/core/sid/pid/uz/ppn/local</code> (biometric passport / ID card), <code>https://dhp.uz/fhir/core/sid/pid/uz/ppn/intl</code> (international passport), <code>https://dhp.uz/fhir/core/sid/pid/uz/bct</code> (birth certificate). Passed as valueUri.</p>\n</div></td></tr><tr><td>IN</td><td>code</td><td/><td>1..1</td><td><a href=\"http://hl7.org/fhir/R5/datatypes.html#code\">code</a></td><td/><td><div><p>Document type: <code>NI</code> - PINFL, <code>PPN</code> - passport or ID card, <code>BCT</code> - birth certificate. Passed as valueCode.</p>\n</div></td></tr><tr><td>IN</td><td>value</td><td/><td>1..1</td><td><a href=\"http://hl7.org/fhir/R5/datatypes.html#string\">string</a></td><td/><td><div><p>Document value: the PINFL for <code>NI</code>, the passport series and number for <code>PPN</code>, the birth certificate series and number for <code>BCT</code>. Passed as valueString.</p>\n</div></td></tr><tr><td>IN</td><td>birthDate</td><td/><td>0..1</td><td><a href=\"http://hl7.org/fhir/R5/datatypes.html#date\">date</a></td><td/><td><div><p>Date of birth in YYYY-MM-DD format. Mandatory when <code>code</code> is <code>PPN</code>, because the PINFL is resolved from the passport together with the date of birth. Optional for the other document types, where it is used as an additional matching criterion. Passed as valueDate.</p>\n</div></td></tr><tr><td>OUT</td><td>return</td><td/><td>1..1</td><td><a href=\"http://hl7.org/fhir/R5/patient.html\">Patient</a></td><td/><td><div><p>The Patient resource that was created, or the one that already existed, populated with data from the state registries.</p>\n</div></td></tr></table><div><p>The document codes NI (PINFL), PPN (passport / ID card) and BCT (birth certificate) are supported; the case of <code>code</code> does not matter. For NI the value is checked locally for correctness. For PPN the <code>birthDate</code> parameter is mandatory - the PINFL is resolved from the series and number together with the date of birth. For BCT the value is split into series and number, which resolve the PINFL. The <code>system</code> value must be one of the permitted identification systems; an unknown <code>system</code> or <code>code</code> results in an OperationOutcome with code <code>invalid</code>. The citizen's address is requested separately and is optional: if it is unavailable, the Patient is still created, but without address details. If the citizen is not found in the external registries, or the data retrieved is invalid, no resource is created and an error is returned. The operation follows the same model as Person/$populate.</p>\n</div></div>"
},
"url" : "https://dhp.uz/fhir/core/OperationDefinition/patient-populate",
"version" : "0.10.0",
"name" : "PatientPopulate",
"title" : "Populate a patient from state registries by identifier",
"status" : "draft",
"kind" : "operation",
"experimental" : false,
"date" : "2026-08-13",
"publisher" : "Ministry of Health of the Republic of Uzbekistan",
"contact" : [
{
"name" : "Ministry of Health of the Republic of Uzbekistan",
"telecom" : [
{
"system" : "url",
"value" : "https://gov.uz/en/ssv"
},
{
"system" : "email",
"value" : "info@ssv.uz"
}
]
}
],
"description" : "Creates a Patient resource from an identity document, populating it with data from the state registries of natural persons. The operation takes the identifier as a `system` + `code` + `value` triple (with `birthDate` where needed), resolves it to a PINFL (NI), and retrieves the citizen's details by that PINFL. The operation is idempotent: if a Patient with that PINFL already exists in the system it is returned without calling any external source and without creating a duplicate; otherwise a new Patient resource is created with an assigned identifier and version. The operation is invoked at type level (Patient/$populate) with POST and a Parameters body. The response is the Patient resource itself, not Parameters.",
"jurisdiction" : [
{
"coding" : [
{
"system" : "urn:iso:std:iso:3166",
"code" : "UZ",
"display" : "Uzbekistan"
}
]
}
],
"affectsState" : true,
"code" : "populate",
"comment" : "The document codes NI (PINFL), PPN (passport / ID card) and BCT (birth certificate) are supported; the case of `code` does not matter. For NI the value is checked locally for correctness. For PPN the `birthDate` parameter is mandatory - the PINFL is resolved from the series and number together with the date of birth. For BCT the value is split into series and number, which resolve the PINFL. The `system` value must be one of the permitted identification systems; an unknown `system` or `code` results in an OperationOutcome with code `invalid`. The citizen's address is requested separately and is optional: if it is unavailable, the Patient is still created, but without address details. If the citizen is not found in the external registries, or the data retrieved is invalid, no resource is created and an error is returned. The operation follows the same model as Person/$populate.",
"resource" : [
"Patient"
],
"system" : false,
"type" : true,
"instance" : false,
"parameter" : [
{
"name" : "system",
"use" : "in",
"min" : 1,
"max" : "1",
"documentation" : "Identification system of the document (Identifier.system). Permitted values: `http://terminology.hl7.org/CodeSystem/v2-0203`, `https://dhp.uz/fhir/core/sid/pid/uz/ni` (PINFL), `https://dhp.uz/fhir/core/sid/pid/uz/ppn/local` (biometric passport / ID card), `https://dhp.uz/fhir/core/sid/pid/uz/ppn/intl` (international passport), `https://dhp.uz/fhir/core/sid/pid/uz/bct` (birth certificate). Passed as valueUri.",
"type" : "uri"
},
{
"name" : "code",
"use" : "in",
"min" : 1,
"max" : "1",
"documentation" : "Document type: `NI` - PINFL, `PPN` - passport or ID card, `BCT` - birth certificate. Passed as valueCode.",
"type" : "code"
},
{
"name" : "value",
"use" : "in",
"min" : 1,
"max" : "1",
"documentation" : "Document value: the PINFL for `NI`, the passport series and number for `PPN`, the birth certificate series and number for `BCT`. Passed as valueString.",
"type" : "string"
},
{
"name" : "birthDate",
"use" : "in",
"min" : 0,
"max" : "1",
"documentation" : "Date of birth in YYYY-MM-DD format. Mandatory when `code` is `PPN`, because the PINFL is resolved from the passport together with the date of birth. Optional for the other document types, where it is used as an additional matching criterion. Passed as valueDate.",
"type" : "date"
},
{
"name" : "return",
"use" : "out",
"min" : 1,
"max" : "1",
"documentation" : "The Patient resource that was created, or the one that already existed, populated with data from the state registries.",
"type" : "Patient"
}
]
}