{
  "resourceType": "StructureDefinition",
  "id": "hr-pacijent",
  "url": "http://fhir.cezih.hr/specifikacije/StructureDefinition/hr-pacijent",
  "version": "1.0.0",
  "name": "HRPatient",
  "title": "Pacijent",
  "status": "active",
  "date": "2024-01-25T14:50:58+00:00",
  "contact": [
    {
      "name": "Krešimir Kerš",
      "telecom": [
        {
          "system": "email",
          "value": "kresimir.kers@ericsson.com"
        }
      ]
    }
  ],
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "urn:iso:std:iso:3166",
          "code": "HR",
          "display": "Croatia"
        }
      ],
      "text": "Croatia"
    }
  ],
  "fhirVersion": "4.0.1",
  "mapping": [
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    },
    {
      "identity": "cda",
      "uri": "http://hl7.org/v3/cda",
      "name": "CDA (R2)"
    },
    {
      "identity": "w5",
      "uri": "http://hl7.org/fhir/fivews",
      "name": "FiveWs Pattern Mapping"
    },
    {
      "identity": "v2",
      "uri": "http://hl7.org/v2",
      "name": "HL7 v2 Mapping"
    },
    {
      "identity": "loinc",
      "uri": "http://loinc.org",
      "name": "LOINC code for the element"
    }
  ],
  "kind": "resource",
  "abstract": false,
  "type": "Patient",
  "baseDefinition": "http://fhir.ehdsi.eu/core/StructureDefinition/patient-myhealtheu-core",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Patient",
        "path": "Patient",
        "constraint": [
          {
            "key": "BD1",
            "severity": "error",
            "human": "Datum rođenja mora biti između današnjeg datuma i istog tog datuma prije 120 godina.",
            "expression": "iif(Patient.birthDate.exists(), (Patient.birthDate > today() - 120 years and Patient.birthDate < today()),true)"
          }
        ]
      },
      {
        "id": "Patient.extension:sex-for-clinical-use",
        "path": "Patient.extension",
        "sliceName": "sex-for-clinical-use"
      },
      {
        "id": "Patient.extension:sex-for-clinical-use.extension",
        "path": "Patient.extension.extension",
        "min": 1
      },
      {
        "id": "Patient.extension:gender-identity",
        "path": "Patient.extension",
        "sliceName": "gender-identity"
      },
      {
        "id": "Patient.extension:gender-identity.extension",
        "path": "Patient.extension.extension",
        "min": 1
      },
      {
        "id": "Patient.extension:pronouns",
        "path": "Patient.extension",
        "sliceName": "pronouns"
      },
      {
        "id": "Patient.extension:pronouns.extension",
        "path": "Patient.extension.extension",
        "min": 1
      },
      {
        "id": "Patient.extension:zadnji_kontakt_pacijenta",
        "path": "Patient.extension",
        "sliceName": "zadnji_kontakt_pacijenta",
        "short": "Vrijeme zadnjeg kontakta pacijenta sa zdravstvenim sustavom",
        "definition": "Izračunava se na osnovu podataka u Elektroničkom Zdravstvenom Zapisu pacijenta o posjetama liječniku primarne zdravstvene zaštite (LOM, pedijatar, ginekolog, ..), podatcima preuzetim lijekovima",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://fhir.cezih.hr/specifikacije/StructureDefinition/hr-patient-last-contact"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Patient.identifier",
        "path": "Patient.identifier",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "system"
            }
          ],
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Patient.identifier:MBO",
        "path": "Patient.identifier",
        "sliceName": "MBO",
        "short": "MBO pacijenta",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:MBO.system",
        "path": "Patient.identifier.system",
        "min": 1,
        "fixedUri": "http://fhir.cezih.hr/specifikacije/identifikatori/MBO"
      },
      {
        "id": "Patient.identifier:MBO.value",
        "path": "Patient.identifier.value",
        "min": 1,
        "constraint": [
          {
            "key": "MBO",
            "severity": "error",
            "human": "MBO mora sadržavati točno 9 znamenki.",
            "expression": "value.matches(\"^[0-9]{9,9}$\")"
          }
        ]
      },
      {
        "id": "Patient.identifier:EuropskaKartica",
        "path": "Patient.identifier",
        "sliceName": "EuropskaKartica",
        "short": "Broj europske kartice pacijenta",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:EuropskaKartica.system",
        "path": "Patient.identifier.system",
        "min": 1,
        "fixedUri": "http://fhir.cezih.hr/specifikacije/identifikatori/europska-kartica"
      },
      {
        "id": "Patient.identifier:EuropskaKartica.value",
        "path": "Patient.identifier.value",
        "min": 1
      },
      {
        "id": "Patient.identifier:Putovnica",
        "path": "Patient.identifier",
        "sliceName": "Putovnica",
        "short": "Broj putovnice pacijenta",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:Putovnica.system",
        "path": "Patient.identifier.system",
        "min": 1,
        "fixedUri": "http://fhir.cezih.hr/specifikacije/identifikatori/putovnica"
      },
      {
        "id": "Patient.identifier:Putovnica.value",
        "path": "Patient.identifier.value",
        "min": 1
      },
      {
        "id": "Patient.identifier:JedinstveniIdentifikatorPacijenta",
        "path": "Patient.identifier",
        "sliceName": "JedinstveniIdentifikatorPacijenta",
        "short": "Jedinstveni identifikator pacijenta",
        "definition": "Jedinstveni identifikator u obliku UUID-a koji se dodjeljuje od strane CEZIH-a pri registraciji pacijenta u FHIR server.",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:JedinstveniIdentifikatorPacijenta.system",
        "path": "Patient.identifier.system",
        "min": 1,
        "fixedUri": "http://fhir.cezih.hr/specifikacije/identifikatori/jedinstveni-identifikator-pacijenta"
      },
      {
        "id": "Patient.identifier:JedinstveniIdentifikatorPacijenta.value",
        "path": "Patient.identifier.value",
        "min": 1
      },
      {
        "id": "Patient.identifier:OIB",
        "path": "Patient.identifier",
        "sliceName": "OIB",
        "short": "OIB pacijenta",
        "max": "1"
      },
      {
        "id": "Patient.identifier:OIB.system",
        "path": "Patient.identifier.system",
        "min": 1,
        "fixedUri": "http://fhir.cezih.hr/specifikacije/identifikatori/OIB"
      },
      {
        "id": "Patient.identifier:OIB.value",
        "path": "Patient.identifier.value",
        "min": 1
      },
      {
        "id": "Patient.identifier:bolesnickiList",
        "path": "Patient.identifier",
        "sliceName": "bolesnickiList",
        "short": "Broj bolesničkog lista",
        "definition": "Osiguranici drugih država temelju bolesničkog lista mogu koristiti zdravstvenu zaštitu izravno u zdravstvenim ustanovama i kod liječnika koji s HZZO-om imaju sklopljen ugovor o pružanju zdravstvene zaštite.",
        "max": "1"
      },
      {
        "id": "Patient.identifier:bolesnickiList.system",
        "path": "Patient.identifier.system",
        "min": 1,
        "fixedUri": "http://fhir.cezih.hr/specifikacije/identifikatori/bolesnicki-list"
      },
      {
        "id": "Patient.identifier:bolesnickiList.value",
        "path": "Patient.identifier.value",
        "min": 1
      },
      {
        "id": "Patient.name",
        "path": "Patient.name",
        "short": "Ime i prezime pacijenta",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.gender",
        "path": "Patient.gender",
        "short": "Spol pacijenta",
        "mustSupport": true
      },
      {
        "id": "Patient.birthDate",
        "path": "Patient.birthDate",
        "short": "Datum rođenja pacijenta",
        "constraint": [
          {
            "key": "Datum",
            "severity": "error",
            "human": "Datum mora biti formata YYYY-MM-DD",
            "expression": "value.matches(\"^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])))$\")"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Patient.deceased[x]",
        "path": "Patient.deceased[x]",
        "type": [
          {
            "code": "dateTime"
          }
        ],
        "mustSupport": true
      }
    ]
  }
}