{
  "resourceType": "StructureDefinition",
  "id": "digidot-Encounter-no",
  "url": "http://novari.no/fhir/digidot/StructureDefinition/digidot-Encounter-no",
  "version": "0.1.5",
  "name": "digidot_Encounter_no",
  "title": "DigiDot Encounter (NO)",
  "status": "draft",
  "date": "2025-09-16T22:00:00+00:00",
  "publisher": "Novari AS – DigiDot",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Encounter",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Encounter",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Encounter",
        "path": "Encounter",
        "constraint": [
          {
            "key": "enc-participant-pprf-one",
            "severity": "error",
            "human": "Minst én deltaker skal ha type PPRF.",
            "expression": "participant.where(type.coding.where(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='PPRF').exists()).exists()"
          },
          {
            "key": "enc-participant-individual-one",
            "severity": "error",
            "human": "Minst én deltaker skal ha individual (Practitioner eller PractitionerRole).",
            "expression": "participant.where(individual.exists()).exists()"
          }
        ]
      },
      {
        "id": "Encounter.identifier",
        "path": "Encounter.identifier",
        "min": 1
      },
      {
        "id": "Encounter.type",
        "path": "Encounter.type",
        "max": "1"
      },
      {
        "id": "Encounter.serviceProvider",
        "path": "Encounter.serviceProvider",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.no/fhir/StructureDefinition/no-basis-Organization",
              "http://hl7.org/fhir/StructureDefinition/Organization"
            ]
          }
        ]
      },
      {
        "id": "Encounter.partOf",
        "path": "Encounter.partOf",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://novari.no/fhir/digidot/StructureDefinition/digidot-Encounter-no",
              "http://hl7.org/fhir/StructureDefinition/Encounter"
            ]
          }
        ]
      },
      {
        "id": "Encounter.subject",
        "path": "Encounter.subject",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.no/fhir/StructureDefinition/no-basis-Patient",
              "http://hl7.org/fhir/StructureDefinition/Patient"
            ]
          }
        ]
      },
      {
        "id": "Encounter.episodeOfCare",
        "path": "Encounter.episodeOfCare",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://novari.no/fhir/digidot/StructureDefinition/digidot-EpisodeOfCare-no",
              "http://hl7.org/fhir/StructureDefinition/EpisodeOfCare"
            ]
          }
        ]
      },
      {
        "id": "Encounter.basedOn",
        "path": "Encounter.basedOn",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/ServiceRequest"
            ]
          }
        ]
      },
      {
        "id": "Encounter.reasonReference",
        "path": "Encounter.reasonReference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://novari.no/fhir/digidot/StructureDefinition/digidot-Condition-no",
              "http://hl7.org/fhir/StructureDefinition/Condition"
            ]
          },
          {
            "code": "Reference",
            "targetProfile": [
              "http://novari.no/fhir/digidot/StructureDefinition/digidot-Procedure-no",
              "http://hl7.no/fhir/StructureDefinition/no-basis-Procedure",
              "http://hl7.org/fhir/StructureDefinition/Procedure"
            ]
          },
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/Observation"
            ]
          }
        ]
      },
      {
        "id": "Encounter.participant",
        "path": "Encounter.participant",
        "min": 1
      },
      {
        "id": "Encounter.participant.individual",
        "path": "Encounter.participant.individual",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.no/fhir/StructureDefinition/no-basis-Practitioner",
              "http://hl7.no/fhir/StructureDefinition/no-basis-PractitionerRole",
              "http://hl7.org/fhir/StructureDefinition/Practitioner",
              "http://hl7.org/fhir/StructureDefinition/PractitionerRole"
            ]
          }
        ]
      },
      {
        "id": "Encounter.location",
        "path": "Encounter.location",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Encounter.location.location",
        "path": "Encounter.location.location",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.no/fhir/StructureDefinition/no-basis-Location",
              "http://hl7.org/fhir/StructureDefinition/Location"
            ]
          }
        ]
      },
      {
        "id": "Encounter.appointment",
        "path": "Encounter.appointment",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/Appointment"
            ]
          }
        ]
      },
      {
        "id": "Encounter.extension",
        "path": "Encounter.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Encounter.extension:helsegruppe",
        "path": "Encounter.extension",
        "sliceName": "helsegruppe",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://novari.no/fhir/StructureDefinition/helsegruppe"
            ]
          }
        ]
      },
      {
        "id": "Encounter.extension:helsegruppe.url",
        "path": "Encounter.extension.url",
        "fixedUri": "http://novari.no/fhir/StructureDefinition/helsegruppe"
      }
    ]
  }
}