FHIR © HL7.org  |  Server Home  |  XIG Home  |  Server Source  |  FHIR  

FHIR IG Statistics: OperationDefinition/slot-prefetch

Packagefhir.argonaut.scheduling
TypeOperationDefinition
Idslot-prefetch
FHIR VersionR3
Sourcehttp://fhir.org/guides/argonaut/scheduling/https://simplifier.net/resolve?scope=fhir.argonaut.scheduling@1.0.0&canonical=http://fhir.org/guides/argonaut-scheduling/OperationDefinition/slot-prefetch
URLhttp://fhir.org/guides/argonaut-scheduling/OperationDefinition/slot-prefetch
Version1.0.0
Statusactive
Date2018-02-12T19:00:00+11:00
NameAvailability_Prefetch_Operation
Realmus
Authorityhl7
DescriptionThis operation fetches available free slots for the 'initial load', update and reconciliation steps in the [Prefetch Use Case](patient-scheduling.html#use-case-3-prefetching-open-slots). The server determines which open slots to expose to the application for use in creating new appointments. If neither a start or end date is given then the maximum period as defined by local business rules and starting from when the operation was transacted SHALL be used. The actors practitioner, organization and location further refine the search.
Typetrue
Kindoperation

Resources that use this resource

CapabilityStatement
clientArgonaut Scheduling Client CapabilityStatement
serverArgonaut Scheduling Server CapabilityStatement

Resources that this resource uses

No resources found


Narrative

Note: links and images are rebased to the (stated) source

Availability Prefetch Operation

OPERATION: Availability Prefetch Operation

The official URL for this operation definition is:

http://fhir.org/guides/argonaut-scheduling/OperationDefinition/slot-prefetch

This operation fetches available free slots for the 'initial load', update and reconciliation steps in the Prefetch Use Case. The server determines which open slots to expose to the application for use in creating new appointments. If neither a start or end date is given then the maximum period as defined by local business rules and starting from when the operation was transacted SHALL be used. The actors practitioner, organization and location further refine the search.

URL: [base]/Slot/$prefetch

Parameters

Use Name Cardinality Type Binding Documentation
IN start 1..1 dateTime

The period of time that should be checked for free slots. If no start date is provided, all available slots prior to the end date are in scope (subject to limits imposed by local business rules).

IN end 1..1 dateTime

The period of time that should be checked for appointment availability. If no end date is provided, all available slots after the start date are in scope (subject to limits imposed by local business rules).

IN practitioner 0..* uri

The Practitioner reference when performing a provider based query. This is a reference to a FHIR Practitioner resource, e.g. 'Practitioner/123'.

IN organization 0..* uri

The Organization reference when performing a provider based query. This is a reference to a FHIR Organization resource, e.g. 'Organization/abc'.

IN location-string 0..* string

A (part of the) address of the location of interest. (e.g., zip codes, city or state). This string parameter is interpreted as a String search parameter and covers the string type elements in the Address datatype.

IN location-reference 0..* uri

A Location reference when performing an operation where the Location resource id is known.

OUT return 0..1 Bundle(Argonaut Slot Bundle Profile)

An Argonaut Slot Bundle Profile of type searchset with entries of proposed Slot resources and may also contain an OperationOutcome with errors, warnings or information as a result of processing the operation - e.g., an informational notice that the returned slots are not within the requested start and end times. An empty bundle means no available slots based on inputs

  • All input parameters are simple types allowing either the GET or the POST syntax to be used to initiate the interaction. Examples of both are shown below.
  • If more than one actor type is present, the response SHALL contain slots with all of these actors (i.e, this is a logical 'AND'). If an actor type is repeated the response SHALL contain slots with any of these actors and the order SHOULD be interpreted as the order of preference (i.e. this is a logical 'OR' and does not drive a joint appointment with multiple practitioners. locations or organizations).
  • References can be to an absolute URL, but servers only perform operations on their own resources.

Source

{
  "resourceType": "OperationDefinition",
  "id": "slot-prefetch",
  "text": {
    "status": "generated",
    "div": "<!-- snip (see above) -->"
  },
  "url": "http://fhir.org/guides/argonaut-scheduling/OperationDefinition/slot-prefetch",
  "version": "1.0.0",
  "name": "Availability_Prefetch_Operation",
  "status": "active",
  "kind": "operation",
  "date": "2018-02-12T19:00:00+11:00",
  "description": "This operation fetches available free slots for the 'initial load', update and reconciliation steps in the [Prefetch Use Case](patient-scheduling.html#use-case-3-prefetching-open-slots).  The server determines which open slots to expose to the application for use in creating new appointments.  If neither a start or end date is given then the maximum period as defined by local business rules and starting from when the operation was transacted SHALL be used.   The actors practitioner, organization and location further refine the search.",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "urn:iso:std:iso:3166",
          "code": "US",
          "display": "United States of America"
        }
      ]
    }
  ],
  "code": "find",
  "comment": "Note that all input parameters are simple types allowing either the 'GET'  or the 'POST' syntax to be used to initiate the interaction.  Examples of both are shown below.\n\n -  If more than one actor type is present, the response SHALL contain slots with *all* of these actors (i.e, this is a logical 'AND').  If an actor type is repeated, the response SHALL contain slots with *any* of these actors and the order SHOULD be interpreted as the order of preference (i.e. this is a logical  'OR' and  does not drive a joint appointment with multiple practitioners. locations or organizations).",
  "resource": [
    "Slot"
  ],
  "system": false,
  "type": true,
  "instance": false,
  "parameter": [
    {
      "name": "start",
      "use": "in",
      "min": 1,
      "max": "1",
      "documentation": "The period of time that should be checked for free slots. If no start date is provided,  all available slots prior to the end date are in scope (subject to limits imposed by local business rules).",
      "type": "dateTime"
    },
    {
      "name": "end",
      "use": "in",
      "min": 1,
      "max": "1",
      "documentation": "The period of time that should be checked for appointment availability. If no end date is provided, all available slots after the start date are in scope (subject to limits imposed by local business rules).",
      "type": "dateTime"
    },
    {
      "name": "practitioner",
      "use": "in",
      "min": 0,
      "max": "*",
      "documentation": "The Practitioner reference when performing a provider based query.  This is a reference to a FHIR Practitioner resource,  e.g. 'Practitioner/123'.",
      "type": "uri"
    },
    {
      "name": "organization",
      "use": "in",
      "min": 0,
      "max": "*",
      "documentation": "The Organization reference when performing a provider based query.  This is a reference to a FHIR Organization resource,  e.g. 'Organization/abc'.",
      "type": "uri"
    },
    {
      "name": "location-string",
      "use": "in",
      "min": 0,
      "max": "*",
      "documentation": "A (part of the) address of the location of interest.  (e.g., zip codes, city or state).  This string parameter is interpreted as a  [String search parameter](http://build.fhir.org/search.html#string) and covers the `string` type elements in the [Address datatype](http://build.fhir.org/datatypes.html#Address).",
      "type": "string",
      "searchType": "string"
    },
    {
      "name": "location-reference",
      "use": "in",
      "min": 0,
      "max": "*",
      "documentation": "A Location reference when performing an operation where the Location resource `id` is known.",
      "type": "uri"
    },
    {
      "name": "return",
      "use": "out",
      "min": 0,
      "max": "1",
      "documentation": "An [Argonaut Slot Bundle Profile](StructureDefinition-prefetch-slot.html) of type `searchset` with entries of proposed [Slot](http://build.fhir.org/slot.html) resources and may also contain an [OperationOutcome](http://build.fhir.org/operationoutcome.html) with errors, warnings or information as a result of processing the operation - e.g., an informational notice that the returned slots are not within the requested start and end times.  An empty bundle means no available slots based on inputs",
      "type": "Bundle",
      "profile": {
        "reference": "http://fhir.org/guides/argonaut-scheduling/StructureDefinition/slot-bundle"
      }
    }
  ]
}