{
  "resourceType": "StructureDefinition",
  "meta": {
    "lastUpdated": "2020-01-02T13:47:56.522+00:00"
  },
  "url": "http://hl7.fi/fhir/StructureDefinition/FinnishSchedulingPractitioner",
  "name": "FinnishSchedulingPractitioner",
  "status": "draft",
  "date": "2020-01-02T13:47:56.2103709+00:00",
  "description": "Practitioner details for Finnish Scheduling (including various Finnish social and healthcare professional id types)",
  "fhirVersion": "4.0.0",
  "mapping": [
    {
      "identity": "v2",
      "uri": "http://hl7.org/v2",
      "name": "HL7 v2 Mapping"
    },
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    },
    {
      "identity": "servd",
      "uri": "http://www.omg.org/spec/ServD/1.0/",
      "name": "ServD"
    },
    {
      "identity": "w5",
      "uri": "http://hl7.org/fhir/fivews",
      "name": "FiveWs Pattern Mapping"
    }
  ],
  "kind": "resource",
  "abstract": false,
  "type": "Practitioner",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Practitioner",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Practitioner.identifier",
        "path": "Practitioner.identifier",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "system"
            }
          ],
          "rules": "open"
        },
        "min": 1,
        "max": "1"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierOfficial",
        "path": "Practitioner.identifier",
        "sliceName": "sliceIdentifierOfficial",
        "max": "1"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierOfficial.use",
        "path": "Practitioner.identifier.use",
        "min": 1,
        "fixedCode": "official"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierOfficial.type",
        "path": "Practitioner.identifier.type",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierOfficial.system",
        "path": "Practitioner.identifier.system",
        "requirements": "Ammattihenkilön hetu\r\n\r\nThere are many sets  of identifiers.  To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.",
        "min": 1,
        "fixedUri": "urn:oid:1.2.246.21"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierOfficial.value",
        "path": "Practitioner.identifier.value",
        "min": 1
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierOfficial.period",
        "path": "Practitioner.identifier.period",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierOfficial.assigner",
        "path": "Practitioner.identifier.assigner",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierTerhikki",
        "path": "Practitioner.identifier",
        "sliceName": "sliceIdentifierTerhikki",
        "max": "1"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierTerhikki.use",
        "path": "Practitioner.identifier.use",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierTerhikki.type",
        "path": "Practitioner.identifier.type",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierTerhikki.system",
        "path": "Practitioner.identifier.system",
        "requirements": "Terveydenhuollon ammattihenkilöiden keskusrekisteirn tunnus\r\n\r\nThere are many sets  of identifiers.  To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.",
        "min": 1,
        "fixedUri": "urn:oid:1.2.246.537.26"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierTerhikki.value",
        "path": "Practitioner.identifier.value",
        "min": 1
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierTerhikki.period",
        "path": "Practitioner.identifier.period",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierTerhikki.assigner",
        "path": "Practitioner.identifier.assigner",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierVRK",
        "path": "Practitioner.identifier",
        "sliceName": "sliceIdentifierVRK",
        "max": "1"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierVRK.use",
        "path": "Practitioner.identifier.use",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierVRK.type",
        "path": "Practitioner.identifier.type",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierVRK.system",
        "path": "Practitioner.identifier.system",
        "requirements": "VRK:n yksilöivä tunnus\r\n\r\nThere are many sets  of identifiers.  To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.",
        "min": 1,
        "fixedUri": "urn:oid:1.2.246.537.29"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierVRK.value",
        "path": "Practitioner.identifier.value",
        "min": 1
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierVRK.period",
        "path": "Practitioner.identifier.period",
        "max": "0"
      },
      {
        "id": "Practitioner.identifier:sliceIdentifierVRK.assigner",
        "path": "Practitioner.identifier.assigner",
        "max": "0"
      },
      {
        "id": "Practitioner.active",
        "path": "Practitioner.active",
        "max": "0"
      },
      {
        "id": "Practitioner.name",
        "path": "Practitioner.name",
        "max": "1"
      },
      {
        "id": "Practitioner.address",
        "path": "Practitioner.address",
        "max": "0"
      },
      {
        "id": "Practitioner.photo",
        "path": "Practitioner.photo",
        "max": "1"
      },
      {
        "id": "Practitioner.qualification",
        "path": "Practitioner.qualification",
        "max": "0"
      },
      {
        "id": "Practitioner.communication",
        "path": "Practitioner.communication",
        "requirements": "Kielet, jolla kykenee palvelemaan\r\n\r\nKnowing which language a practitioner speaks can help in facilitating communication with patients."
      },
      {
        "id": "Practitioner.communication.coding.system",
        "path": "Practitioner.communication.coding.system",
        "fixedUri": "1.2.246.537.5.40175.2008"
      }
    ]
  }
}