FHIR © HL7.org  |  FHIRsmith 4.0.1  |  Server Home  |  XIG Home  |  XIG Stats  | 

FHIR IG analytics

Packagefhir.kenyaPSIG
Resource TypeStructureDefinition
IdStructureDefinition-ClientRegistrationModel.json
FHIR VersionR4
Sourcehttps://build.fhir.org/ig/IntelliSOFT-Consulting/Kenya-Patient-Summary-FHIR-IG/StructureDefinition-ClientRegistrationModel.html
URLhttps://nshr-uat.sha.go.ke/fhir/StructureDefinition/ClientRegistrationModel
Version0.1.0
Statusdraft
Date2026-06-19T10:10:16+00:00
NameClientRegistrationModel
TitleKPS.A Client Registration
Realmus
Authorityhl7
DescriptionLogical model for registering a client under the Kenya Patient Summary (KPS.A) standard.
CopyrightCopyright © 2024+ Digital Health Agency of Kenya. This content is licensed under Creative Commons Zero v1.0 Universal (CC0 1.0). No rights reserved.
Typehttps://nshr-uat.sha.go.ke/fhir/StructureDefinition/ClientRegistrationModel
Kindlogical

Resources that use this resource

No resources found


Resources that this resource uses

ValueSet
fhir.kenyaPSIG#currentkps-gender-vsKPS - Administrative Gender
fhir.kenyaPSIG#currentkps-patient-contact-relationship-vsKPSPatientContactRelationship

Narrative

Note: links and images are rebased to the (stated) source

Generated Narrative: StructureDefinition ClientRegistrationModel

NameFlagsCard.TypeDescription & Constraintsdoco
.. ClientRegistrationModel 0..*BaseKPS.A Client Registration
... identifier 1..1IdentifierGovernment-issued identifier used to distinguish individuals, e.g., National ID (adults) or Birth Certificate number (under 18)
... name 1..1BackboneElementClient's name
.... given 1..1stringClient's first name
.... family 1..1stringClient's family name or last name
... dateOfBirth 1..1dateClient's date of birth, if known
... sex 1..1codeSex of the client assigned at birth
Binding: KPS - Administrative Gender (required)
... address 0..1BackboneElementClient's residential address
.... country 0..1stringName of country of affiliation
.... county 0..1stringCounty where the client resides
.... subcounty 0..1stringSubcounty of residence
.... ward 0..1stringWard where the client lives
.... village 0..1stringVillage or estate of residence
.... postalAddress 0..1stringMailing address including P.O. Box, street or building details
... telecom 0..1BackboneElementClient's contact information
.... phone 0..1stringPhone number (mobile or landline)
.... email 0..1stringEmail address
... contactPerson 0..1BackboneElementContact person or legal guardian
.... role 1..1codeRole: legal guardian, next of kin, or other
Binding: KPSPatientContactRelationship (required)
.... relationship 0..1stringRelationship to the client (e.g., father, spouse, daughter)
.... name 0..1BackboneElementName of contact person
..... given 1..1stringFirst name of contact person
..... family 1..1stringSurname of contact person
.... phone 0..1stringPhone number of contact person
.... email 0..1stringEmail of contact person
... insurance 0..1BackboneElementInsurance information
.... insuranceNumber 0..1stringHealth insurance ID assigned to the client

doco Documentation for this format

Source1

{
  "resourceType": "StructureDefinition",
  "id": "ClientRegistrationModel",
  "text": {
    "status": "extensions",
    "div": "<!-- snip (see above) -->"
  },
  "url": "https://nshr-uat.sha.go.ke/fhir/StructureDefinition/ClientRegistrationModel",
  "version": "0.1.0",
  "name": "ClientRegistrationModel",
  "title": "KPS.A Client Registration",
  "status": "draft",
  "date": "2026-06-19T10:10:16+00:00",
  "publisher": "Digital Health Agency of Kenya",
  "contact": [
    {
      "name": "Digital Health Agency of Kenya",
      "telecom": [
        {
          "system": "url",
          "value": "https://www.dha.go.ke"
        },
        {
          "system": "email",
          "value": "interoperability@dha.go.ke"
        }
      ]
    },
    {
      "name": "Digital Health Agency of Kenya – Interoperability Team",
      "telecom": [
        {
          "system": "email",
          "value": "interoperability@dha.go.ke",
          "use": "work"
        },
        {
          "system": "url",
          "value": "https://www.dha.go.ke",
          "use": "work"
        }
      ]
    }
  ],
  "description": "Logical model for registering a client under the Kenya Patient Summary (KPS.A) standard.",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "urn:iso:std:iso:3166",
          "code": "KE",
          "display": "Kenya"
        }
      ]
    }
  ],
  "copyright": "Copyright © 2024+ Digital Health Agency of Kenya. This content is licensed under Creative Commons Zero v1.0 Universal (CC0 1.0). No rights reserved.\n",
  "fhirVersion": "4.0.1",
  "kind": "logical",
  "abstract": false,
  "type": "https://nshr-uat.sha.go.ke/fhir/StructureDefinition/ClientRegistrationModel",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Base",
  "derivation": "specialization",
  "snapshot": {
    "extension": [
      {
        "url": "http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version",
        "valueString": "4.0.1"
      }
    ],
    "element": [
      {
        "id": "ClientRegistrationModel",
        "path": "ClientRegistrationModel",
        "short": "KPS.A Client Registration",
        "definition": "Logical model for registering a client under the Kenya Patient Summary (KPS.A) standard.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Base",
          "min": 0,
          "max": "*"
        },
        "isModifier": false
      },
      {
        "id": "ClientRegistrationModel.identifier",
        "path": "ClientRegistrationModel.identifier",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.1"
          }
        ],
        "short": "Government-issued identifier used to distinguish individuals, e.g., National ID (adults) or Birth Certificate number (under 18)",
        "definition": "Government-issued identifier used to distinguish individuals, e.g., National ID (adults) or Birth Certificate number (under 18)",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.identifier",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "Identifier"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.name",
        "path": "ClientRegistrationModel.name",
        "short": "Client's name",
        "definition": "Client's name",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.name",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.name.id",
        "path": "ClientRegistrationModel.name.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "Unique id for inter-element referencing",
        "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "extension": [
              {
                "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
                "valueUrl": "string"
              }
            ],
            "code": "http://hl7.org/fhirpath/System.String"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.name.extension",
        "path": "ClientRegistrationModel.name.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional content defined by implementations",
        "definition": "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.",
        "comment": "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.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.name.modifierExtension",
        "path": "ClientRegistrationModel.name.modifierExtension",
        "short": "Extensions that cannot be ignored even if unrecognized",
        "definition": "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).",
        "comment": "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.",
        "requirements": "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).",
        "alias": [
          "extensions",
          "user content",
          "modifiers"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "BackboneElement.modifierExtension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": true,
        "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
        "isSummary": true,
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.name.given",
        "path": "ClientRegistrationModel.name.given",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.2"
          }
        ],
        "short": "Client's first name",
        "definition": "Client's first name",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.name.given",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.name.family",
        "path": "ClientRegistrationModel.name.family",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.3"
          }
        ],
        "short": "Client's family name or last name",
        "definition": "Client's family name or last name",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.name.family",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.dateOfBirth",
        "path": "ClientRegistrationModel.dateOfBirth",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.4"
          }
        ],
        "short": "Client's date of birth, if known",
        "definition": "Client's date of birth, if known",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.dateOfBirth",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "date"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.sex",
        "path": "ClientRegistrationModel.sex",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.5"
          }
        ],
        "short": "Sex of the client assigned at birth",
        "definition": "Sex of the client assigned at birth",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.sex",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "https://nshr-uat.sha.go.ke/fhir/ValueSet/kps-gender-vs"
        }
      },
      {
        "id": "ClientRegistrationModel.address",
        "path": "ClientRegistrationModel.address",
        "short": "Client's residential address",
        "definition": "Client's residential address",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.address",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.id",
        "path": "ClientRegistrationModel.address.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "Unique id for inter-element referencing",
        "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "extension": [
              {
                "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
                "valueUrl": "string"
              }
            ],
            "code": "http://hl7.org/fhirpath/System.String"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.extension",
        "path": "ClientRegistrationModel.address.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional content defined by implementations",
        "definition": "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.",
        "comment": "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.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.modifierExtension",
        "path": "ClientRegistrationModel.address.modifierExtension",
        "short": "Extensions that cannot be ignored even if unrecognized",
        "definition": "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).",
        "comment": "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.",
        "requirements": "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).",
        "alias": [
          "extensions",
          "user content",
          "modifiers"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "BackboneElement.modifierExtension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": true,
        "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
        "isSummary": true,
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.country",
        "path": "ClientRegistrationModel.address.country",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.8"
          }
        ],
        "short": "Name of country of affiliation",
        "definition": "Name of country of affiliation",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.address.country",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.county",
        "path": "ClientRegistrationModel.address.county",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.9"
          }
        ],
        "short": "County where the client resides",
        "definition": "County where the client resides",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.address.county",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.subcounty",
        "path": "ClientRegistrationModel.address.subcounty",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.10"
          }
        ],
        "short": "Subcounty of residence",
        "definition": "Subcounty of residence",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.address.subcounty",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.ward",
        "path": "ClientRegistrationModel.address.ward",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.11"
          }
        ],
        "short": "Ward where the client lives",
        "definition": "Ward where the client lives",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.address.ward",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.village",
        "path": "ClientRegistrationModel.address.village",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.12"
          }
        ],
        "short": "Village or estate of residence",
        "definition": "Village or estate of residence",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.address.village",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.postalAddress",
        "path": "ClientRegistrationModel.address.postalAddress",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.13"
          }
        ],
        "short": "Mailing address including P.O. Box, street or building details",
        "definition": "Mailing address including P.O. Box, street or building details",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.address.postalAddress",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.telecom",
        "path": "ClientRegistrationModel.telecom",
        "short": "Client's contact information",
        "definition": "Client's contact information",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.telecom",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.telecom.id",
        "path": "ClientRegistrationModel.telecom.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "Unique id for inter-element referencing",
        "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "extension": [
              {
                "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
                "valueUrl": "string"
              }
            ],
            "code": "http://hl7.org/fhirpath/System.String"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.telecom.extension",
        "path": "ClientRegistrationModel.telecom.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional content defined by implementations",
        "definition": "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.",
        "comment": "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.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.telecom.modifierExtension",
        "path": "ClientRegistrationModel.telecom.modifierExtension",
        "short": "Extensions that cannot be ignored even if unrecognized",
        "definition": "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).",
        "comment": "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.",
        "requirements": "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).",
        "alias": [
          "extensions",
          "user content",
          "modifiers"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "BackboneElement.modifierExtension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": true,
        "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
        "isSummary": true,
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.telecom.phone",
        "path": "ClientRegistrationModel.telecom.phone",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.14"
          }
        ],
        "short": "Phone number (mobile or landline)",
        "definition": "Phone number (mobile or landline)",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.telecom.phone",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.telecom.email",
        "path": "ClientRegistrationModel.telecom.email",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.15"
          }
        ],
        "short": "Email address",
        "definition": "Email address",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.telecom.email",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson",
        "path": "ClientRegistrationModel.contactPerson",
        "short": "Contact person or legal guardian",
        "definition": "Contact person or legal guardian",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.contactPerson",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.id",
        "path": "ClientRegistrationModel.contactPerson.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "Unique id for inter-element referencing",
        "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "extension": [
              {
                "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
                "valueUrl": "string"
              }
            ],
            "code": "http://hl7.org/fhirpath/System.String"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.extension",
        "path": "ClientRegistrationModel.contactPerson.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional content defined by implementations",
        "definition": "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.",
        "comment": "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.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.modifierExtension",
        "path": "ClientRegistrationModel.contactPerson.modifierExtension",
        "short": "Extensions that cannot be ignored even if unrecognized",
        "definition": "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).",
        "comment": "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.",
        "requirements": "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).",
        "alias": [
          "extensions",
          "user content",
          "modifiers"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "BackboneElement.modifierExtension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": true,
        "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
        "isSummary": true,
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.role",
        "path": "ClientRegistrationModel.contactPerson.role",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.16"
          }
        ],
        "short": "Role: legal guardian, next of kin, or other",
        "definition": "Role: legal guardian, next of kin, or other",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.contactPerson.role",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "https://nshr-uat.sha.go.ke/fhir/ValueSet/kps-patient-contact-relationship-vs"
        }
      },
      {
        "id": "ClientRegistrationModel.contactPerson.relationship",
        "path": "ClientRegistrationModel.contactPerson.relationship",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.20"
          }
        ],
        "short": "Relationship to the client (e.g., father, spouse, daughter)",
        "definition": "Relationship to the client (e.g., father, spouse, daughter)",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.contactPerson.relationship",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.name",
        "path": "ClientRegistrationModel.contactPerson.name",
        "short": "Name of contact person",
        "definition": "Name of contact person",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.contactPerson.name",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.name.id",
        "path": "ClientRegistrationModel.contactPerson.name.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "Unique id for inter-element referencing",
        "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "extension": [
              {
                "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
                "valueUrl": "string"
              }
            ],
            "code": "http://hl7.org/fhirpath/System.String"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.name.extension",
        "path": "ClientRegistrationModel.contactPerson.name.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional content defined by implementations",
        "definition": "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.",
        "comment": "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.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.name.modifierExtension",
        "path": "ClientRegistrationModel.contactPerson.name.modifierExtension",
        "short": "Extensions that cannot be ignored even if unrecognized",
        "definition": "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).",
        "comment": "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.",
        "requirements": "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).",
        "alias": [
          "extensions",
          "user content",
          "modifiers"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "BackboneElement.modifierExtension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": true,
        "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
        "isSummary": true,
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.name.given",
        "path": "ClientRegistrationModel.contactPerson.name.given",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.21"
          }
        ],
        "short": "First name of contact person",
        "definition": "First name of contact person",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.contactPerson.name.given",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.name.family",
        "path": "ClientRegistrationModel.contactPerson.name.family",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.22"
          }
        ],
        "short": "Surname of contact person",
        "definition": "Surname of contact person",
        "min": 1,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.contactPerson.name.family",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.phone",
        "path": "ClientRegistrationModel.contactPerson.phone",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.23"
          }
        ],
        "short": "Phone number of contact person",
        "definition": "Phone number of contact person",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.contactPerson.phone",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.email",
        "path": "ClientRegistrationModel.contactPerson.email",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.24"
          }
        ],
        "short": "Email of contact person",
        "definition": "Email of contact person",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.contactPerson.email",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.insurance",
        "path": "ClientRegistrationModel.insurance",
        "short": "Insurance information",
        "definition": "Insurance information",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.insurance",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.insurance.id",
        "path": "ClientRegistrationModel.insurance.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "Unique id for inter-element referencing",
        "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "extension": [
              {
                "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
                "valueUrl": "string"
              }
            ],
            "code": "http://hl7.org/fhirpath/System.String"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.insurance.extension",
        "path": "ClientRegistrationModel.insurance.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional content defined by implementations",
        "definition": "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.",
        "comment": "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.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": false,
        "isSummary": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.insurance.modifierExtension",
        "path": "ClientRegistrationModel.insurance.modifierExtension",
        "short": "Extensions that cannot be ignored even if unrecognized",
        "definition": "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).",
        "comment": "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.",
        "requirements": "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).",
        "alias": [
          "extensions",
          "user content",
          "modifiers"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "BackboneElement.modifierExtension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "http://hl7.org/fhir/StructureDefinition/Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
            "source": "http://hl7.org/fhir/StructureDefinition/Extension"
          }
        ],
        "isModifier": true,
        "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
        "isSummary": true,
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.insurance.insuranceNumber",
        "path": "ClientRegistrationModel.insurance.insuranceNumber",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.26"
          }
        ],
        "short": "Health insurance ID assigned to the client",
        "definition": "Health insurance ID assigned to the client",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ClientRegistrationModel.insurance.insuranceNumber",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      }
    ]
  },
  "differential": {
    "element": [
      {
        "id": "ClientRegistrationModel",
        "path": "ClientRegistrationModel",
        "short": "KPS.A Client Registration",
        "definition": "Logical model for registering a client under the Kenya Patient Summary (KPS.A) standard."
      },
      {
        "id": "ClientRegistrationModel.identifier",
        "path": "ClientRegistrationModel.identifier",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.1"
          }
        ],
        "short": "Government-issued identifier used to distinguish individuals, e.g., National ID (adults) or Birth Certificate number (under 18)",
        "definition": "Government-issued identifier used to distinguish individuals, e.g., National ID (adults) or Birth Certificate number (under 18)",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Identifier"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.name",
        "path": "ClientRegistrationModel.name",
        "short": "Client's name",
        "definition": "Client's name",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.name.given",
        "path": "ClientRegistrationModel.name.given",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.2"
          }
        ],
        "short": "Client's first name",
        "definition": "Client's first name",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.name.family",
        "path": "ClientRegistrationModel.name.family",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.3"
          }
        ],
        "short": "Client's family name or last name",
        "definition": "Client's family name or last name",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.dateOfBirth",
        "path": "ClientRegistrationModel.dateOfBirth",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.4"
          }
        ],
        "short": "Client's date of birth, if known",
        "definition": "Client's date of birth, if known",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "date"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.sex",
        "path": "ClientRegistrationModel.sex",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.5"
          }
        ],
        "short": "Sex of the client assigned at birth",
        "definition": "Sex of the client assigned at birth",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "https://nshr-uat.sha.go.ke/fhir/ValueSet/kps-gender-vs"
        }
      },
      {
        "id": "ClientRegistrationModel.address",
        "path": "ClientRegistrationModel.address",
        "short": "Client's residential address",
        "definition": "Client's residential address",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.country",
        "path": "ClientRegistrationModel.address.country",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.8"
          }
        ],
        "short": "Name of country of affiliation",
        "definition": "Name of country of affiliation",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.county",
        "path": "ClientRegistrationModel.address.county",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.9"
          }
        ],
        "short": "County where the client resides",
        "definition": "County where the client resides",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.subcounty",
        "path": "ClientRegistrationModel.address.subcounty",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.10"
          }
        ],
        "short": "Subcounty of residence",
        "definition": "Subcounty of residence",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.ward",
        "path": "ClientRegistrationModel.address.ward",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.11"
          }
        ],
        "short": "Ward where the client lives",
        "definition": "Ward where the client lives",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.village",
        "path": "ClientRegistrationModel.address.village",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.12"
          }
        ],
        "short": "Village or estate of residence",
        "definition": "Village or estate of residence",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.address.postalAddress",
        "path": "ClientRegistrationModel.address.postalAddress",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.13"
          }
        ],
        "short": "Mailing address including P.O. Box, street or building details",
        "definition": "Mailing address including P.O. Box, street or building details",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.telecom",
        "path": "ClientRegistrationModel.telecom",
        "short": "Client's contact information",
        "definition": "Client's contact information",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.telecom.phone",
        "path": "ClientRegistrationModel.telecom.phone",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.14"
          }
        ],
        "short": "Phone number (mobile or landline)",
        "definition": "Phone number (mobile or landline)",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.telecom.email",
        "path": "ClientRegistrationModel.telecom.email",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.15"
          }
        ],
        "short": "Email address",
        "definition": "Email address",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson",
        "path": "ClientRegistrationModel.contactPerson",
        "short": "Contact person or legal guardian",
        "definition": "Contact person or legal guardian",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.role",
        "path": "ClientRegistrationModel.contactPerson.role",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.16"
          }
        ],
        "short": "Role: legal guardian, next of kin, or other",
        "definition": "Role: legal guardian, next of kin, or other",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "https://nshr-uat.sha.go.ke/fhir/ValueSet/kps-patient-contact-relationship-vs"
        }
      },
      {
        "id": "ClientRegistrationModel.contactPerson.relationship",
        "path": "ClientRegistrationModel.contactPerson.relationship",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.20"
          }
        ],
        "short": "Relationship to the client (e.g., father, spouse, daughter)",
        "definition": "Relationship to the client (e.g., father, spouse, daughter)",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.name",
        "path": "ClientRegistrationModel.contactPerson.name",
        "short": "Name of contact person",
        "definition": "Name of contact person",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.name.given",
        "path": "ClientRegistrationModel.contactPerson.name.given",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.21"
          }
        ],
        "short": "First name of contact person",
        "definition": "First name of contact person",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.name.family",
        "path": "ClientRegistrationModel.contactPerson.name.family",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.22"
          }
        ],
        "short": "Surname of contact person",
        "definition": "Surname of contact person",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.phone",
        "path": "ClientRegistrationModel.contactPerson.phone",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.23"
          }
        ],
        "short": "Phone number of contact person",
        "definition": "Phone number of contact person",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.contactPerson.email",
        "path": "ClientRegistrationModel.contactPerson.email",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.24"
          }
        ],
        "short": "Email of contact person",
        "definition": "Email of contact person",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.insurance",
        "path": "ClientRegistrationModel.insurance",
        "short": "Insurance information",
        "definition": "Insurance information",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "ClientRegistrationModel.insurance.insuranceNumber",
        "path": "ClientRegistrationModel.insurance.insuranceNumber",
        "code": [
          {
            "system": "https://nshr-uat.sha.go.ke/fhir/CodeSystem/kps-data-elements",
            "code": "KPS.A.DE.26"
          }
        ],
        "short": "Health insurance ID assigned to the client",
        "definition": "Health insurance ID assigned to the client",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      }
    ]
  }
}