{
  "resourceType": "StructureDefinition",
  "url": "https://fhir.cambio.se/StructureDefinition/ConsentBlockSe/v1",
  "name": "ConsentBlockSe",
  "status": "draft",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Consent",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Consent",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Consent.identifier",
        "path": "Consent.identifier",
        "max": "1"
      },
      {
        "id": "Consent.scope.coding.system",
        "path": "Consent.scope.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/consent-scope"
      },
      {
        "id": "Consent.scope.coding.code",
        "path": "Consent.scope.coding.code",
        "fixedCode": "patient-privacy"
      },
      {
        "id": "Consent.category",
        "path": "Consent.category",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "coding.code"
            }
          ],
          "rules": "open"
        },
        "max": "1"
      },
      {
        "id": "Consent.category:innerBlock",
        "path": "Consent.category",
        "sliceName": "innerBlock",
        "max": "1"
      },
      {
        "id": "Consent.category:innerBlock.coding.system",
        "path": "Consent.category.coding.system",
        "fixedUri": "http://snomed.info/sct"
      },
      {
        "id": "Consent.category:innerBlock.coding.version",
        "path": "Consent.category.coding.version",
        "fixedString": "http://snomed.info/sct/45991000052106"
      },
      {
        "id": "Consent.category:innerBlock.coding.code",
        "path": "Consent.category.coding.code",
        "fixedCode": "416409005"
      },
      {
        "id": "Consent.category:outerblock",
        "path": "Consent.category",
        "sliceName": "outerblock",
        "max": "1"
      },
      {
        "id": "Consent.category:outerblock.coding.system",
        "path": "Consent.category.coding.system",
        "fixedUri": "http://snomed.info/sct"
      },
      {
        "id": "Consent.category:outerblock.coding.version",
        "path": "Consent.category.coding.version",
        "fixedString": "http://snomed.info/sct/45991000052106"
      },
      {
        "id": "Consent.category:outerblock.coding.code",
        "path": "Consent.category.coding.code",
        "fixedCode": "416308001"
      },
      {
        "id": "Consent.patient",
        "path": "Consent.patient",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://commonprofiles.care/StructureDefinition/PatientSEVendorLite"
            ]
          }
        ]
      },
      {
        "id": "Consent.performer",
        "path": "Consent.performer",
        "max": "0"
      },
      {
        "id": "Consent.organization",
        "path": "Consent.organization",
        "max": "0"
      },
      {
        "id": "Consent.source[x]",
        "path": "Consent.source[x]",
        "max": "0"
      },
      {
        "id": "Consent.policy",
        "path": "Consent.policy",
        "max": "1"
      },
      {
        "id": "Consent.policy.uri",
        "path": "Consent.policy.uri",
        "fixedUri": "https://www.riksdagen.se/sv/dokument-lagar/dokument/svensk-forfattningssamling/patientdatalag-2008355_sfs-2008-355"
      },
      {
        "id": "Consent.policyRule",
        "path": "Consent.policyRule",
        "max": "0"
      },
      {
        "id": "Consent.verification",
        "path": "Consent.verification",
        "max": "0"
      },
      {
        "id": "Consent.provision",
        "path": "Consent.provision",
        "min": 1
      },
      {
        "id": "Consent.provision.type",
        "path": "Consent.provision.type",
        "fixedCode": "deny"
      },
      {
        "id": "Consent.provision.actor",
        "path": "Consent.provision.actor",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "role.coding.code"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Consent.provision.actor:grantor",
        "path": "Consent.provision.actor",
        "sliceName": "grantor",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Consent.provision.actor:grantor.role.coding.system",
        "path": "Consent.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.actor:grantor.role.coding.code",
        "path": "Consent.provision.actor.role.coding.code",
        "fixedCode": "GRANTOR"
      },
      {
        "id": "Consent.provision.actor:grantor.reference",
        "path": "Consent.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://commonprofiles.care/StructureDefinition/PatientSEVendorLite",
              "http://hl7.org/fhir/StructureDefinition/RelatedPerson"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.actor:primaryauthor",
        "path": "Consent.provision.actor",
        "sliceName": "primaryauthor",
        "max": "1"
      },
      {
        "id": "Consent.provision.actor:primaryauthor.role.coding.system",
        "path": "Consent.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.actor:primaryauthor.role.coding.code",
        "path": "Consent.provision.actor.role.coding.code",
        "fixedCode": "PRIMARYAUTHOR"
      },
      {
        "id": "Consent.provision.action",
        "path": "Consent.provision.action",
        "max": "0"
      },
      {
        "id": "Consent.provision.securityLabel",
        "path": "Consent.provision.securityLabel",
        "max": "0"
      },
      {
        "id": "Consent.provision.purpose",
        "path": "Consent.provision.purpose",
        "max": "1"
      },
      {
        "id": "Consent.provision.class",
        "path": "Consent.provision.class",
        "max": "0"
      },
      {
        "id": "Consent.provision.code",
        "path": "Consent.provision.code",
        "max": "0"
      },
      {
        "id": "Consent.provision.dataPeriod",
        "path": "Consent.provision.dataPeriod",
        "max": "0"
      },
      {
        "id": "Consent.provision.data",
        "path": "Consent.provision.data",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision",
        "path": "Consent.provision.provision",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "$this"
            }
          ],
          "rules": "open"
        },
        "max": "1",
        "contentReference": "http://hl7.org/fhir/StructureDefinition/Consent#Consent.provision"
      },
      {
        "id": "Consent.provision.provision:permitOrganization",
        "path": "Consent.provision.provision",
        "sliceName": "permitOrganization",
        "min": 1,
        "max": "1",
        "contentReference": "http://hl7.org/fhir/StructureDefinition/Consent#Consent.provision"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.type",
        "path": "Consent.provision.provision.type",
        "fixedCode": "permit"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor",
        "path": "Consent.provision.provision.actor",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "role.coding.code"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:grantor",
        "path": "Consent.provision.provision.actor",
        "sliceName": "grantor",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:grantor.role.coding.system",
        "path": "Consent.provision.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:grantor.role.coding.code",
        "path": "Consent.provision.provision.actor.role.coding.code",
        "fixedCode": "GRANTOR"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:grantor.reference",
        "path": "Consent.provision.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/RelatedPerson",
              "https://commonprofiles.care/StructureDefinition/PatientSEVendorLite"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:grantee",
        "path": "Consent.provision.provision.actor",
        "sliceName": "grantee",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:grantee.role.coding.system",
        "path": "Consent.provision.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:grantee.role.coding.code",
        "path": "Consent.provision.provision.actor.role.coding.code",
        "fixedCode": "GRANTEE"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:grantee.reference",
        "path": "Consent.provision.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/Organization",
              "http://hl7.org/fhir/StructureDefinition/PractitionerRole"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:primaryauthor",
        "path": "Consent.provision.provision.actor",
        "sliceName": "primaryauthor",
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:primaryauthor.role.coding.system",
        "path": "Consent.provision.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:primaryauthor.role.coding.code",
        "path": "Consent.provision.provision.actor.role.coding.code",
        "fixedCode": "PRIMARYAUTHOR"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.actor:primaryauthor.reference",
        "path": "Consent.provision.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/PractitionerRole"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.provision:permitOrganization.action",
        "path": "Consent.provision.provision.action",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.securityLabel",
        "path": "Consent.provision.provision.securityLabel",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.class",
        "path": "Consent.provision.provision.class",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.code",
        "path": "Consent.provision.provision.code",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.dataPeriod",
        "path": "Consent.provision.provision.dataPeriod",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.data",
        "path": "Consent.provision.provision.data",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitOrganization.provision",
        "path": "Consent.provision.provision.provision",
        "max": "0",
        "contentReference": "http://hl7.org/fhir/StructureDefinition/Consent#Consent.provision"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation",
        "path": "Consent.provision.provision",
        "sliceName": "temporaryRevocation",
        "contentReference": "http://hl7.org/fhir/StructureDefinition/Consent#Consent.provision"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.type",
        "path": "Consent.provision.provision.type",
        "fixedCode": "permit"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.period.end",
        "path": "Consent.provision.provision.period.end",
        "min": 1
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor",
        "path": "Consent.provision.provision.actor",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "role.coding.code"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:grantor",
        "path": "Consent.provision.provision.actor",
        "sliceName": "grantor",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:grantor.role.coding.system",
        "path": "Consent.provision.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:grantor.role.coding.code",
        "path": "Consent.provision.provision.actor.role.coding.code",
        "fixedCode": "GRANTOR"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:grantor.reference",
        "path": "Consent.provision.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/RelatedPerson",
              "https://commonprofiles.care/StructureDefinition/PatientSEVendorLite"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:grantee",
        "path": "Consent.provision.provision.actor",
        "sliceName": "grantee",
        "min": 1
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:grantee.role.coding.system",
        "path": "Consent.provision.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:grantee.role.coding.code",
        "path": "Consent.provision.provision.actor.role.coding.code",
        "fixedCode": "GRANTEE"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:grantee.reference",
        "path": "Consent.provision.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/PractitionerRole",
              "http://hl7.org/fhir/StructureDefinition/Organization"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:primaryauthor",
        "path": "Consent.provision.provision.actor",
        "sliceName": "primaryauthor",
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:primaryauthor.role.coding.system",
        "path": "Consent.provision.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:primaryauthor.role.coding.code",
        "path": "Consent.provision.provision.actor.role.coding.code",
        "fixedCode": "PRIMARYAUTHOR"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:primaryauthor.reference",
        "path": "Consent.provision.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/PractitionerRole"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:overrider",
        "path": "Consent.provision.provision.actor",
        "sliceName": "overrider",
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:overrider.role.coding.system",
        "path": "Consent.provision.provision.actor.role.coding.system",
        "fixedUri": "http://terminology.hl7.org/CodeSystem/v3-ParticipationFunction"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:overrider.role.coding.code",
        "path": "Consent.provision.provision.actor.role.coding.code",
        "fixedCode": "AUEMROV"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.actor:overrider.reference",
        "path": "Consent.provision.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/PractitionerRole"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.action",
        "path": "Consent.provision.provision.action",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.securityLabel",
        "path": "Consent.provision.provision.securityLabel",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.class",
        "path": "Consent.provision.provision.class",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.code",
        "path": "Consent.provision.provision.code",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.dataPeriod",
        "path": "Consent.provision.provision.dataPeriod",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.data",
        "path": "Consent.provision.provision.data",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:temporaryRevocation.provision",
        "path": "Consent.provision.provision.provision",
        "contentReference": "http://hl7.org/fhir/StructureDefinition/Consent#Consent.provision"
      },
      {
        "id": "Consent.provision.provision:permitData",
        "path": "Consent.provision.provision",
        "sliceName": "permitData",
        "contentReference": "http://hl7.org/fhir/StructureDefinition/Consent#Consent.provision"
      },
      {
        "id": "Consent.provision.provision:permitData.type",
        "path": "Consent.provision.provision.type",
        "fixedCode": "permit"
      },
      {
        "id": "Consent.provision.provision:permitData.actor",
        "path": "Consent.provision.provision.actor",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "role.coding.code"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Consent.provision.provision:permitData.actor:grantor",
        "path": "Consent.provision.provision.actor",
        "sliceName": "grantor",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:permitData.actor:grantor.role.coding.system",
        "path": "Consent.provision.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.provision:permitData.actor:grantor.role.coding.code",
        "path": "Consent.provision.provision.actor.role.coding.code",
        "fixedCode": "GRANTOR"
      },
      {
        "id": "Consent.provision.provision:permitData.actor:grantor.reference",
        "path": "Consent.provision.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/RelatedPerson",
              "https://commonprofiles.care/StructureDefinition/PatientSEVendorLite"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.provision:permitData.actor:primaryauthor",
        "path": "Consent.provision.provision.actor",
        "sliceName": "primaryauthor",
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:permitData.actor:primaryauthor.role.coding.system",
        "path": "Consent.provision.provision.actor.role.coding.system",
        "fixedUri": "http://hl7.org/fhir/ValueSet/security-role-type"
      },
      {
        "id": "Consent.provision.provision:permitData.actor:primaryauthor.role.coding.code",
        "path": "Consent.provision.provision.actor.role.coding.code",
        "fixedCode": "PRIMARYAUTHOR"
      },
      {
        "id": "Consent.provision.provision:permitData.actor:primaryauthor.reference",
        "path": "Consent.provision.provision.actor.reference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/PractitionerRole"
            ]
          }
        ]
      },
      {
        "id": "Consent.provision.provision:permitData.action",
        "path": "Consent.provision.provision.action",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitData.securityLabel",
        "path": "Consent.provision.provision.securityLabel",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitData.class",
        "path": "Consent.provision.provision.class",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "code"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Consent.provision.provision:permitData.class:medication",
        "path": "Consent.provision.provision.class",
        "sliceName": "medication",
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:permitData.class:medication.system",
        "path": "Consent.provision.provision.class.system",
        "fixedUri": "urn:riv:informationsecurity:authorization:blocking:4:informationtypeidvalue"
      },
      {
        "id": "Consent.provision.provision:permitData.class:medication.code",
        "path": "Consent.provision.provision.class.code",
        "fixedCode": "lak"
      },
      {
        "id": "Consent.provision.provision:permitData.class:warning",
        "path": "Consent.provision.provision.class",
        "sliceName": "warning",
        "max": "1"
      },
      {
        "id": "Consent.provision.provision:permitData.class:warning.system",
        "path": "Consent.provision.provision.class.system",
        "fixedUri": "urn:riv:informationsecurity:authorization:blocking:4:informationtypeidvalue"
      },
      {
        "id": "Consent.provision.provision:permitData.class:warning.code",
        "path": "Consent.provision.provision.class.code",
        "fixedCode": "upp"
      },
      {
        "id": "Consent.provision.provision:permitData.code",
        "path": "Consent.provision.provision.code",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitData.dataPeriod",
        "path": "Consent.provision.provision.dataPeriod",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitData.data",
        "path": "Consent.provision.provision.data",
        "max": "0"
      },
      {
        "id": "Consent.provision.provision:permitData.provision",
        "path": "Consent.provision.provision.provision",
        "contentReference": "http://hl7.org/fhir/StructureDefinition/Consent#Consent.provision"
      }
    ]
  }
}