PackagesCanonicalsLogsProblems
    Packages
    fi.kela.kanta.gen.r4.tahdonilmaisut@1.0.0-rc1
    https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/soteluovutuslupa
{
  "description": null,
  "_filename": "SoteConsent.StructureDefinition.json",
  "package_name": "fi.kela.kanta.gen.r4.tahdonilmaisut",
  "date": null,
  "derivation": "constraint",
  "publisher": "Kela / Kanta",
  "fhirVersion": "4.0.1",
  "name": "SoTeConsent",
  "abstract": false,
  "type": "Consent",
  "experimental": null,
  "resourceType": "StructureDefinition",
  "title": null,
  "package_version": "1.0.0-rc1",
  "status": "draft",
  "id": "a0b7f235-bf01-4025-8fa8-7f07d73e8e1a",
  "kind": "resource",
  "url": "https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/soteluovutuslupa",
  "version": null,
  "differential": {
    "element": [ {
      "id": "Consent",
      "path": "Consent",
      "constraint": [ {
        "key": "TIP-CON-1",
        "human": "Statuksen sallitut arvot ovat: active ja rejected",
        "severity": "error",
        "expression": "status = 'active' or 'rejected'"
      }, {
        "key": "TIP-CON-2",
        "human": "Category arvo voi olla koodistosta https://gen.kanta.fi/figen-vs-consentcategory 1 tai 2.",
        "severity": "error",
        "expression": "category.coding.code = '1' or '2'"
      }, {
        "key": "TIP-CON-3",
        "human": "Jos lupa perutaan eli status-elementissä annetaan \"rejected\", provision rakenteita ei tuoteta.",
        "severity": "error",
        "expression": "status != 'rejected'  or provision.empty()"
      }, {
        "key": "TIP-CON-4",
        "human": "Jos provision.type annetaan, sen pitää olla permit tai deny",
        "severity": "error",
        "expression": "provision.type.exists() implies (provision.type = 'permit' or 'deny')"
      }, {
        "key": "TIP-CON-5",
        "human": "Jos provision.type on permit, provision.provision-rakennetta ei pidä tuoda.",
        "severity": "error",
        "expression": "provision.type = 'permit' implies provision.provision.exists().not()"
      }, {
        "key": "TIP-CON-6",
        "human": "Jos provision.type on deny, provision.provision-rakenne pitää tuoda.",
        "severity": "error",
        "expression": "provision.provision.exists() implies provision.type = 'deny'"
      }, {
        "key": "TIP-CON-7",
        "human": "Jos provision.provision annetaan, pitää alta löyltyä myös jokin tarkennus luovutuslupaan",
        "severity": "error",
        "expression": "provision.provision.exists() implies (provision.provision.actor.exists() or provision.provision.class.exists() or provision.provision.period.exists() )"
      }, {
        "key": "TIP-CON-8",
        "human": "Jos provision.provision.actor annetaan, pitää sen alta löytyä ProvisionActorOrganizationTypeExtension.",
        "severity": "error",
        "expression": "provision.provision.actor.exists() implies provision.provision.actor.extension.where(url='https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/ProvisionActorOrganizationTypeExtension').exists()"
      }, {
        "key": "TIP-CON-9",
        "human": "Kun on kyse luovutusluvasta sosiaalihuollosta terveydenhuoltoon, organisaaatiotyypin code voi olla 4, 5 tai 6.",
        "severity": "error",
        "expression": "provision.provision.actor.extension.where(url='https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/ProvisionActorOrganizationTypeExtension').value.where(code = '4' or code = '5' or code = '6').exists() implies category.coding.where(code = '2').exists()"
      }, {
        "key": "TIP-CON-10",
        "human": "Kun on kyse luovutusluvasta terveydenhuollosta sosiaalihuoltoon, organisaaatiotyypin code voi olla 1, 2 tai 3.",
        "severity": "error",
        "expression": "provision.provision.actor.extension.where(url='https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/ProvisionActorOrganizationTypeExtension').value.where(code = '1' or code = '2' or code = '3').exists() implies category.coding.where(code = '1').exists()"
      }, {
        "key": "TIP-CON-11",
        "human": "Kun kyseessä on luovutuslupa terveydenhuollosta sosiaalihuoltoon, voi koodistosta figen-cs-ProvisionClassDataType käyttää vain koodiarvoa 4.",
        "severity": "error",
        "expression": "provision.provision.class.where(code='4').exists() implies category.coding.code = '2'"
      }, {
        "key": "TIP-CON-12",
        "human": "Kun kyseessä on luovutuslupa sosiaalihuollosta terveydenhuoltoon, voi koodistosta figen-cs-ProvisionClassDataType käyttää vain koodiarvoja 1-3.",
        "severity": "error",
        "expression": "provision.provision.class.where(code='1' or code='2' or code='3').exists() implies category.coding.code = '1'"
      }, {
        "key": "TIP-CON-13",
        "human": "Kun koodistosta figen-cs-ProvisionClassDataType on valittu arvo 4, pitää FunctionCodeen antaa Palvelutehtävän tiedot.",
        "severity": "error",
        "expression": "provision.provision.class.where(code='4').exists() implies Consent.provision.provision.class.extension.where(url='https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/FunctionCode').exists()"
      } ]
    }, {
      "id": "Consent.id",
      "path": "Consent.id",
      "short": "Sote-luovutusluvan yksilöivä tunnus",
      "definition": "Sote-luovutusluvan globaalisti yksilöivä tunnus.\r\n\r\nSote-luovutusluvan tallennuksen yhteydessä Kanta-palvelut tuottaa Sote-luovutusluvalle yksilöivän tunnuksen, jota on käytettävä Sote-luovutusluvan päivityksessä. Luvalla luovutukseen soriaalihuollosta terveydenhuoltoon on oma yksilöivä tunnuksensa ja luvalla luovutukseen terveydenhuollosta sosiaalihuoltoon on omansa."
    }, {
      "id": "Consent.meta",
      "path": "Consent.meta"
    }, {
      "id": "Consent.meta.profile",
      "max": "1",
      "min": 1,
      "path": "Consent.meta.profile",
      "fixedCanonical": "https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/soteluovutuslupa"
    }, {
      "id": "Consent.language",
      "min": 1,
      "path": "Consent.language",
      "short": "Luvan kieli",
      "binding": {
        "strength": "required",
        "valueSet": "https://gen.kanta.fi/fhir/tahdonilmaisut/ValueSet/figen-vs-languages-soteconsent",
        "description": "Luvan kieli"
      },
      "definition": "Kieli, jota luvan tallennuksessa käytetään."
    }, {
      "id": "Consent.text",
      "min": 1,
      "path": "Consent.text",
      "short": "Luvan teksti",
      "definition": "Teksti, jolla kerrotaan mihin henkilö on suostumuksensa antanut tai vaihtoehtoisesti peruuttanut."
    }, {
      "id": "Consent.text.status",
      "path": "Consent.text.status",
      "fixedCode": "additional",
      "definition": "Kiinteä teksti, joka vaihtelee sen mukaan onko lupa annettu vai peruttu, siksi käytössä kiinteänä arvona \"additional\"."
    }, {
      "id": "Consent.text.div",
      "path": "Consent.text.div",
      "short": "Luvan tai perumisen teksti luvan kielellä",
      "definition": "Teksti, joka vaihtelee sen mukaan, onko lupa annettu vai peruttu. Tekstistä on Simplifierissa saatavissa sekä suomen- että ruotsinkieliset versiot. Huomioi kielen xml tagit esimerkin mukaisesti."
    }, {
      "id": "Consent.status",
      "path": "Consent.status",
      "short": "active | rejected",
      "definition": "Luovutusluvan status:\r\nactive= luovutuslupa on voimassa, joko kaikkeen tai kohdistuksin\nrejected= luovutuslupa on peruttu \r\nmuut tilat ei käytössä"
    }, {
      "id": "Consent.scope",
      "path": "Consent.scope",
      "short": "Luvan kohdistuminen",
      "binding": {
        "strength": "required"
      },
      "definition": "Consent-resurssin pakollinen tieto. Sote-luovutusluvassa käytetään tässä vakioarvoa."
    }, {
      "id": "Consent.scope.coding.system",
      "min": 1,
      "path": "Consent.scope.coding.system",
      "fixedUri": "http://terminology.hl7.org/CodeSystem/consentscope"
    }, {
      "id": "Consent.scope.coding.code",
      "min": 1,
      "path": "Consent.scope.coding.code",
      "fixedCode": "patient-privacy"
    }, {
      "id": "Consent.scope.coding.display",
      "min": 1,
      "path": "Consent.scope.coding.display",
      "fixedString": "Privacy Consent"
    }, {
      "id": "Consent.category",
      "max": "1",
      "path": "Consent.category",
      "short": "Luovutusluvan tunniste",
      "binding": {
        "strength": "required",
        "valueSet": "https://gen.kanta.fi/fhir/tahdonilmaisut/ValueSet/figen-vs-consentcategory-soteconsent"
      },
      "definition": "Luovutusluvan tunniste, jonka avulla tiedetään mistä luvasta on kysymys. "
    }, {
      "id": "Consent.category.coding",
      "max": "1",
      "min": 1,
      "path": "Consent.category.coding"
    }, {
      "id": "Consent.category.coding.system",
      "min": 1,
      "path": "Consent.category.coding.system"
    }, {
      "id": "Consent.category.coding.code",
      "min": 1,
      "path": "Consent.category.coding.code"
    }, {
      "id": "Consent.category.coding.display",
      "min": 1,
      "path": "Consent.category.coding.display"
    }, {
      "id": "Consent.patient",
      "min": 1,
      "path": "Consent.patient",
      "type": [ {
        "code": "Reference",
        "targetProfile": [ "https://gen.kanta.fi/fhir/StructureDefinition/KantaPatientOfficialID" ]
      } ],
      "short": "Henkilö, jonka luvasta on kyse",
      "definition": "Henkilö, jonka luvasta on kyse. Henkilöllä on oltava virallinen henkilötunnus."
    }, {
      "id": "Consent.dateTime",
      "max": "0",
      "path": "Consent.dateTime"
    }, {
      "id": "Consent.performer",
      "max": "5",
      "min": 1,
      "path": "Consent.performer",
      "type": [ {
        "code": "Reference",
        "targetProfile": [ "https://gen.kanta.fi/fhir/StructureDefinition/KantaPatientOfficialID", "https://gen.kanta.fi/fhir/StructureDefinition/KantaRelatedPerson" ]
      } ],
      "short": "Luovutusluvan asettaja",
      "slicing": {
        "rules": "open",
        "discriminator": [ {
          "path": "resolve()",
          "type": "profile"
        } ]
      },
      "definition": "Luovutusluvan asettajana voi olla asiakas itse tai laillinen edustaja"
    }, {
      "id": "Consent.performer:PatientPerformer",
      "max": "1",
      "path": "Consent.performer",
      "type": [ {
        "code": "Reference",
        "targetProfile": [ "https://gen.kanta.fi/fhir/StructureDefinition/KantaPatientOfficialID" ]
      } ],
      "short": "Luvan asettajan tiedot",
      "sliceName": "PatientPerformer",
      "definition": "Tahdonilmaisun asettajana henkilö itse."
    }, {
      "id": "Consent.performer:PatientPerformer.reference",
      "min": 1,
      "path": "Consent.performer.reference",
      "short": "Viittaus käytettävään resurssiin"
    }, {
      "id": "Consent.performer:RelatedPersonPerformer",
      "max": "5",
      "path": "Consent.performer",
      "type": [ {
        "code": "Reference",
        "targetProfile": [ "https://gen.kanta.fi/fhir/StructureDefinition/KantaRelatedPerson" ]
      } ],
      "short": "Luvan asettaja",
      "sliceName": "RelatedPersonPerformer",
      "definition": "Tahdonilmaisun tallentajana puolesta-asioija"
    }, {
      "id": "Consent.performer:RelatedPersonPerformer.reference",
      "min": 1,
      "path": "Consent.performer.reference",
      "short": "Viittaus käytettävään resurssiin"
    }, {
      "id": "Consent.organization",
      "max": "0",
      "path": "Consent.organization"
    }, {
      "id": "Consent.source[x]",
      "max": "0",
      "path": "Consent.source[x]"
    }, {
      "id": "Consent.policy",
      "max": "0",
      "path": "Consent.policy"
    }, {
      "id": "Consent.policyRule",
      "min": 1,
      "path": "Consent.policyRule",
      "short": "Viittaus lakiin, mistä tarve luvalle tulee",
      "definition": "Consent-resurssin vaihtoehtoisesti pakollinen tieto Policy-tiedon kanssa. Sote-luovutusluvalla käytetään tässä vakioarvona viittausta Asiakastietolakiin."
    }, {
      "id": "Consent.policyRule.text",
      "path": "Consent.policyRule.text",
      "fixedString": "Laki sosiaali- ja terveydenhuollon asiakastietojen käsittelystä 703/2023"
    }, {
      "id": "Consent.verification",
      "max": "0",
      "path": "Consent.verification"
    }, {
      "id": "Consent.provision",
      "path": "Consent.provision",
      "short": "Onko lupa annettu kaikkeen vai kohdistaen",
      "comment": "deny = ei anneta luovutuslupaa kaikkeen, jokin rajaus löytyy provision.provision -rakenteesta\npermit = luovutuslupa kaikkeen mitään kohdistamatta",
      "definition": "Lupa voidaan antaa kaikkeen tai lupaa voidaan kohdistaa"
    }, {
      "id": "Consent.provision.type",
      "path": "Consent.provision.type",
      "definition": "deny = ei annettu luovutuslupaa kaikkeen, jokin kohditus pitää olla asetettu\npermit = luovutuslupa on kaikkeen, ei kohdistuksia"
    }, {
      "id": "Consent.provision.period",
      "max": "0",
      "path": "Consent.provision.period"
    }, {
      "id": "Consent.provision.actor",
      "max": "0",
      "path": "Consent.provision.actor"
    }, {
      "id": "Consent.provision.action",
      "max": "0",
      "path": "Consent.provision.action"
    }, {
      "id": "Consent.provision.securityLabel",
      "max": "0",
      "path": "Consent.provision.securityLabel"
    }, {
      "id": "Consent.provision.purpose",
      "max": "0",
      "path": "Consent.provision.purpose"
    }, {
      "id": "Consent.provision.class",
      "max": "0",
      "path": "Consent.provision.class"
    }, {
      "id": "Consent.provision.code",
      "max": "0",
      "path": "Consent.provision.code"
    }, {
      "id": "Consent.provision.dataPeriod",
      "max": "0",
      "path": "Consent.provision.dataPeriod"
    }, {
      "id": "Consent.provision.data",
      "max": "0",
      "path": "Consent.provision.data"
    }, {
      "id": "Consent.provision.provision",
      "max": "1",
      "path": "Consent.provision.provision",
      "short": "Luvassa annetut kohdistukset",
      "slicing": {
        "rules": "open",
        "discriminator": [ {
          "path": "type",
          "type": "value"
        } ]
      },
      "definition": "Kun Consent.provision.type arvoksi on asetettu \"deny\", tulee Consent.provision.provision rakenteeseen asettaa luvan kohdistukset."
    }, {
      "id": "Consent.provision.provision:Kohdistukset",
      "max": "1",
      "path": "Consent.provision.provision",
      "sliceName": "Kohdistukset"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.type",
      "min": 1,
      "path": "Consent.provision.provision.type",
      "short": "Sote-luvassa käytössä vain \"permit\"",
      "fixedCode": "permit",
      "definition": "Sote-luvassa käytössä vain arvo \"permit\" eli voi kohdistaa mitä tietoja tai mille vastaanottajalle voi luovuttaa."
    }, {
      "id": "Consent.provision.provision:Kohdistukset.period",
      "path": "Consent.provision.provision.period",
      "short": "Alku- ja/tai loppuaika",
      "definition": "Aikarajaus milta ajanjaksolta tietoja saa luovuttaa"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor",
      "path": "Consent.provision.provision.actor",
      "short": "Organisaatiot, joille tietoja saa luovuttaa",
      "constraint": [ {
        "key": "TIP-CON-14",
        "human": "Jos on annettu lupa luovuttaa tietoja hyvinvointialue-valinnalla, ei saa tuoda organisaatiotietoja erikseen.",
        "severity": "error",
        "expression": "reference.identifier.value.exists() implies extension.where(url='https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/ProvisionActorOrganizationTypeExtension').value.where(code = '2' or code = '3' or code = '5' or code = '6')"
      } ],
      "definition": "Organisaatiot, joille tietoja saa luovuttaa. Luokittelut lain asettamalla tavalla.\r\n\r\n"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor.extension:provisionActorOrganizationTypeExtension",
      "path": "Consent.provision.provision.actor.extension",
      "type": [ {
        "code": "Extension",
        "profile": [ "https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/ProvisionActorOrganizationTypeExtension" ]
      } ],
      "sliceName": "provisionActorOrganizationTypeExtension"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor.role",
      "path": "Consent.provision.provision.actor.role",
      "short": "Pakollinen elementti",
      "definition": "Consent-resurssin pakollinen tieto. Sote-luovutusluvalla käytetään vakioarvona koodia \"AGNT\". Mallia voi katsoa esimerkistä.\r\n"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor.role.coding.system",
      "path": "Consent.provision.provision.actor.role.coding.system",
      "fixedUri": "http://terminology.hl7.org/CodeSystem/v3-RoleClass"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor.role.coding.code",
      "path": "Consent.provision.provision.actor.role.coding.code",
      "fixedCode": "AGNT"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor.role.coding.display",
      "path": "Consent.provision.provision.actor.role.coding.display",
      "fixedString": "agent"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor.reference",
      "path": "Consent.provision.provision.actor.reference",
      "type": [ {
        "code": "Reference",
        "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Organization" ]
      } ],
      "short": "Organisaatio, joille saa luovuttaa tietoja",
      "definition": "Organisaatio, jolle saa luovuttaa tietoja. Ilmaistaan organisaation OID-tunnuksella tai codesystemin figen-cs-ProvisionActorOrganizationType mukainen teksti, jos valittu arvo 1 tai 4."
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor.reference.identifier.system",
      "min": 1,
      "path": "Consent.provision.provision.actor.reference.identifier.system",
      "short": "Ilmaisee, että organisaation OID tulee Sote-organisaatiokoodistosta",
      "fixedUri": "urn:ietf:rfc:3986",
      "definition": "Ilmaisee, että OID tulee valita Sote-organisaatiokoodistosta"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor.reference.identifier.value",
      "min": 1,
      "path": "Consent.provision.provision.actor.reference.identifier.value",
      "short": "OID Sote-organisaatiokoodistosta",
      "definition": "Arvoksi tulee OID Sote-organisaatiokoodistosta"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.actor.reference.display",
      "min": 1,
      "path": "Consent.provision.provision.actor.reference.display",
      "short": "Organisaation nimi",
      "definition": "Organisaation nimi tai codesystemin figen-cs-ProvisionActorOrganizationType mukainen teksti, jos valittu arvo 1 tai 4."
    }, {
      "id": "Consent.provision.provision:Kohdistukset.action",
      "max": "0",
      "path": "Consent.provision.provision.action"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.securityLabel",
      "max": "0",
      "path": "Consent.provision.provision.securityLabel"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.purpose",
      "max": "0",
      "path": "Consent.provision.provision.purpose"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.class",
      "max": "3",
      "path": "Consent.provision.provision.class",
      "short": "Tiedot, joiden luovutus on sallittu",
      "binding": {
        "strength": "required",
        "valueSet": "https://gen.kanta.fi/fhir/tahdonilmaisut/ValueSet/figen-vs-ProvisionClassDataType",
        "description": "Luovutettavien tietojen kohdistus"
      },
      "definition": "Luovutettavien tietojen kohdistus laista tulevien luokittelujen mukaisesti.\r\n\r\n"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.class.extension:functionCode",
      "path": "Consent.provision.provision.class.extension",
      "type": [ {
        "code": "Extension",
        "profile": [ "https://gen.kanta.fi/fhir/tahdonilmaisut/StructureDefinition/FunctionCode" ]
      } ],
      "sliceName": "functionCode"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.class.system",
      "min": 1,
      "path": "Consent.provision.provision.class.system"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.class.code",
      "min": 1,
      "path": "Consent.provision.provision.class.code"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.class.display",
      "min": 1,
      "path": "Consent.provision.provision.class.display"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.code",
      "max": "0",
      "path": "Consent.provision.provision.code"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.dataPeriod",
      "max": "0",
      "path": "Consent.provision.provision.dataPeriod"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.data",
      "max": "0",
      "path": "Consent.provision.provision.data"
    }, {
      "id": "Consent.provision.provision:Kohdistukset.provision",
      "max": "0",
      "path": "Consent.provision.provision.provision"
    } ]
  },
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Consent"
}