{
  "resourceType": "StructureDefinition",
  "url": "https://vvis.gov.lv/fhir/StructureDefinition/Slot",
  "name": "Slot",
  "status": "draft",
  "fhirVersion": "5.0.0",
  "kind": "resource",
  "abstract": false,
  "type": "Slot",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Slot",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Slot.extension",
        "path": "Slot.extension",
        "max": "0"
      },
      {
        "id": "Slot.modifierExtension",
        "path": "Slot.modifierExtension",
        "max": "0"
      },
      {
        "id": "Slot.identifier",
        "path": "Slot.identifier",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Slot.identifier.extension",
        "path": "Slot.identifier.extension",
        "max": "0"
      },
      {
        "id": "Slot.identifier.use",
        "path": "Slot.identifier.use",
        "max": "0"
      },
      {
        "id": "Slot.identifier.type",
        "path": "Slot.identifier.type",
        "max": "0"
      },
      {
        "id": "Slot.identifier.system",
        "path": "Slot.identifier.system",
        "max": "0"
      },
      {
        "id": "Slot.identifier.value",
        "path": "Slot.identifier.value",
        "min": 1
      },
      {
        "id": "Slot.identifier.period",
        "path": "Slot.identifier.period",
        "max": "0"
      },
      {
        "id": "Slot.identifier.assigner",
        "path": "Slot.identifier.assigner",
        "max": "0"
      },
      {
        "id": "Slot.serviceCategory",
        "path": "Slot.serviceCategory",
        "max": "0"
      },
      {
        "id": "Slot.serviceType",
        "path": "Slot.serviceType",
        "definition": "The type of appointments that can be booked into this slot (ideally this would be an identifiable service - which is at a location, rather than the location itself). If provided then this overrides the value provided on the Schedule resource.\r\n\r\n//Pakalpojums. Uz vienu slotu var būt vairāki. Kad rezervēts var būt vairāki. Kad busy, tad tikai viens.\r\nIntegratoram jānodrošina, ka slot typs atbilst schedule tipam un mēs savā pusē to validējam.",
        "min": 1,
        "max": "5"
      },
      {
        "id": "Slot.serviceType.extension",
        "path": "Slot.serviceType.extension",
        "max": "0"
      },
      {
        "id": "Slot.serviceType.concept",
        "path": "Slot.serviceType.concept",
        "min": 1
      },
      {
        "id": "Slot.serviceType.concept.coding",
        "path": "Slot.serviceType.concept.coding",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Slot.serviceType.concept.coding.system",
        "path": "Slot.serviceType.concept.coding.system",
        "min": 1
      },
      {
        "id": "Slot.serviceType.concept.coding.version",
        "path": "Slot.serviceType.concept.coding.version",
        "max": "0"
      },
      {
        "id": "Slot.serviceType.concept.coding.code",
        "path": "Slot.serviceType.concept.coding.code",
        "min": 1
      },
      {
        "id": "Slot.serviceType.concept.coding.display",
        "path": "Slot.serviceType.concept.coding.display",
        "min": 1
      },
      {
        "id": "Slot.serviceType.concept.coding.userSelected",
        "path": "Slot.serviceType.concept.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Slot.serviceType.concept.text",
        "path": "Slot.serviceType.concept.text",
        "max": "0"
      },
      {
        "id": "Slot.serviceType.reference",
        "path": "Slot.serviceType.reference",
        "min": 1
      },
      {
        "id": "Slot.serviceType.reference.reference",
        "path": "Slot.serviceType.reference.reference",
        "min": 1
      },
      {
        "id": "Slot.serviceType.reference.type",
        "path": "Slot.serviceType.reference.type",
        "min": 1,
        "fixedUri": "HealthcareService"
      },
      {
        "id": "Slot.serviceType.reference.identifier",
        "path": "Slot.serviceType.reference.identifier",
        "max": "0"
      },
      {
        "id": "Slot.serviceType.reference.display",
        "path": "Slot.serviceType.reference.display",
        "max": "0"
      },
      {
        "id": "Slot.specialty",
        "path": "Slot.specialty",
        "max": "0"
      },
      {
        "id": "Slot.appointmentType",
        "path": "Slot.appointmentType",
        "definition": "The style of appointment or patient that may be booked in the slot (not service type).\r\n\r\n//ieliksim tagad, piereģistrēsim klasifikatoru, bet neliksim obligāti pildīt. vai pagaidām likt noklusējuma vērtību?",
        "max": "0"
      },
      {
        "id": "Slot.appointmentType.extension",
        "path": "Slot.appointmentType.extension",
        "max": "0"
      },
      {
        "id": "Slot.appointmentType.coding",
        "path": "Slot.appointmentType.coding",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Slot.appointmentType.coding.extension",
        "path": "Slot.appointmentType.coding.extension",
        "max": "0"
      },
      {
        "id": "Slot.appointmentType.coding.system",
        "path": "Slot.appointmentType.coding.system",
        "min": 1
      },
      {
        "id": "Slot.appointmentType.coding.version",
        "path": "Slot.appointmentType.coding.version",
        "max": "0"
      },
      {
        "id": "Slot.appointmentType.coding.code",
        "path": "Slot.appointmentType.coding.code",
        "min": 1
      },
      {
        "id": "Slot.appointmentType.coding.display",
        "path": "Slot.appointmentType.coding.display",
        "min": 1
      },
      {
        "id": "Slot.appointmentType.coding.userSelected",
        "path": "Slot.appointmentType.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Slot.appointmentType.text",
        "path": "Slot.appointmentType.text",
        "max": "0"
      },
      {
        "id": "Slot.schedule.extension",
        "path": "Slot.schedule.extension",
        "max": "0"
      },
      {
        "id": "Slot.schedule.reference",
        "path": "Slot.schedule.reference",
        "min": 1
      },
      {
        "id": "Slot.schedule.type",
        "path": "Slot.schedule.type",
        "definition": "The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.\n\nThe type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. \"Patient\" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).\r\n\r\n//tas ko mēs sagaidām ir schedula typs. Validācijā pateikt, ka recerence sākas ar vārdu \"schedule/\"",
        "min": 1,
        "fixedUri": "Schedule"
      },
      {
        "id": "Slot.schedule.identifier",
        "path": "Slot.schedule.identifier",
        "max": "0"
      },
      {
        "id": "Slot.schedule.display",
        "path": "Slot.schedule.display",
        "max": "0"
      },
      {
        "id": "Slot.start",
        "path": "Slot.start",
        "comment": "Note: This is intended for where precisely observed times are required, typically system logs etc., and not human-reported times - for them, see date and dateTime (which can be as precise as instant, but is not required to be) below. UTC offset is always required\r\n\r\n//vēršam uzmanību, ka 'instant' nosaka to, ka start un end date jāiesūta datums uz laiks. Piemērs yyy-mm-ddThh:mm:ss+00:00 UTC"
      },
      {
        "id": "Slot.end",
        "path": "Slot.end",
        "comment": "Note: This is intended for where precisely observed times are required, typically system logs etc., and not human-reported times - for them, see date and dateTime (which can be as precise as instant, but is not required to be) below. UTC offset is always required\r\n\r\n//vēršam uzmanību, ka 'instant' nosaka to, ka start un end date jāiesūta datums uz laiks. Piemērs yyy-mm-ddThh:mm:ss+00:00 UTC"
      },
      {
        "id": "Slot.overbooked",
        "path": "Slot.overbooked",
        "max": "0"
      },
      {
        "id": "Slot.comment",
        "path": "Slot.comment",
        "max": "0"
      }
    ]
  }
}