FHIR Artifacts > Operations

Summary of Operations

Operations Resource HTTP Verb
Operation #1 e.g. Bundle e.g POST or GET
Operation #2 e.g. Bundle GET, POST

Actors

Actor Description Application Example
e.g. Patient Summary Document Source Example description -- An Ontario Patient Summary Document Source is the producer and submitter of Patient Summary documents, conformant to this specification, and document metadata. e.g. EMR, HIS
Actor #2 Description of actor #2 example of actor #2
Actor #n Description of actor #n example of actor #n

Operation: [Name of the operation]

[Insert a brief description of the operation]

Name Optionality Type Description Usage Note Example
patient.identifier mandatory token This parameter specifies an identifier associated with the patient who is the subject of this e.g. medication document. Ontario health card number (HCN), Medical Record Number (MRN) or ECID (Ontario Enterprise Client ID ) are allowed as a Patient ID parameter. Please note that Health Number Version is not supported. patient.identifier=[id-system-global-base/ca-on-patient-hcn|12345678

patient.identifier=http://ehealthontario.ca/fhir/
NamingSystem/id-general-ottawa-hospital-mrn|12345678


patient.identifier=http://ehealthontario.ca/fhir/
NamingSystem/id-pcr-eid|12345678
patient.gender conditional token This parameter specifies the gender of the patient associated with the e.g. medication document. This parameter should contain the sex at birth as noted on the Ontario health card patient.gender=female
patient.birthdate conditional date This parameter specifies the birth date of patient who is the subject of this e.g. medication document. This parameter should contain the Date of Birth of the patient as on the Ontario health card.

Note: This parameter SHALL be provided when the patient identifier is HCN or MRN. It is not required for queries where the patient identifier is the ECID.
patient.birthdate=1971-11-28
[date] optional date This parameter specifies drug administratio date. If there is no lower limit in the search request, the server will use the default configuration value of 120 days back.
Note: The following prefixes can be used for the date parameter: eg, gt, lt, ge and le. If no prefix is present, the prefix eq is assumed. For the full list of parameters prefixes and modifiers click here
[date]=gt2018-02-24

[date]=ge2018-02-25&[date]=le2019-02-27
_sort optional string Sort order by [date] parameter If not indicated in the request, the default sort order is by [date] descending _sort=[date] (ascending)

_sort=-[date] (descending)
_count optional integer Size limit for response paging If there is no _count in the search request, the server will use the default configuration value of 50 records per page.
_count=10
_format optional string JSON (default) or XML _format=application/fhir+xml

Query Search Parameters Description Usage Note
Sample search parameter e.g. patient.identifier (bundle.composition.patient.identifier) Add description here e.g. This parameter specifies an identifier associated with the patient who is the subject of this Patient Summary. This use of patient.identifier follows the FHIR Chaining Parameters search methodology. Provide any usage notes e.g. Generally this would be the patient's jurisdictional health number, but in some cases might be an alternative identifier such as MRN. Should include both system and value.
Search Parameter #2 Description of the search parameters #2 Usage notes for search parameters #2
Search Parameter #n Description of the search parameters #n Usage notes for search parameters #n

Scope

Use this section to describe the scope of the above mentioned operation. The section highlighted in yellow is left as a sample only

This transaction involves a request by an Ontario Patient Summary Document Consumer for a set of Patient Summary documents matching the specified search criteria. The request is received by the Ontario Patient Summary Responder which returns a Bundle containing the matching Patient Summary Compositions.

For example, an Electronic Medical Record (EMR) user is seeing a new patient and wants to see a list of Patient Summaries available for that patient. The EMR uses the patient information held in the EMR to query the repository for any Patient Summary documents that exist for that patient. The repository returns a Bundle of any matching Patient Summaries which is then displayed to the EMR user as a list. The EMR or other PoS system is responsibile for listing the available patient summaries for the user to review; this is not an aspect of the query operation its

Interaction Diagram

`If applicable add an interaction diagram for the operation and describe the actors. The text below in yellow is for reference only'

Could not find subject. File not found for 'subject=SearchPSON'

Actor: Ontario Patient Summary Document Consumer

Role: Requests a set of Patient Summary documents from the Ontario Patient Summary Document Responder based on specified search criteria.

Actor: Ontario Patient Summary Document Responder

Role: Returns a Bundle containing Patient Summary documents that match the search criteria specified by the Ontario Patient Summary Document Consumer.

Specification

Use this section to describe and define the composition of the operation along with the syntax of the supported HTTP operations. Also describe the expected response for the queries, include example search queries and expected behaviour. The yellow highlighted text below is for reference only

This specification is based on the FHIR R4 Search operation.

Patient Summary Search Request

The Search operation will return a Bundle resource containing the Patient Summary Compositions that match the specified search criteria. The Patient Summary Search Request supports both GET and POST; PS-ON prefers the use of POST to avoid putting PHI in request URLs.

GET [base]/Bundle?([parameters]{&_format=[mime-type]})

POST [base]/Bundle/_search{?&_format=[mime-type]}

Patient Summary Search Response

A Patient Summary Search Response may contain either:

  • Bundle containing Patient Summary Compositions matching the search criteria
  • OperationOutcome resource

Example Search Queries

Search by Patient Identifier

[base]/Bundle?composition.patient.identifier=https%3A%2F%2Ffhir.infoway-inforoute.ca%2FNamingSystem%2Fca-on-patient-hcn|1234567890

Search for Summaries for a Specified Patient Created in 2020 or Later

[base]Bundle?composition.patient.identifier=https%3A%2F%2Ffhir.infoway-inforoute.ca%2FNamingSystem%2Fca-on-patient-hcn|1234567890&timestamp=ge2020

Expected Behaviour

Use this section to describe the expected scenarios and corresponding HTTP Status Codes returned. The table below in yellow is for reference only.

See

Command 'pagelink' could not render: Page not found.
page for a complete listing of response codes.

Case Scenario Description HTTP Status Code Response Payload
1 At least one Patient Summary matching the specified search criteria is found HTTP 200 OK. Returns a search result Bundle containing Patient Summary compositions that match the search criteria.
2 At least one Patient Summary matching the specified search criteria is found, but there is a consent block that prevents disclosure of patient data HTTP 200 OK. Returns an OperationOutcome resource indicating that there is a consent block on the patient's record that prevents disclosure of patient data.
3 No Patient Summaries matching the specified search criteria are found HTTP 200 OK. Returns an search result Bundle with zero search results. Also returns an OperationOutcome resource with a warning indicating no summaries were found.
4 The was an error in the search request and it could not be fulfilled HTTP 400 Bad Request. Returns an OperationOutcome resource indicating an issue.
5 POST operation contains incorrect header value for "Content-Type" - should be "application/fhir+json" HTTP 400 Bad Request. Returns an OperationOutcome resource indicating an issue.
6 Patient Summary API validates the request but cannot return a valid response due to internal issues. HTTP 500 Internal Server Error. Returns an OperationOutcome resource indicating an issue.