{
  "resourceType": "StructureDefinition",
  "url": "http://dips.no/fhir/StructureDefinition/R4/DIPSBasisHealthcareServiceR4",
  "name": "DIPSBasisHealthcareServiceR4",
  "status": "draft",
  "fhirVersion": "4.0.0",
  "kind": "resource",
  "abstract": false,
  "type": "HealthcareService",
  "baseDefinition": "http://hl7.no/fhir/StructureDefinition/no-basis-HealthcareService",
  "derivation": "constraint",
  "snapshot": {},
  "differential": {
    "element": [
      {
        "id": "HealthcareService.id",
        "path": "HealthcareService.id",
        "definition": "dipscoredb.cohealthservice table healthserviceid column"
      },
      {
        "id": "HealthcareService.extension",
        "path": "HealthcareService.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "HealthcareService.extension:ward",
        "path": "HealthcareService.extension",
        "sliceName": "ward",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://dips.no/fhir/StructureDefinition/R4/DIPSHealthcareServiceWard"
            ]
          }
        ]
      },
      {
        "id": "HealthcareService.extension:ward.value[x]:valueReference.reference",
        "path": "HealthcareService.extension.valueReference.reference",
        "definition": "dipscoredb.cohealthservice table wardid column"
      },
      {
        "id": "HealthcareService.extension:section",
        "path": "HealthcareService.extension",
        "sliceName": "section",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://dips.no/fhir/StructureDefinition/R4/DIPSHealthcareServiceSection"
            ]
          }
        ]
      },
      {
        "id": "HealthcareService.extension:section.value[x]:valueReference.reference",
        "path": "HealthcareService.extension.valueReference.reference",
        "definition": "dipscoredb.cohealthservice table sectionid column"
      },
      {
        "id": "HealthcareService.extension:department",
        "path": "HealthcareService.extension",
        "sliceName": "department",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://dips.no/fhir/StructureDefinition/R4/DIPSHealthcareServiceDepartment"
            ]
          }
        ]
      },
      {
        "id": "HealthcareService.extension:department.value[x]:valueReference.reference",
        "path": "HealthcareService.extension.valueReference.reference",
        "definition": "dipscoredb.dwhelsetjenesterolle table Avdid column"
      },
      {
        "id": "HealthcareService.extension:hospital",
        "path": "HealthcareService.extension",
        "sliceName": "hospital",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://dips.no/fhir/StructureDefinition/R4/DIPSHealthcareServiceHospital"
            ]
          }
        ]
      },
      {
        "id": "HealthcareService.extension:hospital.value[x]:valueReference.reference",
        "path": "HealthcareService.extension.valueReference.reference",
        "definition": "dipscoredb.dwhelsetjenesterolle table sykehusid column"
      },
      {
        "id": "HealthcareService.extension:address",
        "path": "HealthcareService.extension",
        "sliceName": "address",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://dips.no/fhir/StructureDefinition/R4/DIPSHealthcareServiceAddress"
            ]
          }
        ]
      },
      {
        "id": "HealthcareService.extension:address.value[x]:valueAddress.city",
        "path": "HealthcareService.extension.valueAddress.city",
        "definition": "The name of the city, town, suburb, village or other community or delivery center.\r\ndipscoredb.dwkodeverkverdier table langtnavn column"
      },
      {
        "id": "HealthcareService.extension:address.value[x]:valueAddress.postalCode",
        "path": "HealthcareService.extension.valueAddress.postalCode",
        "definition": "A postal code designating a region defined by the postal service.\r\ndipscoredb.dwkodeverkverdier table kode column"
      },
      {
        "id": "HealthcareService.identifier",
        "path": "HealthcareService.identifier",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "system"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "HealthcareService.identifier:HCPIdentifierId",
        "path": "HealthcareService.identifier",
        "sliceName": "HCPIdentifierId"
      },
      {
        "id": "HealthcareService.identifier:HCPIdentifierId.system",
        "path": "HealthcareService.identifier.system",
        "fixedUri": "urn:oid:1.3.6.1.4.1.9038.51.1"
      },
      {
        "id": "HealthcareService.identifier:HCPIdentifierId.value",
        "path": "HealthcareService.identifier.value",
        "definition": "dipscoredb.dwhelsetjenesterolle table helsetjenesterolleid column"
      },
      {
        "id": "HealthcareService.identifier:HERIdentifier",
        "path": "HealthcareService.identifier",
        "sliceName": "HERIdentifier"
      },
      {
        "id": "HealthcareService.identifier:HERIdentifier.system",
        "path": "HealthcareService.identifier.system",
        "fixedUri": "urn:oid:2.16.578.1.12.4.1.2"
      },
      {
        "id": "HealthcareService.identifier:HERIdentifier.value",
        "path": "HealthcareService.identifier.value",
        "definition": "dipscoredb.dwhelsetjenesterolle table herid column"
      },
      {
        "id": "HealthcareService.identifier:HealthCareServiceIdentifier",
        "path": "HealthcareService.identifier",
        "sliceName": "HealthCareServiceIdentifier"
      },
      {
        "id": "HealthcareService.identifier:HealthCareServiceIdentifier.system",
        "path": "HealthcareService.identifier.system",
        "fixedUri": "http://dips.no/fhir/namingsystem/healthcareserviceId"
      },
      {
        "id": "HealthcareService.identifier:HealthCareServiceIdentifier.value",
        "path": "HealthcareService.identifier.value",
        "definition": "dipscoredb.cohealthservice table healthserviceid column"
      },
      {
        "id": "HealthcareService.active",
        "path": "HealthcareService.active",
        "definition": "Calculated using dipscoredb.dwhelsetjenesterolle table's gyldigfradato column and gyldigtildato column"
      },
      {
        "id": "HealthcareService.providedBy",
        "path": "HealthcareService.providedBy",
        "min": 1
      },
      {
        "id": "HealthcareService.providedBy.reference",
        "path": "HealthcareService.providedBy.reference",
        "definition": "dipscoredb.dwhelsetjenesterolle table organisasjonid column"
      },
      {
        "id": "HealthcareService.category.coding",
        "path": "HealthcareService.category.coding",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "system"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "HealthcareService.category.coding:dipsCoding",
        "path": "HealthcareService.category.coding",
        "sliceName": "dipsCoding"
      },
      {
        "id": "HealthcareService.category.coding:dipsCoding.system",
        "path": "HealthcareService.category.coding.system",
        "fixedUri": "urn:oid:1.3.6.1.4.1.9038.52.1003"
      },
      {
        "id": "HealthcareService.category.coding:dipsCoding.version",
        "path": "HealthcareService.category.coding.version",
        "max": "0"
      },
      {
        "id": "HealthcareService.category.coding:dipsCoding.code",
        "path": "HealthcareService.category.coding.code",
        "definition": "dipscoredb.dwkodeverkverdier table Kodeid column"
      },
      {
        "id": "HealthcareService.category.coding:dipsCoding.display",
        "path": "HealthcareService.category.coding.display",
        "definition": "dipscoredb.dwkodeverkverdier table Langtnavn column"
      },
      {
        "id": "HealthcareService.category.coding:dipsCoding.userSelected",
        "path": "HealthcareService.category.coding.userSelected",
        "max": "0"
      },
      {
        "id": "HealthcareService.category.coding:kithCoding",
        "path": "HealthcareService.category.coding",
        "sliceName": "kithCoding"
      },
      {
        "id": "HealthcareService.category.coding:kithCoding.system",
        "path": "HealthcareService.category.coding.system",
        "fixedUri": "urn:oid:2.16.578.1.12.4.1.1.9040"
      },
      {
        "id": "HealthcareService.category.coding:kithCoding.version",
        "path": "HealthcareService.category.coding.version",
        "max": "0"
      },
      {
        "id": "HealthcareService.category.coding:kithCoding.userSelected",
        "path": "HealthcareService.category.coding.userSelected",
        "max": "0"
      },
      {
        "id": "HealthcareService.category.text",
        "path": "HealthcareService.category.text",
        "max": "0"
      },
      {
        "id": "HealthcareService.type.coding",
        "path": "HealthcareService.type.coding",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "system"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "HealthcareService.type.coding:dipsCoding",
        "path": "HealthcareService.type.coding",
        "sliceName": "dipsCoding",
        "binding": {
          "strength": "required",
          "valueSet": "http://dips.no/fhir/ValueSet/DIPSHealthcareServiceTypes"
        }
      },
      {
        "id": "HealthcareService.type.coding:dipsCoding.version",
        "path": "HealthcareService.type.coding.version",
        "max": "0"
      },
      {
        "id": "HealthcareService.type.coding:dipsCoding.userSelected",
        "path": "HealthcareService.type.coding.userSelected",
        "max": "0"
      },
      {
        "id": "HealthcareService.type.coding:kithCoding",
        "path": "HealthcareService.type.coding",
        "sliceName": "kithCoding",
        "binding": {
          "strength": "required",
          "valueSet": "http://dips.no/fhir/ValueSet/KithHealthcareServiceTypes"
        }
      },
      {
        "id": "HealthcareService.type.coding:kithCoding.version",
        "path": "HealthcareService.type.coding.version",
        "max": "0"
      },
      {
        "id": "HealthcareService.type.coding:kithCoding.userSelected",
        "path": "HealthcareService.type.coding.userSelected",
        "max": "0"
      },
      {
        "id": "HealthcareService.type.text",
        "path": "HealthcareService.type.text",
        "max": "0"
      },
      {
        "id": "HealthcareService.specialty",
        "path": "HealthcareService.specialty",
        "max": "0"
      },
      {
        "id": "HealthcareService.location",
        "path": "HealthcareService.location",
        "min": 1,
        "max": "1"
      },
      {
        "id": "HealthcareService.location.reference",
        "path": "HealthcareService.location.reference",
        "definition": "dipscoredb.dwhelsetjenesterolle table lokid column"
      },
      {
        "id": "HealthcareService.name",
        "path": "HealthcareService.name",
        "definition": "Further description of the service as it would be presented to a consumer while searching.\r\nSERVICENAME FROM cohealthservice or ROLLENAVN from DWHELSETJENESTEROLLE",
        "min": 1
      },
      {
        "id": "HealthcareService.comment",
        "path": "HealthcareService.comment",
        "max": "0"
      },
      {
        "id": "HealthcareService.extraDetails",
        "path": "HealthcareService.extraDetails",
        "max": "0"
      },
      {
        "id": "HealthcareService.photo",
        "path": "HealthcareService.photo",
        "max": "0"
      },
      {
        "id": "HealthcareService.telecom",
        "path": "HealthcareService.telecom",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "system"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "HealthcareService.telecom:Phone",
        "path": "HealthcareService.telecom",
        "sliceName": "Phone",
        "max": "1"
      },
      {
        "id": "HealthcareService.telecom:Phone.system",
        "path": "HealthcareService.telecom.system",
        "min": 1,
        "fixedCode": "phone"
      },
      {
        "id": "HealthcareService.telecom:Phone.value",
        "path": "HealthcareService.telecom.value",
        "definition": "The actual contact point details, in a form that is meaningful to the designated communication system (i.e. phone number or email address).\r\ndipscoredb.cohealthservice table phone column",
        "min": 1
      },
      {
        "id": "HealthcareService.telecom:Phone.use",
        "path": "HealthcareService.telecom.use",
        "max": "0"
      },
      {
        "id": "HealthcareService.telecom:Phone.rank",
        "path": "HealthcareService.telecom.rank",
        "max": "0"
      },
      {
        "id": "HealthcareService.telecom:Phone.period",
        "path": "HealthcareService.telecom.period",
        "max": "0"
      },
      {
        "id": "HealthcareService.telecom:EMail",
        "path": "HealthcareService.telecom",
        "sliceName": "EMail",
        "max": "1"
      },
      {
        "id": "HealthcareService.telecom:EMail.system",
        "path": "HealthcareService.telecom.system",
        "min": 1,
        "fixedCode": "email"
      },
      {
        "id": "HealthcareService.telecom:EMail.value",
        "path": "HealthcareService.telecom.value",
        "definition": "The actual contact point details, in a form that is meaningful to the designated communication system (i.e. phone number or email address).\r\ndipscoredb.cohealthservice table email column",
        "min": 1
      },
      {
        "id": "HealthcareService.telecom:EMail.use",
        "path": "HealthcareService.telecom.use",
        "max": "0"
      },
      {
        "id": "HealthcareService.telecom:EMail.rank",
        "path": "HealthcareService.telecom.rank",
        "max": "0"
      },
      {
        "id": "HealthcareService.telecom:EMail.period",
        "path": "HealthcareService.telecom.period",
        "max": "0"
      },
      {
        "id": "HealthcareService.telecom:HomePage",
        "path": "HealthcareService.telecom",
        "sliceName": "HomePage",
        "max": "1"
      },
      {
        "id": "HealthcareService.telecom:HomePage.system",
        "path": "HealthcareService.telecom.system",
        "min": 1,
        "fixedCode": "other"
      },
      {
        "id": "HealthcareService.telecom:HomePage.value",
        "path": "HealthcareService.telecom.value",
        "definition": "The actual contact point details, in a form that is meaningful to the designated communication system (i.e. phone number or email address).\r\ndipscoredb.cohealthservice table homepageurl column",
        "min": 1
      },
      {
        "id": "HealthcareService.telecom:HomePage.use",
        "path": "HealthcareService.telecom.use",
        "max": "0"
      },
      {
        "id": "HealthcareService.telecom:HomePage.rank",
        "path": "HealthcareService.telecom.rank",
        "max": "0"
      },
      {
        "id": "HealthcareService.telecom:HomePage.period",
        "path": "HealthcareService.telecom.period",
        "max": "0"
      },
      {
        "id": "HealthcareService.coverageArea",
        "path": "HealthcareService.coverageArea",
        "max": "0"
      },
      {
        "id": "HealthcareService.serviceProvisionCode",
        "path": "HealthcareService.serviceProvisionCode",
        "max": "0"
      },
      {
        "id": "HealthcareService.eligibility",
        "path": "HealthcareService.eligibility",
        "max": "0"
      },
      {
        "id": "HealthcareService.program",
        "path": "HealthcareService.program",
        "max": "0"
      },
      {
        "id": "HealthcareService.characteristic",
        "path": "HealthcareService.characteristic",
        "max": "0"
      },
      {
        "id": "HealthcareService.communication.coding.id",
        "path": "HealthcareService.communication.coding.id",
        "max": "0"
      },
      {
        "id": "HealthcareService.communication.coding.extension",
        "path": "HealthcareService.communication.coding.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "HealthcareService.communication.coding.extension:communicationProtocol",
        "path": "HealthcareService.communication.coding.extension",
        "sliceName": "communicationProtocol",
        "min": 0,
        "max": "*",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://dips.no/fhir/StructureDefinition/R4/DIPSHealthcareServiceCommunicationProtocol"
            ]
          }
        ]
      },
      {
        "id": "HealthcareService.communication.coding.extension:communicationProtocol.value[x]:valueCoding.id",
        "path": "HealthcareService.communication.coding.extension.valueCoding.id",
        "max": "0"
      },
      {
        "id": "HealthcareService.communication.coding.extension:communicationProtocol.value[x]:valueCoding.system",
        "path": "HealthcareService.communication.coding.extension.valueCoding.system",
        "fixedUri": "http://dips.no/fhir/namingsystem/communication-protocol"
      },
      {
        "id": "HealthcareService.communication.coding.extension:communicationProtocol.value[x]:valueCoding.version",
        "path": "HealthcareService.communication.coding.extension.valueCoding.version",
        "max": "0"
      },
      {
        "id": "HealthcareService.communication.coding.extension:communicationProtocol.value[x]:valueCoding.code",
        "path": "HealthcareService.communication.coding.extension.valueCoding.code",
        "definition": "dipscoredb.dwkodeverkverdier table Kode column"
      },
      {
        "id": "HealthcareService.communication.coding.extension:communicationProtocol.value[x]:valueCoding.display",
        "path": "HealthcareService.communication.coding.extension.valueCoding.display",
        "definition": "dipscoredb.dwkodeverkverdier table langtnavn column"
      },
      {
        "id": "HealthcareService.communication.coding.extension:communicationProtocol.value[x]:valueCoding.userSelected",
        "path": "HealthcareService.communication.coding.extension.valueCoding.userSelected",
        "max": "0"
      },
      {
        "id": "HealthcareService.communication.coding.extension:isPaperCopy",
        "path": "HealthcareService.communication.coding.extension",
        "sliceName": "isPaperCopy",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://dips.no/fhir/StructureDefinition/R4/DIPSHealthcareServiceIsPaperCopy"
            ]
          }
        ]
      },
      {
        "id": "HealthcareService.communication.coding.extension:isPaperCopy.valueBoolean:valueBoolean",
        "path": "HealthcareService.communication.coding.extension.valueBoolean",
        "sliceName": "valueBoolean",
        "definition": "dipscoredb.dwedioppsett table papirkopi column"
      },
      {
        "id": "HealthcareService.communication.coding.system",
        "path": "HealthcareService.communication.coding.system",
        "fixedUri": "http://dips.no/fhir/namingsystem/communication-type"
      },
      {
        "id": "HealthcareService.communication.coding.version",
        "path": "HealthcareService.communication.coding.version",
        "max": "0"
      },
      {
        "id": "HealthcareService.communication.coding.code",
        "path": "HealthcareService.communication.coding.code",
        "definition": "dipscoredb.dwkodeverkverdier table Kode column"
      },
      {
        "id": "HealthcareService.communication.coding.display",
        "path": "HealthcareService.communication.coding.display",
        "definition": "dipscoredb.dwkodeverkverdier table Langtnavn column"
      },
      {
        "id": "HealthcareService.communication.coding.userSelected",
        "path": "HealthcareService.communication.coding.userSelected",
        "max": "0"
      },
      {
        "id": "HealthcareService.referralMethod",
        "path": "HealthcareService.referralMethod",
        "max": "0"
      },
      {
        "id": "HealthcareService.appointmentRequired",
        "path": "HealthcareService.appointmentRequired",
        "max": "0"
      },
      {
        "id": "HealthcareService.availableTime",
        "path": "HealthcareService.availableTime",
        "max": "0"
      },
      {
        "id": "HealthcareService.notAvailable",
        "path": "HealthcareService.notAvailable",
        "max": "0"
      },
      {
        "id": "HealthcareService.availabilityExceptions",
        "path": "HealthcareService.availabilityExceptions",
        "max": "0"
      },
      {
        "id": "HealthcareService.endpoint",
        "path": "HealthcareService.endpoint",
        "max": "0"
      }
    ]
  }
}