@prefix fhir: . @prefix owl: . @prefix rdf: . @prefix rdfs: . @prefix xsd: . # - resource ------------------------------------------------------------------- a fhir:CapabilityStatement ; fhir:nodeRole fhir:treeRoot ; fhir:id [ fhir:v "pca-publisher-agent"] ; # fhir:text [ fhir:status [ fhir:v "extensions" ] ; fhir:div "

Generated Narrative: CapabilityStatement pca-publisher-agent

PCA Publisher Agent Capability Statement

  • Implementation Guide Version: 25.1.0.0
  • FHIR Version: 4.0.1
  • Supported Formats: application/fhir+json, application/fhir+xml
  • Supported Patch Formats:
  • Published on: 2025-05-14 10:38:26+1000
  • Published by: Australian Digital Health Agency

Note to Implementers: FHIR Capabilities

Any FHIR capability may be 'allowed' by the system unless explicitly marked as 'SHALL NOT'. A few items are marked as MAY in the Implementation Guide to highlight their potential relevance to the use case.

FHIR RESTful Capabilities

Mode: server

A PCA Publisher Agent manages the service offerings for one publisher organisation.

\n

The PCA service instantiates one PCA Publisher Agent for each participating publisher organisation. That is, each publisher organisation interacts with a PCA Publisher Agent located at a publisher agent base URL that is unique to that organisation.

\n

The publisher agent base URL for a particular organisation is available via the PCA portal on the 'Organisation Details' screen of the publisher organisation.

\n

Publication process

\n

A PCA Publisher Agent creates the Location, HealthcareService and PractitionerRole resources (that are associated with existing Organization and Practitioner resources) that represent their service offerings. These resources are made available to a subscriber organisation when a publisher authorises publication of a HealthcareService or PractitionerRole resource to one or more of the subscriber organisation's partner services.

\n

The authority to publish is represented using Contract resources which are also implemented by the PCA Publisher Agent (see the Contract resource endpoint).

\n

Identifier disclosure rules

\n

The PCA service enforces certain business rules regarding the disclosure of Identifiers (including subscriber-issued identifiers) in the resources that it makes available to subscribers.

\n

The result of these rules may be that a copy of a resource received by one subscriber may contain Identifiers that are not included in the copy of the same resource that is received by a different subscriber.

\n

In the case of HPI-Is these identifier disclosure rules ensure that relevant legal requirements are complied with.

\n

Other identifier disclosure rules are defined by the PCA operator.

\n

The identifier disclosure rules are applied automatically at the time that the resource is retrieved by the target PCA Subscriber Agent.

\n

Authorisation rules

\n

Authorised client systems are only permitted to interact with a PCA Publisher Agent API where the participating organisation associated with the PCA Publisher Agent has a publisher approval status of 'Approved'.

\n

Resource profiles and extensions

\n

This API specification defines the required resource profiles for each operation. In addition, the PCA Publisher Agent will reject any request to create or update a resource that contains any extensions (including modifier extensions) not explicitly defined in that resource profile.

\n
Security
Enable CORS: yes
Security services supported: OAuth

This server implements OAuth2

\n
Summary of System-wide Interactions
  • Supports the search-systeminteraction described as follows:

    Definition:
    \nThis operation is a RESTful search interaction (whole system interaction), across multiple resource types (as described in the FHIR specification).

    \n

    Behaviour:
    \nThis operation is used by a client system operated by a publisher organisation to get resources that match the specified search parameters and that are within the scope of the publisher organisation.

    \n

    The following search parameters are supported:

    \n
      \n
    • \n

      _lastUpdated is used to get the resources that have been added or changed since the requesting system last synchronised their local data store with PCA Publisher Agent. This search parameter supports the gt and lt comparison prefixes.

      \n
    • \n
    • \n

      _type is used to filter the resources returned by their resource type. The available types are:

      \n\n
    • \n
    • \n

      _include (and _include:iterate) are used in order that all the resources that match the _lastUpdated and _type filters will be accompanied, in the result Bundle, with all the other resources which they reference (directly or indirectly).

      \n
    • \n
    \n

    Note that the use of _include (and _include:iterate) means that a resource may be present in the result Bundle either because it matched the other query parameters or because it was referenced (possibly indirectly) by another resource that matched the other query parameters.

    \n

    All of the following query parameters are required in order to receive the complete set of resources that have been created or changed since [last_synchronized]:

    \n

    _lastUpdated=[last_synchronized]
    \n_type=HealthcareService,PractitionerRole,Practitioner,Organization,Location,Provenance,Contract,Task
    \n_include=Location:organization
    \n_include=HealthcareService:organization
    \n_include=HealthcareService:location
    \n_include=PractitionerRole:organization
    \n_include=PractitionerRole:location
    \n_include=PractitionerRole:service
    \n_include=PractitionerRole:practitioner
    \n_include=Provenance:target
    \n_include=Contract:subject
    \n_include:iterate=HealthcareService:organization
    \n_include:iterate=HealthcareService:location
    \n_include:iterate=PractitionerRole:organization
    \n_include:iterate=PractitionerRole:location
    \n_include:iterate=PractitionerRole:service
    \n_include:iterate=PractitionerRole:practitioner

    \n

    This operation supports 'paging' (see FHIR specification). If there are too many resources to return in one Bundle, the FHIR server adds a next link to the response Bundle. The contents of the result Bundle therefore comprise all instances of the requested resource types whose lastUpdated timestamp is greater than the <lastSync> in the request query expression and less than or equal to <lastInBundle> where <lastInBundle> is the greatest lastUpdated value of all resources included in the result Bundle. The Publisher Agent FHIR server sets the next link to the filter expression that was used in the original request except that <lastSync> is replaced with <lastInBundle>. If the next link is not present in the Bundle, then there are no more service offerings available.

    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/?[parameters]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain the following scoped role:

    \n
      \n
    • Organization/[id]:PS_Read
    • \n
    \n

    Where [id] SHALL identify the Organization associated with the target PCA Publisher Agent.

    \n

    Response Codes:

    \n
      \n
    • Code 200: Search successfully performed (but may return zero matching results).
    • \n
    • Code 403: Server refused to perform the search.
    • \n
    \n

Capabilities by Resource/Profile

Summary

The summary table lists the resources that are part of this configuration, and for each resource it lists:

  • The relevant profiles (if any)
  • The interactions supported by each resource (Read, Search, Update, and Create, are always shown, while VRead, Patch, Delete, History on Instance, or History on Type are only present if at least one of the resources has support for them.
  • The required, recommended, and some optional search parameters (if any).
  • The linked resources enabled for _include
  • The other resources enabled for _revinclude
  • The operations on the resource (if any)

Resource Conformance: supported Organization

Base System Profile
PCA Organization
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports
    read

    Definition:

    \n

    This operation is a RESTful read interaction (as described in the FHIR specification) of an Organization resource.

    \n

    Behaviour:

    \n

    This operation retrieves an identified Organization resource that conforms to the PCA Organization profile.

    \n

    HTTP interaction signature:

    \n

    GET [publisher agent base url]/Organization/[id]

    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the Organization resource returned.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the target Organization being read.

    \n

    if a scoped role identifies a Location then [id] SHALL identify any Location where its managingOrganisation references the target Organization being read.

    \n

    if a scoped role identifies a HealthcareService then [id] SHALL identify any HealthcareService where its providedBy references the target Organization being read.

    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 404: The resource was not found.
    • \n
    \n

Documentation

This section defines the supported interactions for the PCA Organization profile of the Organization resource type.

\n

Resource Conformance: supported Location

Base System Profile
PCA Location
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports
    create

    Definition:

    \n

    This operation is a RESTful create interaction (as described in the FHIR specification) of a Location resource conforming to the PCA Location profile.

    \n

    Behaviour:

    \n

    If any of the following data validation rules are violated in the input resource then the request is rejected and the error code 422 is returned:

    \n
      \n
    • The resource SHALL conform to the PCA Location profile.
    • \n
    • id SHALL NOT be present.
    • \n
    • meta.versionId SHALL NOT be present.
    • \n
    • meta.lastUpdated SHALL NOT be present.
    • \n
    • identifier:pca-li SHALL NOT be present.
    • \n
    • providedBy SHALL reference an existing Organization within the scope of the requesting system.
    • \n
    • status SHALL NOT use the code 'suspended'.
    • \n
    • If type is not present, then address SHALL be present.
    • \n
    \n

    HTTP interaction signature:

    \n
      \n
    • POST [publisher agent base url]/Location
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • Location resource that conforms to the PCA Location profile.
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the new Location resource.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain the following scoped role:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_ServicesMgr
    • \n
    \n

    Where [id] SHALL identify the Organization referenced by managingOrganization in the new Location.

    \n

    Response Codes:

    \n
      \n
    • Code 201: The resource was successfully created.
    • \n
    • Code 400: The input resource could not be parsed or failed basic FHIR validation rules.
    • \n
    • Code 404: The resource type is not supported, or not a FHIR end-point.
    • \n
    • Code 422: The input resource violated applicable FHIR profiles or server data validation rules.
    • \n
    \n
    read

    Definition:

    \n

    This operation is a RESTful read interaction (as described in the FHIR specification) of a Location resource.

    \n

    Behaviour:

    \n

    This operation retrieves an identified Location resource that conforms to the PCA Location profile.

    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/Location/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the Location resource returned.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain the following scoped role:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the Organization referenced by managingOrganization in the target Location being read.

    \n

    if a scoped role identifies a Location then [id] SHALL identify the Location being read.

    \n

    if a scoped role identifies a HealthcareService then [id] SHALL identify a HealthcareService where its location references the target Location being read.

    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 404: The resource was not found.
    • \n
    \n
    update

    Definition:

    \n

    This operation is a RESTful update interaction (as described in the FHIR specification) of a Location resource.

    \n

    Behaviour:

    \n

    If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned:

    \n
      \n
    • The resource SHALL conform to the PCA Location profile.
    • \n
    • id SHALL be identical to the value in the version of the Location identified in the 'if-match' HTTP header.
    • \n
    • meta.versionId SHALL NOT be present.
    • \n
    • meta.lastUpdated SHALL NOT be present.
    • \n
    • managingOrganization SHALL be identical to the corresponding value in the version of the Location identified in the 'if-match' HTTP header.
    • \n
    • identifier:pca-li SHALL be identical to the corresponding value in the version of the Location identified in the 'if-match' HTTP header.
    • \n
    • status SHALL NOT use the code 'suspended'.
    • \n
    • If type is not present, then address SHALL be present.
    • \n
    • If status is 'inactive', then all healthcare services linked to the location SHALL have an active value of 'false'.
    • \n
    \n

    If the 'if-match' HTTP header is not provided in the request, then the PCA Publisher Agent will reject the request and return the error code 400.

    \n

    If the 'if-match' HTTP header does not match the current version, then the PCA Publisher Agent will reject the request and return the error code 412.

    \n

    HTTP interaction signature:

    \n
      \n
    • PUT [publisher agent base url]/Location/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    • if-match [version id] where [version id] is the version of the Location being updated.
    • \n
    \n

    Request Body:

    \n
      \n
    • Location resource that conforms to the PCA Location profile.
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the Location resource returned.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_ServiceMgr
    • \n
    • Location/[id]:PS_ServiceMgr
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the Organization referenced by managingOrganization in the target Location being updated.

    \n

    If a scoped role identifies a Location then [id] SHALL identify the target Location being updated.

    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 400: Client error: request did not include the if-match HTTP header.
    • \n
    • Code 404: The resource was not found.
    • \n
    • Code 412: The version id given in the if-Match HTTP request header does not match the current version.
    • \n
    • Code 422: The input resource violated applicable FHIR profiles or server data validation rules.
    • \n
    \n

Documentation

This section defines the supported interactions for the PCA Location profile of the Location resource type.

\n

A Location resource conforming to the PCA Location profile represents a location at which healthcare services are offered by a PCA publisher.

\n
Search Parameters
ConformanceParameterTypeDocumentation
SHALLorganizationreference
SHALLstatustoken
SHALL_lastUpdateddate
 

Resource Conformance: supported HealthcareService

Core FHIR Resource
HealthcareService
Reference Policy
Interaction summary
  • Supports
    create

    Definition:

    \n

    This operation is a RESTful create interaction (as described in the FHIR specification) of a HealthcareService resource conforming to the PCA Healthcare Service profile.

    \n

    Behaviour:

    \n

    If any of the following data validation rules are violated in the input resource then the request is rejected and the error code 422 is returned:

    \n
      \n
    • The resource SHALL conform to the PCA Healthcare Service profile.
    • \n
    • id SHALL NOT be present.
    • \n
    • meta.versionId SHALL NOT be present.
    • \n
    • meta.lastUpdated SHALL NOT be present.
    • \n
    • identifier:pca-hsi SHALL NOT be present.
    • \n
    • providedBy SHALL reference an existing Organization within the scope of the requesting system.
    • \n
    • location SHALL reference an existing Location within the scope of the requesting system.
    • \n
    • location SHALL reference a Location for which managingOrganization references the same Organization as is referenced by providedBy.
    • \n
    • One and only one type SHALL use the iso21090-preferred extension.
    • \n
    • coverageArea SHALL only be present if eligibility contains the 'coverage-restrictedResidents' code, and/or if the type element of the referenced location contains either the 'MOBL' (mobile) or 'VI' (virtual) code.
    • \n
    • If present, notAvailable.during SHALL contain a complete date and SHALL NOT include time or timezone data.
    • \n
    • If present, availableTime.during elements (including availableTime elements using the availableTimeApplicability extension) SHALL contain a complete date and SHALL NOT include time or timezone data.
    • \n
    • If present, availableTime elements using the availableTimeApplicability extension SHALL include both a start and end date for the during element.
    • \n
    • If present, pca-active-period SHALL have at least value[x].start or value[x].end.
    • \n
    • If present, pca-active-period.value[x].start SHALL be later than '1900-01-01'.
    • \n
    • If present, pca-active-period.value[x].start SHALL be equal to, or earlier than, the period.start or period.end values of any PractitionerRole`` resources that reference this HealthcareService```.
    • \n
    • If present, pca-active-period.value[x].end SHALL be no more than 5 years from the current date.
    • \n
    • If present, pca-active-period.value[x].end SHALL be equal to, or later than, the period.start or period.end values of any PractitionerRole`` resources that reference this HealthcareService```.
    • \n
    • type SHALL use a code that is not already being used by any existing PCA Healthcare Service resources for the same PCA Location.
    • \n
    \n

    HTTP interaction signature:

    \n
      \n
    • POST [publisher agent base url]/HealthcareService
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n\n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the new HealthcareService resource.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_ServicesMgr
    • \n
    • Location/[id]:PS_ServicesMgr
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the Organization referenced by providedBy in the new HealthcareService.

    \n

    if a scoped role identifies a Location then [id] SHALL identify the Location referenced by location in the new HealthcareService.

    \n

    Response Codes:

    \n
      \n
    • Code 201: The resource was successfully created.
    • \n
    • Code 400: The input resource could not be parsed or failed basic FHIR validation rules.
    • \n
    • Code 404: The resource type is not supported, or not a FHIR end-point.
    • \n
    • Code 422: The input resource violated applicable FHIR profiles or server data validation rules.
    • \n
    \n
    read

    Definition:

    \n

    This operation is a RESTful read interaction (as described in the FHIR specification) of a HealthcareService resource.

    \n

    Behaviour:

    \n

    This operation is used to retrieve an identified HealthcareService resource that conforms to one of the following profiles:

    \n\n

    Different authorisation rules apply depending on the profile of the HealthcareService resource being retrieved; see the 'Required OAuth 2.0 scopes' section below.

    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/HealthcareService/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the HealthcareService resource returned.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    When retrieving a HealthcareService resource that conforms to the PCA Healthcare Service profile:

    \n
      \n
    • If a scoped role identifies an Organization then [id] SHALL identify the Organization referenced by providedBy in the target HealthcareService being read.
    • \n
    • If a scoped role identifies a Location then [id] SHALL identify the Location referenced by location in the target HealthcareService being read.
    • \n
    • If a scoped role identifies a HealthcareService then [id] SHALL identify the target HealthcareService being read.
    • \n
    \n

    When retrieving a HealthcareService resource that conforms to the PCA Partner Service profile:

    \n
      \n
    • If a scoped role identifies an Organization then [id] SHALL identify the publishing organisation associated with the target PCA Publisher Agent.
    • \n
    • If a scoped role identifies a Location then [id] SHALL identify any existing Location within the scope of the requesting system.
    • \n
    • If a scoped role identifies a HealthcareService then [id] SHALL identify any existing HealthcareService within the scope of the requesting system.
    • \n
    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 404: The resource was not found.
    • \n
    \n
    update

    Definition:

    \n

    This operation is a RESTful update interaction (as described in the FHIR specification) of a HealthcareService resource.

    \n

    Behaviour:

    \n

    If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned:

    \n
      \n
    • The resource SHALL conform to the PCA Healthcare Service profile.
    • \n
    • id SHALL be identical to the value in the version of the HealthcareService identified in the 'if-match' HTTP header.
    • \n
    • meta.versionId SHALL NOT be present.
    • \n
    • meta.lastUpdated SHALL NOT be present.
    • \n
    • providedBy SHALL be identical to the corresponding value in the version of the HealthcareService identified in the 'if-match' HTTP header.
    • \n
    • location SHALL be identical to the corresponding value in the version of the HealthcareService identified in the 'if-match' HTTP header.
    • \n
    • identifier:pca-hsi SHALL be identical to the corresponding value in the version of the HealthcareService identified in the 'if-match' HTTP header.
    • \n
    • One and only one type SHALL use the iso21090-preferred extension.
    • \n
    • coverageArea SHALL only be present if eligibility contains the 'coverage-restrictedResidents' code, and/or if the type element of the referenced location contains either the 'MOBL' (mobile) or 'VI' (virtual) code.
    • \n
    • If present, notAvailable.during SHALL contain a complete date and SHALL NOT include time or timezone data.
    • \n
    • If present, availableTime.during elements (including availableTime elements using the availableTimeApplicability extension) SHALL contain a complete date and SHALL NOT include time or timezone data.
    • \n
    • If present, availableTime elements using the availableTimeApplicability extension SHALL include both a start and end date for the during element.
    • \n
    • If present, availableTime elements using the availableTimeApplicability extension SHALL include both a start and end date for the during element.
    • \n
    • If present, pca-active-period SHALL have at least value[x].start or value[x].end.
    • \n
    • If present, pca-active-period.value[x].start SHALL be later than '1900-01-01'.
    • \n
    • If present, pca-active-period.value[x].start SHALL be equal to, or earlier than, the period.start or period.end values of any PractitionerRole`` resources that reference this HealthcareService```.
    • \n
    • If present, pca-active-period.value[x].end SHALL be no more than 5 years from the current date.
    • \n
    • If present, pca-active-period.value[x].end SHALL be equal to, or later than, the period.start or period.end values of any PractitionerRole`` resources that reference this HealthcareService```.
    • \n
    • type SHALL use a code that is not already being used by any existing PCA Healthcare Service resources for the same PCA Location.
    • \n
    \n

    If the 'if-match' HTTP header is not provided in the request, then the PCA Publisher Agent will reject the request and return the error code 400.

    \n

    If the 'if-match' HTTP header does not match the current version, then the PCA Publisher Agent will reject the request and return the error code 412.

    \n

    HTTP interaction signature:

    \n
      \n
    • PUT [publisher agent base url]/HealthcareService/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    • if-match [version id] where [version id] is the version of the HealthcareService being updated.
    • \n
    \n

    Request Body:
    \nHealthcareService resource that conforms to the PCA Healthcare Service profile.

    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the HealthcareService resource returned.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_ServiceMgr
    • \n
    • Location/[id]:PS_ServiceMgr
    • \n
    • HealthcareService/[id]:PS_ServiceMgr
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the Organization referenced by providedBy in the target HealthcareService being updated.

    \n

    If a scoped role identifies a Location then [id] SHALL identify the Location referenced by location in the target HealthcareService being updated.

    \n

    If a scoped role identifies a HealthcareService then [id] SHALL identify the target HealthcareService being updated.

    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 400: Client error: request did not include the if-match HTTP header.
    • \n
    • Code 404: The resource was not found.
    • \n
    • Code 412: The version id given in the if-Match HTTP request header does not match the current version.
    • \n
    • Code 422: The input resource violated applicable FHIR profiles or server data validation rules.
    • \n
    \n
    search-type

    Definition:

    \n

    This operation is a RESTful search interaction (as described in the FHIR specification) for HealthcareService resources that conform to the PCA Partner Service profile.

    \n

    Behaviour:

    \n

    The operation is used to find HealthcareService resources that that conform to the PCA Partner Service profile and that match the search parameters.
    \nNote that all PCA Partner Service resources in the PCA service are accessible to all authorised client systems.

    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/HealthcareService/{?[parameters]}
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the publishing organisation associated with the target PCA Publisher Agent.

    \n

    If a scoped role identifies a Location then [id] SHALL identify any existing Location within the scope of the requesting system.

    \n

    If a scoped role identifies a HealthcareService then [id] SHALL identify any existing HealthcareService within the scope of the requesting system.

    \n

    Response Codes:

    \n
      \n
    • Code 200: Search successfully performed (but may return zero matching results).
    • \n
    • Code 403: Server refused to perform the search.
    • \n
    \n

Documentation

This section defines the supported interactions for the PCA Healthcare Service profile and the PCA Partner Service profile of the HealthcareService resource type.

\n

A HealthcareService resource conforming to the PCA Healthcare Service profile describes a healthcare service offered at a location by a PCA publisher.

\n

A HealthcareService resource conforming to the PCA Partner Service profile describes a partner service offered by a subscriber to which PCA publishers can publish their service offerings.

\n
Search Parameters
ConformanceParameterTypeDocumentation
SHALL_profileuri
SHALLactivetoken
SHALLorganizationreference
SHALLservice-catgeorytoken
SHALLcoverage-area.location.address-postalcodestring
 

Resource Conformance: supported PractitionerRole

Base System Profile
PCA Practitioner Role
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports
    create

    Definition:

    \n

    This operation is a RESTful create interaction (as described in the FHIR specification) of a PractitionerRole resource conforming to the PCA Practitioner Role profile.

    \n

    Behaviour:

    \n

    If the Organization associated with the target PCA Publisher Agent has not been approved to participate in the PCA service, then the request will be rejected and the error code 422 will be returned.

    \n

    If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned:

    \n
      \n
    • The resource SHALL conform to the profile http://pca.digitalhealth.gov.au/fhir/4.0/StructureDefinition/pca-practitioner-role.
    • \n
    • id SHALL NOT be present.
    • \n
    • meta.versionId SHALL NOT be present.
    • \n
    • meta.lastUpdated SHALL NOT be present.
    • \n
    • identifier:pca-pri SHALL not be present.
    • \n
    • active SHALL NOT be present.
    • \n
    • organization SHALL not be present.
    • \n
    • location SHALL not be present.
    • \n
    • healthcareService SHALL reference an existing HealthcareService that exists within the target PCA Publisher Agent.
    • \n
    • practitioner SHALL reference an existing Practitioner that exists within the PCA service.
    • \n
    • if coding:hiServiceRole is present and has the value 'ProvidesHealthcareToIndividuals', then the Organization associated with the target PCA Publisher Agent SHALL have authorised the Agency as a Contracted Service Provider (CSP).
    • \n
    • If present, period.start SHALL be later than '1900-01-01'.
    • \n
    • If present, period.start SHALL be equal to, or later than, the pca-active-period.value[x].start value (if present) of the HealthcareService referenced by the healthcareService element.
    • \n
    • If present, period.end SHALL be no more than 5 years from the current date.
    • \n
    • If present, period.end SHALL be equal to, or earlier than, the pca-active-period.value[x].end value (if present) of the HealthcareService referenced by the healthcareService element.
    • \n
    \n

    Note: While the referenced Practitioner resource is managed via the PCA portal, it is also instantiated as a read-only 'proxy' within the PCA Publisher Agent. This means that the reference to Practitioner contained in the PractitionerRole is a local reference that is resolved within the PCA Publisher Agent. This 'proxy' has the same id as the resource within the PCA Portal for which it is a proxy.

    \n

    HTTP interaction signature:

    \n
      \n
    • POST [publisher agent base url]/PractitionerRole
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n\n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the new PractitionerRole resource.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_ServicesMgr
    • \n
    • Location/[id]:PS_ServicesMgr
    • \n
    • HealthcareService/[id]:PS_ServicesMgr
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the Organization referenced by providedBy of the HealthcareService referenced by healthcareService in the new PractitionerRole.

    \n

    if a scoped role identifies a Location then [id] SHALL identify the Location referenced by location of the HealthcareService referenced by healthcareService in the new PractitionerRole.

    \n

    if a scoped role identifies a HealthcareService then [id] SHALL identify the HealthcareService referenced by healthcareService in the new PractitionerRole.

    \n

    Response Codes:

    \n
      \n
    • Code 201: The resource was successfully created.
    • \n
    • Code 400: The input resource could not be parsed or failed basic FHIR validation rules.
    • \n
    • Code 404: The resource type is not supported, or not a FHIR end-point.
    • \n
    • Code 422: The input resource violated applicable FHIR profiles or server data validation rules.
    • \n
    \n
    read

    Definition:

    \n

    This operation is a RESTful read interaction (as described in the FHIR specification) of a PractitionerRole resource.

    \n

    Behaviour:

    \n

    This operation retrieves an identified PractitionerRole resource that conforms to the PCA Practitioner Role profile.

    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/PractitionerRole/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the PractitionerRole resource returned.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the Organization referenced by providedBy in the HealthcareService referenced by healthcareService in the target PractitionerRole being read.

    \n

    If a scoped role identifies a Location then [id] SHALL identify the Location referenced by location in the HealthcareService referenced by healthcareService in the target PractitionerRole being read.

    \n

    If a scoped role identifies a HealthcareService then [id] SHALL identify the HealthcareService referenced by healthcareService in the target PractitionerRole being read.

    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 404: The resource was not found.
    • \n
    \n
    update

    Definition:

    \n

    This operation is a RESTful update interaction (as described in the FHIR specification) of a PractitionerRole resource.

    \n

    Behaviour:

    \n

    If the Organization associated with the target PCA Publisher Agent has not been approved to participate in the PCA service, then the request will be rejected and the error code 422 will be returned.

    \n

    If any of the following data validation rules are violated in the input resource then the request is rejected and the error code 422 is returned:

    \n
      \n
    • The resource SHALL conform to the PCA Practitoner Role profile.
    • \n
    • id SHALL be identical to the value in the version of the PractitionerRole identified in the 'if-match' HTTP header.
    • \n
    • meta.versionId SHALL NOT be present.
    • \n
    • meta.lastUpdated SHALL NOT be present.
    • \n
    • identifier:pca-pri SHALL be identical to the corresponding value in the version of the PractitionerRole identified in the 'if-match' HTTP header.
    • \n
    • active SHALL NOT be present.
    • \n
    • organization SHALL be identical to the corresponding value in the version of the PractitionerRole identified in the 'if-match' HTTP header.
    • \n
    • location SHALL be identical to the corresponding value in the version of the PractitionerRole identified in the 'if-match' HTTP header.
    • \n
    • healthcareService SHALL be identical to the corresponding value in the version of the PractitionerRole identified in the 'if-match' HTTP header.
    • \n
    • practitioner SHALL be identical to the corresponding value in the version of the PractitionerRole identified in the 'if-match' HTTP header.
    • \n
    • if coding:hiServiceRole is present and has the value 'ProvidesHealthcareToIndividuals', then the Organization associated with the target PCA Publisher Agent SHALL have authorised the Agency as a Contracted Service Provider (CSP).
    • \n
    • If present, period.start SHALL be later than '1900-01-01'.
    • \n
    • If present, period.start SHALL be equal to, or later than, the pca-active-period.value[x].start value (if present) of the HealthcareService referenced by the healthcareService element.
    • \n
    • If present, period.end SHALL be no more than 5 years from the current date.
    • \n
    • If present, period.end SHALL be equal to, or earlier than, the pca-active-period.value[x].end value (if present) of the HealthcareService referenced by the healthcareService element.
    • \n
    \n

    If the 'if-match' HTTP header is not provided in the request, then the PCA Publisher Agent will reject the request and return the error code 400.

    \n

    If the 'if-match' HTTP header does not match the current version, then the PCA Publisher Agent will reject the request and return the error code 412.

    \n

    HTTP interaction signature:

    \n
      \n
    • PUT [publisher agent base url]/PractitionerRole/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    • if-match [version id] where [version id] is the version of the PractitionerRole being updated.
    • \n
    \n

    Request Body:

    \n\n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the PractitionerRole resource returned.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_PractitionerMgr
    • \n
    • Location/[id]:PS_PractitionerMgr
    • \n
    • HealthcareService/[id]:PS_PractitionerMgr
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the Organization referenced by providedBy in the HealthcareService referenced by healthcareService in the target PractitionerRole being updated.

    \n

    If a scoped role identifies a Location then [id] SHALL identify the Location referenced by location in the HealthcareService referenced by healthcareService in the target PractitionerRole being updated.

    \n

    If a scoped role identifies a HealthcareService then [id] SHALL identify the HealthcareService referenced by healthcareService in the target PractitionerRole being updated.

    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 400: Client error: request did not include the if-match HTTP header.
    • \n
    • Code 404: The resource was not found.
    • \n
    • Code 412: The version id given in the if-Match HTTP request header does not match the current version
    • \n
    • Code 422: The input resource violated applicable FHIR profiles or server data validation rules.
    • \n
    \n

Documentation

This section defines the supported interactions for the PCA Practitioner Role profile of the PractitionerRole resource type.

\n

Each PractitionerRole resource conforming to the PCA Practitioner Role profile describes a practitioner in a role at a healthcare service.

\n
Search Parameters
ConformanceParameterTypeDocumentation
SHALL_lastUpdateddate
SHALL_idtoken
SHALLactivetoken
SHALLidentifiertoken
SHALLorganizationreference
SHALLpractitionerreference
SHALLservicereference
 

Resource Conformance: supported Practitioner

Base System Profile
PCA Practitioner
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports
    read

    Definition:

    \n

    This operation is a RESTful read interaction (as described in the FHIR specification) of a Practitioner resource.

    \n

    Behaviour:

    \n

    This operation retrieves an identified Practitioner resource that conforms to the PCA Practitioner profile.

    \n

    The PCA Publisher Agent will include a identifier:hpii in the Practitioner resource returned if all of the following conditions are met:

    \n
      \n
    • HPI-I and Ahpra number match in the HI service.
    • \n
    • The Organization on whose behalf the request is made is a publisher organisation.
    • \n
    • The Organization on whose behalf the request is made has been approved to participate in the PCA service.
    • \n
    • The Organization on whose behalf the request is made has authorised the Agency as a Contracted Service Provider (CSP).
    • \n
    • The client system is authorised to read an existing PractitionerRole where practitioner references the Practitioner resource returned and where coding:hiServiceRole has the value 'ProvidesHealthcareToIndividuals'.
    • \n
    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/Practitioner/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the Practitioner resource returned.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the publishing organisation associated with the requesting system.

    \n

    If a scoped role identifies a Location then [id] SHALL identify any existing Location within the scope of the requesting system.

    \n

    If a scoped role identifies a HealthcareService then [id] SHALL identify any existing HealthcareService within the scope of the requesting system.

    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 404: The resource was not found.
    • \n
    \n
    search-type

    Definition:

    \n

    This operation is a RESTful search interaction (as described in the FHIR specification) for a Practitioner resource for either a given Ahpra registration number or HPI-I identifier that conforms to the PCA Practitioner profile.

    \n

    Behaviour:

    \n

    The operation is used to find a Practitioner resource given their Ahpra registration number or HPI-I identifier. The PCA Publisher Agent will return zero or one Practitioner resource that conforms to the PCA Practitioner profile.

    \n

    The operation is only available to client systems acting on behalf of publisher organisations (see ‘Required OAuth 2.0 scopes’ below).

    \n

    The PCA Publisher Agent will reject requests and return the error code 403 if the identifier query string is not present, or if the identifier query string does not qualify the identifier value with one of the following systems:

    \n
      \n
    • http://hl7.org.au/id/ahpra-registration-number (when searching on Ahpra registration number)
    • \n
    • http://ns.electronichealth.net.au/id/hi/hpii/1.0 (when searching on HPI-I)
    • \n
    \n

    The PCA Publisher Agent return a Bundle containing exactly one Practitioner resource if the identifier query string matches the same record in either the Ahpra Register of practitioners or the HI Service, else it will return a Bundle contanining zero results.

    \n

    The PCA Publisher Agent will only support searching by HPI-I if the client system’s organisation has has made the PCA a Contracted Service Provider (CSP).

    \n

    The PCA Publisher Agent will include the identifier:hpii element in the Practitioner resource returned if the client system’s organisation has has made the PCA a Contracted Service Provider (CSP) and the Practitioner resource's coding:hiServiceRole element has the value ‘ProvidesHealthcareToIndividuals’.

    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/Practitioner/{?[parameter]}
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    \n

    Response Body:

    \n
      \n
    • Success: Bundle that contains zero to one Practitioner resources that conforms to the PCA Practitioner profile.
    • \n
    • Error: OperationOutcome resource (see FHIR specification).
    • \n
    \n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_ServicesMgr
    • \n
    • Location/[id]:PS_ServicesMgr
    • \n
    • HealthcareService/[id]:PS_ServicesMgr
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the publishing organisation associated with the requesting system.

    \n

    If a scoped role identifies a Location then [id] SHALL identify any existing Location within the scope of the requesting system.

    \n

    If a scoped role identifies a HealthcareService then [id] SHALL identify any existing HealthcareService within the scope of the requesting system.

    \n

    Response Codes:

    \n
      \n
    • Code 200: Search successfully performed (but may return zero matching results).
    • \n
    • Code 403: Server refused to perform the search.
    • \n
    \n

Documentation

This section defines the supported interactions for the PCA Practitioner profile of the Practitioner resource type.

\n

Each Practitioner resource conforming the PCA Practitioner profile is a read-only proxy for a corresponding Practitioner resource managed by the PCA portal.

\n

Each 'proxy' has the same id and versionId as the resource within the PCA portal for which it is a proxy.

\n
Search Parameters
ConformanceParameterTypeDocumentation
SHALLidentifiertoken
 

Resource Conformance: supported Provenance

Base System Profile
PCA Provenance
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports
    read

    Definition:

    \n

    This operation is a RESTful read interaction (as described in the FHIR specification) of a Provenance resource.

    \n

    Behaviour:

    \n

    This operation retrieves an identified Provenance resource that conforms to the PCA Provenance profile.

    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/Provenance/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    If the Provenance resource being read has a target that references an Organization, then:

    \n
      \n
    • If a scoped role identifies an Organization then [id] SHALL identify the Organization referenced by target in the Provenance resource being read.
    • \n
    \n

    If the Provenance resource being read has a target that references a Practitioner, then:

    \n
      \n
    • If a scoped role identifies an Organization then [id] SHALL identify the publishing organisation associated with the requesting system.
    • \n
    • If a scoped role identifies a Location then [id] SHALL identify any existing Location within the scope of the requesting system.
    • \n
    • If a scoped role identifies a HealthcareService then [id] SHALL identify any existing HealthcareService within the scope of the requesting system.
    • \n
    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 404: The resource was not found.
    • \n
    \n

Documentation

This section defines the supported interactions for the PCA Provenance profile of the Provenance resource type.

\n

Each Provenance resource conforming to the PCA Provenance profile represents an activity performed by the PCA service (conditionally on behalf of a participating organisation when the target element references a PCA Organization resource) whereby specific data elements of a PCA Organization or PCA Practitioner resource have been initially retrieved, updated or verified from an external system of record.

\n

Resource Conformance: supported Contract

Core FHIR Resource
Contract
Reference Policy
Interaction summary
  • Supports
    create

    Definition:

    \n

    This operation is a RESTful create interaction (as described in the FHIR specification) of a Contract resource conforming to the PCA Publication Authorisation Record profile.

    \n

    Please note: This operation will be available in Release 2.1 of PCA.

    \n

    Behaviour:

    \n

    This operation records a decision made by an authorised representative of a publisher organisation to authorise the publication of a HealthcareService or PractitionerRole to a partner service.

    \n

    Authorisation is implemented using this operation. Revocation is implemented by updating the status of the existing Contract to 'revoked'.

    \n

    A Contract resource cannot be created with a status of 'cancelled' - this status can only by set by the PCA service and is used to indicate that the partner service associated with the publication authorisation is inactive.

    \n

    If the invocation of a Contract resource with status of 'executed' is sucessful then the PCA service will make the following resources available to the PCA Subscriber Agent of the organisation referenced by providedBy of the partner service:

    \n
      \n
    • target resource (HealthcareService or PractitionerRole).
    • \n
    • Organization, Location and Practitioner resources that are referenced directly or indirectly by the target HealthcareService or PractitionerRole.
    • \n
    • The newly created Contract resource.
    • \n
    \n

    The PCA service will also continue to make available any new versions of these resources to the same PCA Subscriber Agent. This process continues until the existing Contract resource is updated with a status of 'revoked'.

    \n

    Prior to invoking this operation the following PCA API operations are available to provide the information that is recorded in the Contract resource to be created.

    \n
      \n
    • If not already identified or synchronised locally, then search for the relevant resource(s) using search-system (for service offering resources to publish) and PartnerService search-type (for partner services registered in the PCA service)
    • \n
    • Get the current text of the information use statement for the selected partner service:\n\n
    • \n
    \n

    If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned:

    \n
      \n
    • The resource SHALL conform to the PCA Publication Authorisation Record profile.
    • \n
    • id SHALL NOT be present.
    • \n
    • meta.versionId SHALL NOT be present.
    • \n
    • meta.lastUpdated SHALL NOT be present.
    • \n
    • subject SHALL reference an existing HealthcareService or PractitionerRole implemented by the PCA Publisher Agent (i.e. the target FHIR server)
    • \n
    • instantiatesCanonical SHALL reference the information use statement (i.e. a Contract resource) whose legal.content[x].data element was viewed by the person responsible for making the publication decision recorded via the new Contract resource.
    • \n
    • author SHALL be a local reference to a contained resource of type PCA Publication Approver.
    • \n
    • status SHALL use the code 'executed'.
    • \n
    • The partner service referenced by the subject of the information use statement referenced in instantiatesCanonical SHALL have an active value of 'true'.
    • \n
    \n

    HTTP interaction signature:

    \n
      \n
    • POST [publisher agent base url]/Contract
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n\n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_PublicationMgr
    • \n
    • Location/[id]:PS_PublicationMgr
    • \n
    • HealthcareService/[id]:PS_PublicationMgr
    • \n
    \n

    If a scoped role identifies an Organization then:

    \n
      \n
    • If the subject of the Contract being created references a HealthcareService then [id] SHALL identify the Organization referenced by providedBy in that HealthcareService.
    • \n
    • If the subject of the Contract being created references a PractitionerRole then [id] SHALL identify the Organization referenced by providedBy in the HealthcareService referenced by healthcareService in that PractitionerRole.
    • \n
    \n

    If a scoped role identifies a Location then:

    \n
      \n
    • If the subject of the Contract being created references a HealthcareService then [id] SHALL identify the Location referenced by location in that HealthcareService.
    • \n
    • If the subject of the Contract being created references a PractitionerRole then [id] SHALL identify the Location referenced by location in the HealthcareService referenced by healthcareService in that PractitionerRole.
    • \n
    \n

    If a scoped role identifies a HealthcareService then:

    \n
      \n
    • If the subject of the Contract being created references a HealthcareService then [id] SHALL identify that HealthcareService.
    • \n
    • If the subject of the Contract being created references a PractitionerRole then [id] SHALL identify the HealthcareService referenced by healthcareService in that PractitionerRole.
    • \n
    \n

    Response Codes:

    \n
      \n
    • Code 201: The resource was successfully created.
    • \n
    • Code 400: The input resource could not be parsed or failed basic FHIR validation rules.
    • \n
    • Code 404: The resource type is not supported, or not a FHIR end-point.
    • \n
    • Code 422: The input resource violated applicable FHIR profiles or server data validation rules.
    • \n
    \n
    read

    Definition:

    \n

    This operation is a RESTful read interaction (as described in the FHIR specification) of a Contract resource.

    \n

    Please note: This operation will be available in Release 2.1 of PCA.

    \n

    Behaviour:

    \n

    This operation is used to retrieve an identified Contract resource that conforms to one of the following profiles:

    \n\n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/Contract/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    When retrieving a Contract resource that conforms to the PCA Publication Authorisation Record profile:

    \n
      \n
    • \n

      If a scoped role identifies an Organization then:

      \n
        \n
      • If the subject of the Contract being read references a HealthcareService then [id] SHALL identify the Organization referenced by providedBy in that HealthcareService.
      • \n
      • If the subject of the Contract being read references a PractitionerRole then [id] SHALL identify the Organization referenced by providedBy in the HealthcareService referenced by healthcareService in that PractitionerRole.
      • \n
      \n
    • \n
    • \n

      If a scoped role identifies a Location then:

      \n
        \n
      • If the subject of the Contract being read references a HealthcareService then [id] SHALL identify the Location referenced by location in that HealthcareService.
      • \n
      • If the subject of the Contract being read references a PractitionerRole then [id] SHALL identify the Location referenced by location in the HealthcareService referenced by healthcareService in that PractitionerRole.
      • \n
      \n
    • \n
    • \n

      If a scoped role identifies a HealthcareService then:

      \n
        \n
      • If the subject of the Contract being read references a HealthcareService then [id] SHALL identify that HealthcareService.
      • \n
      • If the subject of the Contract being read references a PractitionerRole then [id] SHALL identify the HealthcareService referenced by healthcareService in that PractitionerRole.
      • \n
      \n
    • \n
    \n

    When retrieving a Contract resource that conforms to the PCA Information Use Statement profile:

    \n
      \n
    • If a scoped role identifies an Organization then [id] SHALL identify the publishing organisation associated with the target PCA Publisher Agent.
    • \n
    • If a scoped role identifies a Location then [id] SHALL identify any existing Location within the scope of the requesting system.
    • \n
    • If a scoped role identifies a HealthcareService then [id] SHALL identify any existing HealthcareService within the scope of the requesting
    • \n
    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 404: The resource was not found.
    • \n
    \n
    update

    Definition:

    \n

    This operation is a RESTful update interaction (as described in the FHIR specification) of a Contract resource.

    \n

    Please note: This operation will be available in Release 2.1 of PCA.

    \n

    Behaviour:

    \n

    This operation can be used to record a decision made by an authorised representative of a publisher organisation to revoke an existing authorisation to publish, or to record that a new version of a partner service's information use statement has been accepted:

    \n
      \n
    • Revocation is implemented using this operation by updating the status of an existing Contract resource to 'revoked'.
    • \n
    • Accepting a new version of a partner service's information use statement is implemented using this operation by updating the instantiatesCanonical of an existing Contract resource to reference a new information use statement.
    • \n
    \n

    To re-authorise publication after revoking, create a new Contract resource.

    \n

    If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned:

    \n
      \n
    • The resource SHALL conform to the PCA Publication Authorisation Record profile.
    • \n
    • id SHALL be identical to the corresponding value in the version of the Contract identified in the 'if-match' HTTP header.
    • \n
    • meta.versionId SHALL NOT be present.
    • \n
    • meta.lastUpdated SHALL NOT be present.
    • \n
    • subject SHALL be identical to the corresponding value in the version of the Contract identified in the 'if-match' HTTP header.
    • \n
    • author SHALL be identical to the corresponding value in the version of the Contract identified in the 'if-match' HTTP header.
    • \n
    • Updates to instantiatesCanonical SHALL only be permitted where the version of the Contract identified in the 'if-match' HTTP header has a status of 'executed', and status is not also being updated.
    • \n
    • Updates to status SHALL only be permitted where the status is being updated to revoked, and instantiatesCanonical is not also being updated.
    • \n
    • If instantiatesCanonical is being updated, the partner service referenced by the subject of the information use statement referenced in instantiatesCanonical SHALL have an active value of 'true'.
    • \n
    • If instantiatesCanonical is being updated, the partner service referenced by the subject of the information use statement referenced in instantiatesCanonical SHALL be identical to the previous subject of the information use statement referenced in instantiatesCanonical in the version of the Contract identified in the 'if-match' HTTP header.
    • \n
    \n

    If the 'if-match' HTTP header is not provided in the request, then the PCA Publisher Agent will reject the request and return the error code 400.

    \n

    If the 'if-match' HTTP header does not match the current version, then the PCA Publisher Agent will reject the request and return the error code 412.

    \n

    HTTP interaction signature:

    \n
      \n
    • PUT [publisher agent base url]/Contract
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    • if-match [version id] where [version id] is the version of the Contract being updated.
    • \n
    \n

    Request Body:

    \n\n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    • ETag: [version id] where [version id] identifies the version of the Contract resource returned.
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_PublicationMgr
    • \n
    • Location/[id]:PS_PublicationMgr
    • \n
    • HealthcareService/[id]:PS_PublicationMgr
    • \n
    \n

    If a scoped role identifies an Organization then:

    \n
      \n
    • If the subject of the Contract being created references a HealthcareService then [id] SHALL identify the Organization referenced by providedBy in that HealthcareService.
    • \n
    • If the subject of the Contract being created references a PractitionerRole then [id] SHALL identify the Organization referenced by providedBy in the HealthcareService referenced by healthcareService in that PractitionerRole.
    • \n
    \n

    If a scoped role identifies a Location then:

    \n
      \n
    • If the subject of the Contract being created references a HealthcareService then [id] SHALL identify the Location referenced by location in that HealthcareService.
    • \n
    • If the subject of the Contract being created references a PractitionerRole then [id] SHALL identify the Location referenced by location in the HealthcareService referenced by healthcareService in that PractitionerRole.
    • \n
    \n

    If a scoped role identifies a HealthcareService then:

    \n
      \n
    • If the subject of the Contract being created references a HealthcareService then [id] SHALL identify that HealthcareService.
    • \n
    • If the subject of the Contract being created references a PractitionerRole then [id] SHALL identify the HealthcareService referenced by healthcareService in that PractitionerRole.
    • \n
    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 400: Client error: request did not include the if-match HTTP header.
    • \n
    • Code 404: The resource was not found.
    • \n
    • Code 412: The version id given in the if-Match HTTP request header does not match the current version
    • \n
    • Code 422: The input resource violated applicable FHIR profiles or server data validation rules.
    • \n
    \n
    search-type

    Definition:

    \n

    This operation is a RESTful search interaction (as described in the FHIR specification) for Contract resources.

    \n

    Behaviour:

    \n

    This operation is used to find Contract resources that conform to the PCA Information Use Statement profile and that match the search parameters.

    \n

    Note that all PCA Information Use Statement resources in the PCA service are accessible to all authorised client systems.

    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/Contract/{?[parameters]}
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    If a scoped role identifies an Organization then [id] SHALL identify the publishing organisation associated with the target PCA Publisher Agent.

    \n

    If a scoped role identifies a Location then [id] SHALL identify any existing Location within the scope of the requesting system.

    \n

    If a scoped role identifies a HealthcareService then [id] SHALL identify any existing HealthcareService within the scope of the requesting system.

    \n

    Response Codes:

    \n
      \n
    • Code 200: Search successfully performed (but may return zero matching results).
    • \n
    • Code 403: Server refused to perform the search.
    • \n
    \n

Documentation

This section defines the supported interactions for the PCA Publication Authorisation Record profile and the PCA Information Use Statement profile of the Contract resource type.

\n

A Contract resource conforming to the PCA Publication Authorisation Record profile records a decision regarding the publication of a specific service offering (either a HealthcareService or a PractitionerRole) to a specific partner service. The decision is either to authorise publication or to revoke a previous authority to publish.

\n

A Contract resource conforming to the PCA Information Use Statement profile represents a policy statement by a subscriber organisation's partner service that describes how they will use the information from publisher organisations that is disclosed to the partner service.

\n
Search Parameters
ConformanceParameterTypeDocumentation
SHALL_profileuri
SHALLsubjectreference
SHALLversionstring
 

Resource Conformance: supported Task

Base System Profile
PCA Match Record
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports
    read

    Definition:

    \n

    This operation is a RESTful read interaction (as described in the FHIR specification) of a Task resource.

    \n

    Behaviour:

    \n

    This operation retrieves an identified Task resource that conforms to the PCA Match Record profile.

    \n

    HTTP interaction signature:

    \n
      \n
    • GET [publisher agent base url]/Task/[id]
    • \n
    \n

    Mandatory Request Headers:

    \n
      \n
    • Accept: application/fhir+json;charset=utf-8 or Accept: application/fhir+xml;charset=utf-8
    • \n
    • Authorization: Bearer [token]
    • \n
    \n

    Request Body:

    \n
      \n
    • (No request body)
    • \n
    \n

    Mandatory Response Headers:

    \n
      \n
    • Content-Type: application/fhir+json;charset=utf-8 or Content-Type: application/fhir+xml;charset=utf-8
    • \n
    \n

    Response Body:

    \n\n

    Required OAuth 2.0 scopes:

    \n

    The scope string SHALL contain one or more of the following scoped roles:

    \n
      \n
    • Organization/[id]:PCA:Om
    • \n
    • Organization/[id]:PCA:Hsm
    • \n
    • Location/[id]:PCA:Hsm
    • \n
    • HealthcareService/[id]:PCA:Hsm
    • \n
    • Organization/[id]:PS_Read
    • \n
    • Location/[id]:PS_Read
    • \n
    • HealthcareService/[id]:PS_Read
    • \n
    \n

    If a scoped role identifies an Organization then:

    \n
      \n
    • If the focus of the Task being read references an Organization, then [id] SHALL identify that Organization.
    • \n
    • If the focus of the Task being read references a Location, then [id] SHALL identify the Organization referenced by managingOrganization of the Location.
    • \n
    • If the focus of the Task being read references a HealthcareService, then [id] SHALL identify the Organization referenced by providedBy of that HealthcareService.
    • \n
    • If the focus of the Task being read references a PractitionerRole, then [id] SHALL identify the Organization referenced by providedBy of the HealthcareService referenced by healthcareService of that PractitionerRole.
    • \n
    \n

    If a scoped role identifies a Location then:

    \n
      \n
    • If the focus of the Task being read references a Location, then [id] SHALL identify that Location.
    • \n
    • If the focus of the Task being read references a HealthcareService, then [id] SHALL identify the Location referenced by location of that HealthcareService.
    • \n
    • If the focus of the Task being read references a PractitionerRole, then [id] SHALL identify the Location referenced by location of the HealthcareService referenced by healthcareService of that PractitionerRole.
    • \n
    \n

    If a scoped role identifies a HealthcareService then:

    \n
      \n
    • If the focus of the Task being read references a HealthcareService, then [id] SHALL identify that HealthcareService.
    • \n
    • If the focus of the Task being read references a PractitionerRole, then [id] SHALL identify the HealthcareService referenced by healthcareService of that PractitionerRole.
    • \n
    \n

    Response Codes:

    \n
      \n
    • Code 200: The resource was found and returned.
    • \n
    • Code 404: The resource was not found.
    • \n
    \n

Documentation

This section defines the supported interactions for the PCA Match Record profile of the Task resource type.

\n

A Task resource conforming to the PCA Match Record profile indicates the matching status of a service offering to a partner service’s local data store.

\n
"^^rdf:XMLLiteral ] ; # fhir:url [ fhir:v "http://pca.digitalhealth.gov.au/fhir/4.0/CapabilityStatement/pca-publisher-agent"^^xsd:anyURI] ; # fhir:version [ fhir:v "25.1.0.0"] ; # fhir:name [ fhir:v "PCAPublisherAgentCapabilityStatement"] ; # fhir:title [ fhir:v "PCA Publisher Agent Capability Statement"] ; # fhir:status [ fhir:v "active"] ; # fhir:experimental [ fhir:v false] ; # fhir:date [ fhir:v "2025-05-14T10:38:26+10:00"^^xsd:dateTime] ; # fhir:publisher [ fhir:v "Australian Digital Health Agency"] ; # fhir:contact ( [ fhir:telecom ( [ fhir:system [ fhir:v "email" ] ; fhir:value [ fhir:v "mailto:help@digitalhealth.gov.au" ] ] ) ] ) ; # fhir:description [ fhir:v "This is the Capability statement for a PCA Publisher Agent FHIR server."] ; # fhir:jurisdiction ( [ fhir:coding ( [ fhir:system [ fhir:v "urn:iso:std:iso:3166"^^xsd:anyURI ] ; fhir:code [ fhir:v "AU" ] ] ) ] ) ; # fhir:copyright [ fhir:v "Copyright © 2024 Australian Digital Health Agency - All rights reserved. This content is licensed under a Creative Commons Attribution 4.0 International License. See https://creativecommons.org/licenses/by/4.0/."] ; # fhir:kind [ fhir:v "requirements"] ; # fhir:fhirVersion [ fhir:v "4.0.1"] ; # fhir:format ( [ fhir:v "application/fhir+json"] [ fhir:v "application/fhir+xml"] ) ; # fhir:rest ( [ fhir:mode [ fhir:v "server" ] ; fhir:documentation [ fhir:v "A PCA Publisher Agent manages the service offerings for one publisher organisation. \n \n The PCA service instantiates one PCA Publisher Agent for each participating publisher organisation. That is, each publisher organisation interacts with a PCA Publisher Agent located at a *publisher agent base URL* that is unique to that organisation. \n \n The *publisher agent base URL* for a particular organisation is available via the PCA portal on the 'Organisation Details' screen of the publisher organisation. \n \n **Publication process** \n \n A PCA Publisher Agent creates the ```Location```, ```HealthcareService``` and ```PractitionerRole``` resources (that are associated with existing ```Organization``` and ```Practitioner``` resources) that represent their service offerings. These resources are made available to a subscriber organisation when a publisher authorises publication of a ```HealthcareService``` or ```PractitionerRole``` resource to one or more of the subscriber organisation's partner services. \n \n The authority to publish is represented using ```Contract``` resources which are also implemented by the PCA Publisher Agent (see the [Contract resource endpoint](CapabilityStatement-pca-publisher-agent.html#contract)). \n \n **Identifier disclosure rules** \n \n The PCA service enforces certain business rules regarding the disclosure of *Identifiers* (including subscriber-issued identifiers) in the resources that it makes available to subscribers. \n \n The result of these rules may be that a copy of a resource received by one subscriber may contain *Identifiers* that are not included in the copy of the same resource that is received by a different subscriber. \n \n In the case of HPI-Is these *identifier disclosure rules* ensure that relevant legal requirements are complied with. \n \n Other *identifier disclosure rules* are defined by the PCA operator. \n \n The *identifier disclosure rules* are applied automatically at the time that the resource is retrieved by the target PCA Subscriber Agent. \n \n **Authorisation rules** \n \nAuthorised client systems are only permitted to interact with a PCA Publisher Agent API where the participating organisation associated with the PCA Publisher Agent has a publisher approval status of 'Approved'. \n \n **Resource profiles and extensions** \n \nThis API specification defines the required resource profiles for each operation. In addition, the PCA Publisher Agent will reject any request to create or update a resource that contains any extensions (including modifier extensions) not explicitly defined in that resource profile. \n \n " ] ; fhir:security [ fhir:cors [ fhir:v true ] ; fhir:service ( [ fhir:coding ( [ fhir:system [ fhir:v "http://terminology.hl7.org/CodeSystem/restful-security-service"^^xsd:anyURI ] ; fhir:code [ fhir:v "OAuth" ] ; fhir:display [ fhir:v "OAuth" ] ] ) ] ) ; fhir:description [ fhir:v "This server implements OAuth2" ] ] ; fhir:resource ( [ fhir:type [ fhir:v "Organization" ] ; fhir:profile [ fhir:v "http://pca.digitalhealth.gov.au/fhir/4.0/StructureDefinition/pca-organization"^^xsd:anyURI ; fhir:link ] ; fhir:documentation [ fhir:v " \n \n This section defines the supported interactions for the [PCA Organization](StructureDefinition-pca-organization.html) profile of the ```Organization``` resource type. \n " ] ; fhir:interaction ( [ fhir:code [ fhir:v "read" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **read** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#read)) of an ```Organization``` resource. \n \n **Behaviour**: \n \n This operation retrieves an identified ```Organization``` resource that conforms to the [PCA Organization](StructureDefinition-pca-organization.html) profile. \n \n **HTTP interaction signature**: \n \n ```GET [publisher agent base url]/Organization/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the ```Organization``` resource returned. \n \n **Response Body**: \n * Success: ```Organization``` resource that conforms to the [PCA Organization](StructureDefinition-pca-organization.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_Read``` \n * ```Location/[id]:PS_Read``` \n * ```HealthcareService/[id]:PS_Read``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the target ```Organization``` being read. \n \n if a *scoped role* identifies a ```Location``` then [id] **SHALL** identify any ```Location``` where its *managingOrganisation* references the target ```Organization``` being read. \n \n if a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify any ```HealthcareService``` where its *providedBy* references the target ```Organization``` being read. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 404: The resource was not found. " ] ] ) ; fhir:versioning [ fhir:v "versioned" ] ; fhir:readHistory [ fhir:v false ] ; fhir:updateCreate [ fhir:v false ] ; fhir:conditionalCreate [ fhir:v false ] ; fhir:conditionalRead [ fhir:v "not-supported" ] ; fhir:conditionalUpdate [ fhir:v false ] ; fhir:conditionalDelete [ fhir:v "not-supported" ] ] [ fhir:type [ fhir:v "Location" ] ; fhir:profile [ fhir:v "http://pca.digitalhealth.gov.au/fhir/4.0/StructureDefinition/pca-location"^^xsd:anyURI ; fhir:link ] ; fhir:documentation [ fhir:v " \n \nThis section defines the supported interactions for the [PCA Location](StructureDefinition-pca-location.html) profile of the ```Location``` resource type. \n \nA ```Location``` resource conforming to the [PCA Location](StructureDefinition-pca-location.html) profile represents a location at which healthcare services are offered by a PCA publisher. " ] ; fhir:interaction ( [ fhir:code [ fhir:v "create" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **create** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#create)) of a ```Location``` resource conforming to the [PCA Location](StructureDefinition-pca-location.html) profile. \n \n **Behaviour**: \n \n If any of the following data validation rules are violated in the input resource then the request is rejected and the error code 422 is returned: \n \n * The resource **SHALL** conform to the [PCA Location](StructureDefinition-pca-location.html) profile. \n * *id* **SHALL NOT** be present. \n * *meta.versionId* **SHALL NOT** be present. \n * *meta.lastUpdated* **SHALL NOT** be present. \n * *identifier:pca-li* **SHALL NOT** be present. \n * *providedBy* **SHALL** reference an existing ```Organization``` within the scope of the requesting system. \n * *status* **SHALL NOT** use the code 'suspended'. \n * If *type* is not present, then *address* **SHALL** be present. \n \n **HTTP interaction signature**: \n * ```POST [publisher agent base url]/Location``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * ```Location``` resource that conforms to the [PCA Location](StructureDefinition-pca-location.html) profile. \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the new ```Location``` resource. \n \n **Response Body**: \n * Success: ```Location``` resource that conforms to the [PCA Location](StructureDefinition-pca-location.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain the following *scoped role*: \n * ``` Organization/[id]:PCA:Om``` \n * ``` Organization/[id]:PCA:Hsm``` \n * ``` Organization/[id]:PS_ServicesMgr``` \n \n Where [id] **SHALL** identify the ```Organization``` referenced by *managingOrganization* in the new ```Location```. \n \n \n **Response Codes**: \n * Code 201: The resource was successfully created. \n * Code 400: The input resource could not be parsed or failed basic FHIR validation rules. \n * Code 404: The resource type is not supported, or not a FHIR end-point. \n * Code 422: The input resource violated applicable FHIR profiles or server data validation rules. " ] ] [ fhir:code [ fhir:v "read" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **read** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#read)) of a ```Location``` resource. \n \n **Behaviour**: \n \n This operation retrieves an identified ```Location``` resource that conforms to the [PCA Location](StructureDefinition-pca-location.html) profile. \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/Location/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the ```Location``` resource returned. \n \n **Response Body**: \n * Success: ```Location``` resource that conforms to the [PCA Location](StructureDefinition-pca-location.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain the following *scoped role*: \n * ```Organization/[id]:PCA:Om``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_Read``` \n * ```Location/[id]:PS_Read``` \n * ```HealthcareService/[id]:PS_Read``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the ```Organization``` referenced by *managingOrganization* in the target ```Location``` being read. \n \n if a *scoped role* identifies a ```Location``` then [id] **SHALL** identify the ```Location``` being read. \n \n if a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify a ```HealthcareService``` where its *location* references the target ```Location``` being read. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 404: The resource was not found. " ] ] [ fhir:code [ fhir:v "update" ] ; fhir:documentation [ fhir:v "**Definition**: \n\n This operation is a RESTful **update** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#update)) of a ```Location``` resource. \n \n **Behaviour**: \n \n If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned: \n \n * The resource **SHALL** conform to the [PCA Location](StructureDefinition-pca-location.html) profile. \n * *id* **SHALL** be identical to the value in the version of the ```Location``` identified in the 'if-match' HTTP header. \n * *meta.versionId* **SHALL NOT** be present. \n * *meta.lastUpdated* **SHALL NOT** be present. \n * *managingOrganization* **SHALL** be identical to the corresponding value in the version of the ```Location``` identified in the 'if-match' HTTP header. \n * *identifier:pca-li* **SHALL** be identical to the corresponding value in the version of the ```Location``` identified in the 'if-match' HTTP header. \n * *status* **SHALL NOT** use the code 'suspended'. \n * If *type* is not present, then *address* **SHALL** be present. \n * If *status* is 'inactive', then all healthcare services linked to the location **SHALL** have an *active* value of 'false'. \n \n If the 'if-match' HTTP header is not provided in the request, then the PCA Publisher Agent will reject the request and return the error code 400. \n \n If the 'if-match' HTTP header does not match the current version, then the PCA Publisher Agent will reject the request and return the error code 412. \n \n **HTTP interaction signature**: \n * ```PUT [publisher agent base url]/Location/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n * ```if-match [version id]``` where [version id] is the version of the ```Location``` being updated. \n \n **Request Body**: \n * ```Location``` resource that conforms to the [PCA Location](StructureDefinition-pca-location.html) profile. \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the ```Location``` resource returned. \n \n **Response Body**: \n * Success: ```Location``` resource that conforms to the [PCA Location](StructureDefinition-pca-location.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ``` Organization/[id]:PCA:Om``` \n * ``` Organization/[id]:PCA:Hsm``` \n * ``` Location/[id]:PCA:Hsm``` \n * ``` Organization/[id]:PS_ServiceMgr``` \n * ``` Location/[id]:PS_ServiceMgr``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the ```Organization``` referenced by *managingOrganization* in the target ```Location``` being updated. \n \n If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify the target ```Location``` being updated. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 400: Client error: request did not include the *if-match* HTTP header. \n * Code 404: The resource was not found. \n * Code 412: The version id given in the *if-Match* HTTP request header does not match the current version. \n* Code 422: The input resource violated applicable FHIR profiles or server data validation rules. " ] ] ) ; fhir:versioning [ fhir:v "versioned-update" ] ; fhir:readHistory [ fhir:v false ] ; fhir:updateCreate [ fhir:v false ] ; fhir:conditionalCreate [ fhir:v false ] ; fhir:conditionalRead [ fhir:v "not-supported" ] ; fhir:conditionalUpdate [ fhir:v false ] ; fhir:conditionalDelete [ fhir:v "not-supported" ] ; fhir:searchParam ( [ fhir:name [ fhir:v "organization" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Location-organization"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "reference" ] ] [ fhir:name [ fhir:v "status" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Location-status"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "token" ] ] [ fhir:name [ fhir:v "_lastUpdated" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Resource-lastUpdated"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "date" ] ] ) ] [ fhir:type [ fhir:v "HealthcareService" ] ; fhir:documentation [ fhir:v " \n \n This section defines the supported interactions for the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile and the [PCA Partner Service](StructureDefinition-pca-partner-service.html) profile of the ```HealthcareService``` resource type. \n \n A ```HealthcareService``` resource conforming to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile describes a healthcare service offered at a location by a PCA publisher. \n \n A ```HealthcareService``` resource conforming to the [PCA Partner Service](StructureDefinition-pca-partner-service.html) profile describes a partner service offered by a subscriber to which PCA publishers can publish their service offerings. " ] ; fhir:interaction ( [ fhir:code [ fhir:v "create" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **create** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#create)) of a ```HealthcareService``` resource conforming to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile. \n \n **Behaviour**: \n \n If any of the following data validation rules are violated in the input resource then the request is rejected and the error code 422 is returned: \n \n * The resource **SHALL** conform to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile. \n * *id* **SHALL NOT** be present. \n * *meta.versionId* **SHALL NOT** be present. \n * *meta.lastUpdated* **SHALL NOT** be present. \n * *identifier:pca-hsi* **SHALL NOT** be present. \n * *providedBy* **SHALL** reference an existing ```Organization``` within the scope of the requesting system. \n * *location* **SHALL** reference an existing ```Location``` within the scope of the requesting system. \n* *location* **SHALL** reference a ```Location``` for which *managingOrganization* references the same ```Organization``` as is referenced by *providedBy*. \n * One and only one *type* **SHALL** use the *iso21090-preferred* extension. \n * *coverageArea* **SHALL** only be present if *eligibility* contains the 'coverage-restrictedResidents' code, and/or if the *type* element of the referenced *location* contains either the 'MOBL' (mobile) or 'VI' (virtual) code. \n * If present, *notAvailable.during* **SHALL** contain a complete date and **SHALL NOT** include time or timezone data. \n * If present, *availableTime.during* elements (including *availableTime* elements using the *availableTimeApplicability* extension) **SHALL** contain a complete date and **SHALL NOT** include time or timezone data. \n * If present, *availableTime* elements using the *availableTimeApplicability* extension **SHALL** include both a start and end date for the *during* element. \n * If present, *pca-active-period* SHALL have at least *value[x].start* or *value[x].end*. \n * If present, *pca-active-period.value[x].start* SHALL be later than '1900-01-01'. \n * If present, *pca-active-period.value[x].start* SHALL be equal to, or earlier than, the *period.start* or *period.end* values of any ```PractitionerRole`` resources that reference this ```HealthcareService```. \n * If present, *pca-active-period.value[x].end* SHALL be no more than 5 years from the current date. \n * If present, *pca-active-period.value[x].end* SHALL be equal to, or later than, the *period.start* or *period.end* values of any ```PractitionerRole`` resources that reference this ```HealthcareService```. \n * *type* **SHALL** use a code that is not already being used by any existing ```PCA Healthcare Service``` resources for the same ```PCA Location```. \n \n **HTTP interaction signature**: \n * ```POST [publisher agent base url]/HealthcareService``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * ```HealthcareService``` resource that conforms to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile. \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the new ```HealthcareService``` resource. \n \n **Response Body**: \n * Success: ```HealthcareService``` resource that conforms to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ``` Organization/[id]:PCA:Om``` \n * ``` Organization/[id]:PCA:Hsm``` \n * ``` Location/[id]:PCA:Hsm``` \n * ``` Organization/[id]:PS_ServicesMgr``` \n * ``` Location/[id]:PS_ServicesMgr``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in the new ```HealthcareService```. \n \n if a *scoped role* identifies a ```Location``` then [id] **SHALL** identify the ```Location``` referenced by *location* in the new ```HealthcareService```. \n \n **Response Codes**: \n * Code 201: The resource was successfully created. \n * Code 400: The input resource could not be parsed or failed basic FHIR validation rules. \n * Code 404: The resource type is not supported, or not a FHIR end-point. \n * Code 422: The input resource violated applicable FHIR profiles or server data validation rules. " ] ] [ fhir:code [ fhir:v "read" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **read** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#read)) of a ```HealthcareService``` resource. \n \n **Behaviour**: \n \n This operation is used to retrieve an identified ```HealthcareService``` resource that conforms to one of the following profiles: \n * [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) \n * [PCA Partner Service](StructureDefinition-pca-partner-service.html) \n \n Different authorisation rules apply depending on the profile of the ```HealthcareService``` resource being retrieved; see the 'Required OAuth 2.0 scopes' section below. \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/HealthcareService/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the ```HealthcareService``` resource returned. \n \n **Response Body**: \n * Success: ```HealthcareService``` resource that conforms to either the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) or [PCA Partner Service](StructureDefinition-pca-partner-service.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ``` Organization/[id]:PS_Read``` \n * ``` Location/[id]:PS_Read``` \n * ``` HealthcareService/[id]:PS_Read``` \n \n When retrieving a ```HealthcareService``` resource that conforms to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile: \n * If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in the target ```HealthcareService``` being read. \n * If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify the ```Location``` referenced by *location* in the target ```HealthcareService``` being read. \n * If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify the target ```HealthcareService``` being read. \n \n When retrieving a ```HealthcareService``` resource that conforms to the [PCA Partner Service](StructureDefinition-pca-partner-service.html) profile: \n * If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the publishing organisation associated with the target PCA Publisher Agent. \n * If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify any existing ```Location``` within the scope of the requesting system. \n * If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify any existing ```HealthcareService``` within the scope of the requesting system. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 404: The resource was not found. " ] ] [ fhir:code [ fhir:v "update" ] ; fhir:documentation [ fhir:v "**Definition**: \n\n This operation is a RESTful **update** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#update)) of a ```HealthcareService``` resource. \n \n **Behaviour**: \n \n If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned: \n \n * The resource **SHALL** conform to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile. \n * *id* **SHALL** be identical to the value in the version of the ```HealthcareService``` identified in the 'if-match' HTTP header. \n * *meta.versionId* **SHALL NOT** be present. \n * *meta.lastUpdated* **SHALL NOT** be present. \n * *providedBy* **SHALL** be identical to the corresponding value in the version of the ```HealthcareService``` identified in the 'if-match' HTTP header. \n * *location* **SHALL** be identical to the corresponding value in the version of the ```HealthcareService``` identified in the 'if-match' HTTP header. \n * *identifier:pca-hsi* **SHALL** be identical to the corresponding value in the version of the ```HealthcareService``` identified in the 'if-match' HTTP header. \n * One and only one *type* **SHALL** use the *iso21090-preferred* extension. \n * *coverageArea* **SHALL** only be present if *eligibility* contains the 'coverage-restrictedResidents' code, and/or if the *type* element of the referenced *location* contains either the 'MOBL' (mobile) or 'VI' (virtual) code. \n * If present, *notAvailable.during* **SHALL** contain a complete date and **SHALL NOT** include time or timezone data. \n * If present, *availableTime.during* elements (including *availableTime* elements using the *availableTimeApplicability* extension) **SHALL** contain a complete date and **SHALL NOT** include time or timezone data. \n * If present, *availableTime* elements using the *availableTimeApplicability* extension **SHALL** include both a start and end date for the *during* element. \n * If present, *availableTime* elements using the *availableTimeApplicability* extension **SHALL** include both a start and end date for the *during* element. \n * If present, *pca-active-period* SHALL have at least *value[x].start* or *value[x].end*. \n * If present, *pca-active-period.value[x].start* SHALL be later than '1900-01-01'. \n * If present, *pca-active-period.value[x].start* SHALL be equal to, or earlier than, the *period.start* or *period.end* values of any ```PractitionerRole`` resources that reference this ```HealthcareService```. \n * If present, *pca-active-period.value[x].end* SHALL be no more than 5 years from the current date. \n * If present, *pca-active-period.value[x].end* SHALL be equal to, or later than, the *period.start* or *period.end* values of any ```PractitionerRole`` resources that reference this ```HealthcareService```. \n * *type* **SHALL** use a code that is not already being used by any existing ```PCA Healthcare Service``` resources for the same ```PCA Location```. \n \n If the 'if-match' HTTP header is not provided in the request, then the PCA Publisher Agent will reject the request and return the error code 400. \n \n If the 'if-match' HTTP header does not match the current version, then the PCA Publisher Agent will reject the request and return the error code 412. \n \n **HTTP interaction signature**: \n * ```PUT [publisher agent base url]/HealthcareService/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n * ```if-match [version id]``` where [version id] is the version of the ```HealthcareService``` being updated. \n \n **Request Body**: \n ```HealthcareService``` resource that conforms to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile. \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the ```HealthcareService``` resource returned. \n \n **Response Body**: \n * Success: ```HealthcareService``` resource that conforms to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ``` Organization/[id]:PCA:Om``` \n * ``` Organization/[id]:PCA:Hsm``` \n * ``` Location/[id]:PCA:Hsm``` \n * ``` HealthcareService/[id]:PCA:Hsm``` \n * ``` Organization/[id]:PS_ServiceMgr``` \n * ``` Location/[id]:PS_ServiceMgr``` \n * ``` HealthcareService/[id]:PS_ServiceMgr``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in the target ```HealthcareService``` being updated. \n \n If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify the ```Location``` referenced by *location* in the target ```HealthcareService``` being updated. \n \n If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify the target ```HealthcareService``` being updated. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 400: Client error: request did not include the *if-match* HTTP header. \n * Code 404: The resource was not found. \n * Code 412: The version id given in the *if-Match* HTTP request header does not match the current version. \n* Code 422: The input resource violated applicable FHIR profiles or server data validation rules. " ] ] [ fhir:code [ fhir:v "search-type" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **search** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#search)) for ```HealthcareService``` resources that conform to the [PCA Partner Service](StructureDefinition-pca-partner-service.html) profile. \n \n **Behaviour**: \n \n The operation is used to find ```HealthcareService``` resources that that conform to the [PCA Partner Service](StructureDefinition-pca-partner-service.html) profile and that match the search parameters. \n Note that all [PCA Partner Service](StructureDefinition-pca-partner-service.html) resources in the PCA service are accessible to all authorised client systems. \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/HealthcareService/{?[parameters]}``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n \n **Response Body**: \n * Success: Bundle that contains zero to many ```HealthcareService``` resources that conform to the [PCA Partner Service](StructureDefinition-pca-partner-service.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ``` Organization/[id]:PCA:Om``` \n * ``` Organization/[id]:PCA:Hsm``` \n * ``` Location/[id]:PCA:Hsm``` \n * ``` HealthcareService/[id]:PCA:Hsm``` \n * ``` Organization/[id]:PS_Read``` \n * ``` Location/[id]:PS_Read``` \n * ``` HealthcareService/[id]:PS_Read``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the publishing organisation associated with the target PCA Publisher Agent. \n \n If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify any existing ```Location``` within the scope of the requesting system. \n \n If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify any existing ```HealthcareService``` within the scope of the requesting system. \n \n **Response Codes**: \n * Code 200: Search successfully performed (but may return zero matching results). \n * Code 403: Server refused to perform the search. " ] ] ) ; fhir:versioning [ fhir:v "versioned-update" ] ; fhir:readHistory [ fhir:v false ] ; fhir:updateCreate [ fhir:v false ] ; fhir:conditionalCreate [ fhir:v false ] ; fhir:conditionalRead [ fhir:v "not-supported" ] ; fhir:conditionalUpdate [ fhir:v false ] ; fhir:conditionalDelete [ fhir:v "not-supported" ] ; fhir:searchParam ( [ fhir:name [ fhir:v "_profile" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Resource-profile"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "uri" ] ] [ fhir:name [ fhir:v "active" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/HealthcareService-active"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "token" ] ] [ fhir:name [ fhir:v "organization" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/HealthcareService-organization"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "reference" ] ] [ fhir:name [ fhir:v "service-catgeory" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/HealthcareService-service-category"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "token" ] ] [ fhir:name [ fhir:v "coverage-area.location.address-postalcode" ] ; fhir:type [ fhir:v "string" ] ] ) ] [ fhir:type [ fhir:v "PractitionerRole" ] ; fhir:profile [ fhir:v "http://pca.digitalhealth.gov.au/fhir/4.0/StructureDefinition/pca-practitioner-role"^^xsd:anyURI ; fhir:link ] ; fhir:documentation [ fhir:v " \n \nThis section defines the supported interactions for the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile of the ```PractitionerRole``` resource type. \n \nEach ```PractitionerRole``` resource conforming to the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile describes a practitioner in a role at a healthcare service. " ] ; fhir:interaction ( [ fhir:code [ fhir:v "create" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **create** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#create)) of a ```PractitionerRole``` resource conforming to the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile. \n \n **Behaviour**: \n \n If the ```Organization``` associated with the target PCA Publisher Agent has not been approved to participate in the PCA service, then the request will be rejected and the error code 422 will be returned. \n \n If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned: \n * The resource **SHALL** conform to the profile [http://pca.digitalhealth.gov.au/fhir/4.0/StructureDefinition/pca-practitioner-role](StructureDefinition-pca-practitioner-role.html). \n * *id* **SHALL NOT** be present. \n * *meta.versionId* **SHALL NOT** be present. \n * *meta.lastUpdated* **SHALL NOT** be present. \n * *identifier:pca-pri* **SHALL** not be present. \n * *active* **SHALL NOT** be present. \n * *organization* **SHALL** not be present. \n * *location* **SHALL** not be present. \n * *healthcareService* **SHALL** reference an existing ```HealthcareService``` that exists within the target PCA Publisher Agent. \n * *practitioner* **SHALL** reference an existing ```Practitioner``` that exists within the PCA service. \n * if *coding:hiServiceRole* is present and has the value 'ProvidesHealthcareToIndividuals', then the ```Organization``` associated with the target PCA Publisher Agent **SHALL** have authorised the Agency as a Contracted Service Provider (CSP). \n * If present, *period.start* SHALL be later than '1900-01-01'. \n * If present, *period.start* SHALL be equal to, or later than, the *pca-active-period.value[x].start* value (if present) of the ```HealthcareService``` referenced by the *healthcareService* element. \n * If present, *period.end* SHALL be no more than 5 years from the current date. \n * If present, *period.end* SHALL be equal to, or earlier than, the *pca-active-period.value[x].end* value (if present) of the ```HealthcareService``` referenced by the *healthcareService* element. \n \n Note: While the referenced ```Practitioner``` resource is managed via the PCA portal, it is also instantiated as a read-only 'proxy' within the PCA Publisher Agent. This means that the reference to ```Practitioner``` contained in the ```PractitionerRole``` is a local reference that is resolved within the PCA Publisher Agent. This 'proxy' has the same id as the resource within the PCA Portal for which it is a proxy. \n \n **HTTP interaction signature**: \n * ```POST [publisher agent base url]/PractitionerRole``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * ```PractitionerRole``` resource that conforms to the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile. \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the new ```PractitionerRole``` resource. \n \n **Response Body**: \n * Success: ```PractitionerRole``` resource that conforms to the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ``` Organization/[id]:PCA:Om``` \n * ``` Organization/[id]:PCA:Hsm``` \n * ``` Location/[id]:PCA:Hsm``` \n * ``` HealthcareService/[id]:PCA:Hsm``` \n * ``` Organization/[id]:PS_ServicesMgr``` \n * ``` Location/[id]:PS_ServicesMgr``` \n * ``` HealthcareService/[id]:PS_ServicesMgr``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* of the ```HealthcareService``` referenced by *healthcareService* in the new ```PractitionerRole```. \n \n if a *scoped role* identifies a ```Location``` then [id] **SHALL** identify the ```Location``` referenced by *location* of the ```HealthcareService``` referenced by *healthcareService* in the new ```PractitionerRole```. \n \n if a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify the ```HealthcareService``` referenced by *healthcareService* in the new ```PractitionerRole```. \n \n **Response Codes**: \n * Code 201: The resource was successfully created. \n * Code 400: The input resource could not be parsed or failed basic FHIR validation rules. \n * Code 404: The resource type is not supported, or not a FHIR end-point. \n * Code 422: The input resource violated applicable FHIR profiles or server data validation rules. " ] ] [ fhir:code [ fhir:v "read" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **read** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#read)) of a ```PractitionerRole``` resource. \n \n **Behaviour**: \n \n This operation retrieves an identified ```PractitionerRole``` resource that conforms to the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile. \n \n **HTTP interaction signature**: \n \n * ```GET [publisher agent base url]/PractitionerRole/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the ```PractitionerRole``` resource returned. \n \n **Response Body**: \n * Success: ```PractitionerRole``` resource that conforms to the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_Read``` \n * ```Location/[id]:PS_Read``` \n * ```HealthcareService/[id]:PS_Read``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in the ```HealthcareService``` referenced by *healthcareService* in the target ```PractitionerRole``` being read. \n \n If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify the ```Location``` referenced by *location* in the ```HealthcareService``` referenced by *healthcareService* in the target ```PractitionerRole``` being read. \n \n If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify the ```HealthcareService``` referenced by *healthcareService* in the target ```PractitionerRole``` being read. \n \n **Response Codes**: \n* Code 200: The resource was found and returned. \n* Code 404: The resource was not found. " ] ] [ fhir:code [ fhir:v "update" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **update** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#update)) of a ```PractitionerRole``` resource. \n \n **Behaviour**: \n \n If the ```Organization``` associated with the target PCA Publisher Agent has not been approved to participate in the PCA service, then the request will be rejected and the error code 422 will be returned. \n \n If any of the following data validation rules are violated in the input resource then the request is rejected and the error code 422 is returned: \n * The resource **SHALL** conform to the [PCA Practitoner Role](StructureDefinition-pca-practitioner-role.html) profile. \n * *id* **SHALL** be identical to the value in the version of the ```PractitionerRole``` identified in the 'if-match' HTTP header. \n * *meta.versionId* **SHALL NOT** be present. \n * *meta.lastUpdated* **SHALL NOT** be present. \n * *identifier:pca-pri* **SHALL** be identical to the corresponding value in the version of the ```PractitionerRole``` identified in the 'if-match' HTTP header. \n * *active* **SHALL NOT** be present. \n * *organization* **SHALL** be identical to the corresponding value in the version of the ```PractitionerRole``` identified in the 'if-match' HTTP header. \n * *location* **SHALL** be identical to the corresponding value in the version of the ```PractitionerRole``` identified in the 'if-match' HTTP header. \n * *healthcareService* **SHALL** be identical to the corresponding value in the version of the ```PractitionerRole``` identified in the 'if-match' HTTP header. \n * *practitioner* **SHALL** be identical to the corresponding value in the version of the ```PractitionerRole``` identified in the 'if-match' HTTP header. \n * if *coding:hiServiceRole* is present and has the value 'ProvidesHealthcareToIndividuals', then the Organization associated with the target PCA Publisher Agent **SHALL** have authorised the Agency as a Contracted Service Provider (CSP). \n * If present, *period.start* SHALL be later than '1900-01-01'. \n * If present, *period.start* SHALL be equal to, or later than, the *pca-active-period.value[x].start* value (if present) of the ```HealthcareService``` referenced by the *healthcareService* element. \n * If present, *period.end* SHALL be no more than 5 years from the current date. \n * If present, *period.end* SHALL be equal to, or earlier than, the *pca-active-period.value[x].end* value (if present) of the ```HealthcareService``` referenced by the *healthcareService* element. \n \n If the 'if-match' HTTP header is not provided in the request, then the PCA Publisher Agent will reject the request and return the error code 400. \n \n If the 'if-match' HTTP header does not match the current version, then the PCA Publisher Agent will reject the request and return the error code 412. \n \n **HTTP interaction signature**: \n * ```PUT [publisher agent base url]/PractitionerRole/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n * ```if-match [version id]``` where [version id] is the version of the PractitionerRole being updated. \n \n **Request Body**: \n * ```PractitionerRole``` resource that conforms to the [PCA Practtiioner Role](StructureDefinition-pca-practitioner-role.html) profile. \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the PractitionerRole resource returned. \n \n **Response Body**: \n * Success: ```PractitionerRole``` resource that conforms to the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_PractitionerMgr``` \n * ```Location/[id]:PS_PractitionerMgr``` \n * ```HealthcareService/[id]:PS_PractitionerMgr``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in the ```HealthcareService``` referenced by *healthcareService* in the target ```PractitionerRole``` being updated. \n \n If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify the ```Location``` referenced by *location* in the ```HealthcareService``` referenced by *healthcareService* in the target ```PractitionerRole``` being updated. \n \n If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify the ```HealthcareService``` referenced by *healthcareService* in the target ```PractitionerRole``` being updated. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 400: Client error: request did not include the *if-match* HTTP header. \n * Code 404: The resource was not found. \n * Code 412: The version id given in the *if-Match* HTTP request header does not match the current version \n * Code 422: The input resource violated applicable FHIR profiles or server data validation rules. " ] ] ) ; fhir:versioning [ fhir:v "versioned-update" ] ; fhir:readHistory [ fhir:v false ] ; fhir:updateCreate [ fhir:v false ] ; fhir:conditionalCreate [ fhir:v false ] ; fhir:conditionalRead [ fhir:v "not-supported" ] ; fhir:conditionalUpdate [ fhir:v false ] ; fhir:conditionalDelete [ fhir:v "not-supported" ] ; fhir:searchParam ( [ fhir:name [ fhir:v "_lastUpdated" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Resource-lastUpdated"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "date" ] ] [ fhir:name [ fhir:v "_id" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Resource-id"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "token" ] ] [ fhir:name [ fhir:v "active" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/PractitionerRole-active"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "token" ] ] [ fhir:name [ fhir:v "identifier" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/PractitionerRole-identifier"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "token" ] ] [ fhir:name [ fhir:v "organization" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/PractitionerRole-organization"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "reference" ] ] [ fhir:name [ fhir:v "practitioner" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/PractitionerRole-practitioner"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "reference" ] ] [ fhir:name [ fhir:v "service" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/PractitionerRole-service"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "reference" ] ] ) ] [ fhir:type [ fhir:v "Practitioner" ] ; fhir:profile [ fhir:v "http://pca.digitalhealth.gov.au/fhir/4.0/StructureDefinition/pca-practitioner"^^xsd:anyURI ; fhir:link ] ; fhir:documentation [ fhir:v " \n \nThis section defines the supported interactions for the [PCA Practitioner](StructureDefinition-pca-practitioner.html) profile of the ```Practitioner``` resource type. \n \nEach ```Practitioner``` resource conforming the [PCA Practitioner](StructureDefinition-pca-practitioner.html) profile is a read-only proxy for a corresponding ```Practitioner``` resource managed by the PCA portal. \n \nEach 'proxy' has the same *id* and *versionId* as the resource within the PCA portal for which it is a proxy. " ] ; fhir:interaction ( [ fhir:code [ fhir:v "read" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **read** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#read)) of a ```Practitioner``` resource. \n \n **Behaviour**: \n \n This operation retrieves an identified ```Practitioner``` resource that conforms to the [PCA Practitioner](StructureDefinition-pca-practitioner.html) profile. \n \n The PCA Publisher Agent will include a *identifier:hpii* in the ```Practitioner``` resource returned if **all** of the following conditions are met: \n * HPI-I and Ahpra number match in the HI service. \n * The ```Organization``` on whose behalf the request is made is a publisher organisation. \n * The ```Organization``` on whose behalf the request is made has been approved to participate in the PCA service. \n * The ```Organization``` on whose behalf the request is made has authorised the Agency as a Contracted Service Provider (CSP). \n * The client system is authorised to read an existing PractitionerRole where *practitioner* references the ```Practitioner``` resource returned **and** where *coding:hiServiceRole* has the value 'ProvidesHealthcareToIndividuals'. \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/Practitioner/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the ```Practitioner``` resource returned. \n \n **Response Body**: \n * Success: ```Practitioner``` resource that conforms to the [PCA Practitioner](StructureDefinition-pca-practitioner.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_Read``` \n * ```Location/[id]:PS_Read``` \n * ```HealthcareService/[id]:PS_Read``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the publishing organisation associated with the requesting system. \n \n If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify any existing ```Location``` within the scope of the requesting system. \n \n If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify any existing ```HealthcareService``` within the scope of the requesting system. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 404: The resource was not found. " ] ] [ fhir:code [ fhir:v "search-type" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **search** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#search)) for a ```Practitioner``` resource for either a given Ahpra registration number or HPI-I identifier that conforms to the [PCA Practitioner](StructureDefinition-pca-practitioner.html) profile. \n \n **Behaviour**: \n \n The operation is used to find a ```Practitioner``` resource given their Ahpra registration number or HPI-I identifier. The PCA Publisher Agent will return zero or one ```Practitioner``` resource that conforms to the [PCA Practitioner](StructureDefinition-pca-partner-service.html) profile. \n \n The operation is only available to client systems acting on behalf of publisher organisations (see ‘Required OAuth 2.0 scopes’ below). \n \n The PCA Publisher Agent will reject requests and return the error code 403 if the identifier query string is not present, or if the identifier query string does not qualify the identifier value with one of the following systems: \n * http://hl7.org.au/id/ahpra-registration-number (when searching on Ahpra registration number) \n * http://ns.electronichealth.net.au/id/hi/hpii/1.0 (when searching on HPI-I) \n \n The PCA Publisher Agent return a ```Bundle``` containing exactly one ```Practitioner``` resource if the identifier query string matches the same record in either the Ahpra Register of practitioners or the HI Service, else it will return a ```Bundle``` contanining zero results. \n \n The PCA Publisher Agent will only support searching by HPI-I if the client system’s organisation has has made the PCA a Contracted Service Provider (CSP). \n \n The PCA Publisher Agent will include the *identifier:hpii* element in the ```Practitioner``` resource returned if the client system’s organisation has has made the PCA a Contracted Service Provider (CSP) and the ```Practitioner``` resource's *coding:hiServiceRole* element has the value ‘ProvidesHealthcareToIndividuals’. \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/Practitioner/{?[parameter]}``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n \n **Response Body**: \n * Success: Bundle that contains zero to one ```Practitioner``` resources that conforms to the [PCA Practitioner](StructureDefinition-pca-practitioner.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_ServicesMgr``` \n * ```Location/[id]:PS_ServicesMgr``` \n * ```HealthcareService/[id]:PS_ServicesMgr``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the publishing organisation associated with the requesting system. \n \n If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify any existing ```Location``` within the scope of the requesting system. \n \n If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify any existing ```HealthcareService``` within the scope of the requesting system. \n \n **Response Codes**: \n * Code 200: Search successfully performed (but may return zero matching results). \n * Code 403: Server refused to perform the search. " ] ] ) ; fhir:versioning [ fhir:v "versioned" ] ; fhir:readHistory [ fhir:v false ] ; fhir:updateCreate [ fhir:v false ] ; fhir:conditionalCreate [ fhir:v false ] ; fhir:conditionalRead [ fhir:v "not-supported" ] ; fhir:conditionalUpdate [ fhir:v false ] ; fhir:conditionalDelete [ fhir:v "not-supported" ] ; fhir:searchParam ( [ fhir:name [ fhir:v "identifier" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Practitioner-identifier"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "token" ] ] ) ] [ fhir:type [ fhir:v "Provenance" ] ; fhir:profile [ fhir:v "http://pca.digitalhealth.gov.au/fhir/4.0/StructureDefinition/pca-provenance"^^xsd:anyURI ; fhir:link ] ; fhir:documentation [ fhir:v " \n \n This section defines the supported interactions for the [PCA Provenance](StructureDefinition-pca-provenance.html) profile of the ```Provenance``` resource type. \n \n Each ```Provenance``` resource conforming to the [PCA Provenance](StructureDefinition-pca-provenance.html) profile represents an activity performed by the PCA service (conditionally on behalf of a participating organisation when the target element references a PCA Organization resource) whereby specific data elements of a PCA Organization or PCA Practitioner resource have been initially retrieved, updated or verified from an external system of record. " ] ; fhir:interaction ( [ fhir:code [ fhir:v "read" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **read** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#read)) of a ```Provenance``` resource. \n \n **Behaviour**: \n \n This operation retrieves an identified ```Provenance``` resource that conforms to the [PCA Provenance](StructureDefinition-pca-practitioner-role.html) profile. \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/Provenance/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n \n **Response Body**: \n * Success: ```Provenance``` resource that conforms to the [PCA Provenance](StructureDefinition-pca-provenance.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_Read``` \n * ```Location/[id]:PS_Read``` \n * ```HealthcareService/[id]:PS_Read``` \n \n If the ```Provenance``` resource being read has a *target* that references an ```Organization```, then: \n * If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the ```Organization``` referenced by *target* in the ```Provenance``` resource being read. \n \n If the ```Provenance``` resource being read has a *target* that references a ```Practitioner```, then: \n * If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the publishing organisation associated with the requesting system. \n * If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify any existing ```Location``` within the scope of the requesting system. \n * If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify any existing ```HealthcareService``` within the scope of the requesting system. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 404: The resource was not found. " ] ] ) ; fhir:versioning [ fhir:v "no-version" ] ; fhir:readHistory [ fhir:v false ] ; fhir:updateCreate [ fhir:v false ] ; fhir:conditionalCreate [ fhir:v false ] ; fhir:conditionalRead [ fhir:v "not-supported" ] ; fhir:conditionalUpdate [ fhir:v false ] ; fhir:conditionalDelete [ fhir:v "not-supported" ] ] [ fhir:type [ fhir:v "Contract" ] ; fhir:documentation [ fhir:v " \n \n This section defines the supported interactions for the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile and the [PCA Information Use Statement](StructureDefinition-pca-information-use-statement.html) profile of the ```Contract``` resource type. \n \n \n A ```Contract``` resource conforming to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile records a decision regarding the publication of a specific service offering (either a ```HealthcareService``` or a ```PractitionerRole```) to a specific partner service. The decision is either to authorise publication or to revoke a previous authority to publish. \n \n A ```Contract``` resource conforming to the [PCA Information Use Statement](StructureDefinition-pca-information-use-statement.html) profile represents a policy statement by a subscriber organisation's partner service that describes how they will use the information from publisher organisations that is disclosed to the partner service. " ] ; fhir:interaction ( [ fhir:code [ fhir:v "create" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **create** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#create)) of a ```Contract``` resource conforming to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile. \n \n Please note: This operation will be available in Release 2.1 of PCA. \n \n **Behaviour**: \n \n This operation records a decision made by an authorised representative of a publisher organisation to authorise the publication of a ```HealthcareService``` or ```PractitionerRole``` to a partner service. \n \n Authorisation is implemented using this operation. Revocation is implemented by updating the *status* of the existing ```Contract``` to 'revoked'. \n \n A ```Contract``` resource cannot be created with a *status* of 'cancelled' - this status can only by set by the PCA service and is used to indicate that the partner service associated with the publication authorisation is inactive. \n \n If the invocation of a ```Contract``` resource with *status* of 'executed' is sucessful then the PCA service will make the following resources available to the PCA Subscriber Agent of the organisation referenced by *providedBy* of the partner service: \n \n * *target* resource (```HealthcareService``` or ```PractitionerRole```). \n * ```Organization```, ```Location``` and ```Practitioner``` resources that are referenced directly or indirectly by the target ```HealthcareService``` or ```PractitionerRole```. \n * The newly created ```Contract``` resource. \n \n The PCA service will also continue to make available any new versions of these resources to the same PCA Subscriber Agent. This process continues until the existing ```Contract``` resource is updated with a *status* of 'revoked'. \n \n Prior to invoking this operation the following PCA API operations are available to provide the information that is recorded in the ```Contract``` resource to be created. \n \n * If not already identified or synchronised locally, then search for the relevant resource(s) using [search-system](CapabilityStatement-pca-publisher-agent.html#search-system) (for service offering resources to publish) and [PartnerService search-type](CapabilityStatement-pca-publisher-agent.html) (for partner services registered in the PCA service) \n * Get the current text of the information use statement for the selected partner service: \n * Get the partner service (i.e. a HealthcareService) using [PartnerService read](CapabilityStatement-pca-publisher-agent.html) \n * Get the reference to the latest version of the Information Use Statement (i.e. a ```Contract``` resource) from the [pca-current-information-use-statement](StructureDefinition-pca-current-information-use-statement.html) extension in the partner service resource \n * Get the text of the information use statement using [Information Use Statement read](CapabilityStatement-pca-publisher-agent.html) \n \n If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned: \n \n * The resource **SHALL** conform to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile. \n * *id* **SHALL NOT** be present. \n * *meta.versionId* **SHALL NOT** be present. \n * *meta.lastUpdated* **SHALL NOT** be present. \n * *subject* **SHALL** reference an existing ```HealthcareService``` or ```PractitionerRole``` implemented by the PCA Publisher Agent (i.e. the target FHIR server) \n * *instantiatesCanonical* **SHALL** reference the information use statement (i.e. a ```Contract``` resource) whose *legal.content[x].data* element was viewed by the person responsible for making the publication decision recorded via the new ```Contract``` resource. \n * *author* **SHALL** be a local reference to a contained resource of type [PCA Publication Approver](StructureDefinition-pca-publication-approver.html). \n * *status* **SHALL** use the code 'executed'. \n * The partner service referenced by the *subject* of the information use statement referenced in *instantiatesCanonical* **SHALL** have an *active* value of 'true'. \n \n **HTTP interaction signature**: \n * ```POST [publisher agent base url]/Contract``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * ```Contract``` resource that conforms to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile. \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n \n **Response Body**: \n * Success: ```Contract``` resource that conforms to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_PublicationMgr``` \n * ```Location/[id]:PS_PublicationMgr``` \n * ```HealthcareService/[id]:PS_PublicationMgr``` \n \n If a *scoped role* identifies an ```Organization``` then: \n \n * If the *subject* of the ```Contract``` being created references a ```HealthcareService``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in that ```HealthcareService```. \n * If the *subject* of the ```Contract``` being created references a ```PractitionerRole``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in the ```HealthcareService``` referenced by *healthcareService* in that ```PractitionerRole```. \n \n If a *scoped role* identifies a ```Location``` then: \n * If the *subject* of the ```Contract``` being created references a ```HealthcareService``` then [id] **SHALL** identify the ```Location``` referenced by *location* in that ```HealthcareService```. \n * If the *subject* of the ```Contract``` being created references a ```PractitionerRole``` then [id] **SHALL** identify the ```Location``` referenced by *location* in the ```HealthcareService``` referenced by *healthcareService* in that ```PractitionerRole```. \n \n If a *scoped role* identifies a ```HealthcareService``` then: \n * If the *subject* of the ```Contract``` being created references a ```HealthcareService``` then [id] **SHALL** identify that ```HealthcareService```. \n * If the *subject* of the ```Contract``` being created references a ```PractitionerRole``` then [id] **SHALL** identify the ```HealthcareService``` referenced by *healthcareService* in that ```PractitionerRole```. \n \n **Response Codes**: \n * Code 201: The resource was successfully created. \n * Code 400: The input resource could not be parsed or failed basic FHIR validation rules. \n * Code 404: The resource type is not supported, or not a FHIR end-point. \n * Code 422: The input resource violated applicable FHIR profiles or server data validation rules. " ] ] [ fhir:code [ fhir:v "read" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **read** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#read)) of a ```Contract``` resource. \n \n Please note: This operation will be available in Release 2.1 of PCA. \n \n **Behaviour**: \n \n This operation is used to retrieve an identified ```Contract``` resource that conforms to one of the following profiles: \n * [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) \n * [PCA Information Use Statement](StructureDefinition-pca-information-use-statement.html) \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/Contract/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n \n **Response Body**: \n * Success: ```Contract``` resource that conforms to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile or the [PCA Information Use Statement](StructureDefinition-pca-information-use-statement.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n\n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_Read``` \n * ```Location/[id]:PS_Read``` \n * ```HealthcareService/[id]:PS_Read``` \n \n When retrieving a ```Contract``` resource that conforms to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile: \n * If a *scoped role* identifies an ```Organization``` then: \n \n * If the *subject* of the ```Contract``` being read references a ```HealthcareService``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in that ```HealthcareService```. \n * If the *subject* of the ```Contract``` being read references a ```PractitionerRole``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in the ```HealthcareService``` referenced by *healthcareService* in that ```PractitionerRole```. \n * If a *scoped role* identifies a ```Location``` then: \n * If the *subject* of the ```Contract``` being read references a ```HealthcareService``` then [id] **SHALL** identify the ```Location``` referenced by *location* in that ```HealthcareService```. \n * If the *subject* of the ```Contract``` being read references a ```PractitionerRole``` then [id] **SHALL** identify the ```Location``` referenced by *location* in the ```HealthcareService``` referenced by *healthcareService* in that ```PractitionerRole```. \n * If a *scoped role* identifies a ```HealthcareService``` then: \n * If the *subject* of the ```Contract``` being read references a ```HealthcareService``` then [id] **SHALL** identify that ```HealthcareService```. \n * If the *subject* of the ```Contract``` being read references a ```PractitionerRole``` then [id] **SHALL** identify the ```HealthcareService``` referenced by *healthcareService* in that ```PractitionerRole```. \n \n When retrieving a ```Contract``` resource that conforms to the [PCA Information Use Statement](StructureDefinition-pca-information-use-statement.html) profile: \n * If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the publishing organisation associated with the target PCA Publisher Agent. \n * If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify any existing ```Location``` within the scope of the requesting system. \n * If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify any existing ```HealthcareService``` within the scope of the requesting \n \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 404: The resource was not found. " ] ] [ fhir:code [ fhir:v "update" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **update** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#create)) of a ```Contract``` resource. \n \n Please note: This operation will be available in Release 2.1 of PCA. \n \n **Behaviour**: \n \n This operation can be used to record a decision made by an authorised representative of a publisher organisation to revoke an existing authorisation to publish, or to record that a new version of a partner service's information use statement has been accepted: \n \n * Revocation is implemented using this operation by updating the *status* of an existing ```Contract``` resource to 'revoked'. \n * Accepting a new version of a partner service's information use statement is implemented using this operation by updating the *instantiatesCanonical* of an existing ```Contract``` resource to reference a new information use statement. \n \n To re-authorise publication after revoking, create a new ```Contract``` resource. \n \n If any of the following data validation rules are violated in the input resource, then the request is rejected and the error code 422 is returned: \n * The resource **SHALL** conform to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile. \n * *id* **SHALL** be identical to the corresponding value in the version of the ```Contract``` identified in the 'if-match' HTTP header. \n * *meta.versionId* **SHALL NOT** be present. \n * *meta.lastUpdated* **SHALL NOT** be present. \n * *subject* **SHALL** be identical to the corresponding value in the version of the ```Contract``` identified in the 'if-match' HTTP header. \n * *author* **SHALL** be identical to the corresponding value in the version of the ```Contract``` identified in the 'if-match' HTTP header. \n * Updates to *instantiatesCanonical* **SHALL** only be permitted where the version of the ```Contract``` identified in the 'if-match' HTTP header has a *status* of 'executed', and *status* is not also being updated. \n * Updates to *status* **SHALL** only be permitted where the *status* is being updated to *revoked*, and *instantiatesCanonical* is not also being updated. \n * If *instantiatesCanonical* is being updated, the partner service referenced by the *subject* of the information use statement referenced in *instantiatesCanonical* **SHALL** have an *active* value of 'true'. \n * If *instantiatesCanonical* is being updated, the partner service referenced by the *subject* of the information use statement referenced in *instantiatesCanonical* **SHALL** be identical to the previous *subject* of the information use statement referenced in *instantiatesCanonical* in the version of the ```Contract``` identified in the 'if-match' HTTP header. \n \n If the 'if-match' HTTP header is not provided in the request, then the PCA Publisher Agent will reject the request and return the error code 400. \n \n If the 'if-match' HTTP header does not match the current version, then the PCA Publisher Agent will reject the request and return the error code 412. \n \n **HTTP interaction signature**: \n * ```PUT [publisher agent base url]/Contract``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n * ```if-match [version id]``` where [version id] is the version of the ```Contract``` being updated. \n \n **Request Body**: \n * ```Contract``` resource that conforms to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile. \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n * ```ETag: [version id]``` where [version id] identifies the version of the ```Contract``` resource returned. \n \n **Response Body**: \n * Success: ```Contract``` resource that conforms to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_PublicationMgr``` \n * ```Location/[id]:PS_PublicationMgr``` \n * ```HealthcareService/[id]:PS_PublicationMgr``` \n \n If a *scoped role* identifies an ```Organization``` then: \n \n * If the *subject* of the ```Contract``` being created references a ```HealthcareService``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in that ```HealthcareService```. \n * If the *subject* of the ```Contract``` being created references a ```PractitionerRole``` then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* in the ```HealthcareService``` referenced by *healthcareService* in that ```PractitionerRole```. \n \n If a *scoped role* identifies a ```Location``` then: \n * If the *subject* of the ```Contract``` being created references a ```HealthcareService``` then [id] **SHALL** identify the ```Location``` referenced by *location* in that ```HealthcareService```. \n * If the *subject* of the ```Contract``` being created references a ```PractitionerRole``` then [id] **SHALL** identify the ```Location``` referenced by *location* in the ```HealthcareService``` referenced by *healthcareService* in that ```PractitionerRole```. \n \n If a *scoped role* identifies a ```HealthcareService``` then: \n * If the *subject* of the ```Contract``` being created references a ```HealthcareService``` then [id] **SHALL** identify that ```HealthcareService```. \n * If the *subject* of the ```Contract``` being created references a ```PractitionerRole``` then [id] **SHALL** identify the ```HealthcareService``` referenced by *healthcareService* in that ```PractitionerRole```. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 400: Client error: request did not include the *if-match* HTTP header. \n * Code 404: The resource was not found. \n * Code 412: The version id given in the *if-Match* HTTP request header does not match the current version \n * Code 422: The input resource violated applicable FHIR profiles or server data validation rules. " ] ] [ fhir:code [ fhir:v "search-type" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **search** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#search)) for ```Contract``` resources. \n \n **Behaviour**: \n \n This operation is used to find ```Contract``` resources that conform to the [PCA Information Use Statement](StructureDefinition-pca-information-use-statement.html) profile and that match the search parameters. \n \n Note that all [PCA Information Use Statement](StructureDefinition-pca-information-use-statement.html) resources in the PCA service are accessible to all authorised client systems. \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/Contract/{?[parameters]}``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n \n **Response Body**: \n* Success: ```Bundle``` containing zero to many ```Contract``` resources that conform to the [PCA Information Use Statement](StructureDefinition-pca-information-use-statement.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_Read``` \n * ```Location/[id]:PS_Read``` \n * ```HealthcareService/[id]:PS_Read``` \n \n If a *scoped role* identifies an ```Organization``` then [id] **SHALL** identify the publishing organisation associated with the target PCA Publisher Agent. \n \n If a *scoped role* identifies a ```Location``` then [id] **SHALL** identify any existing ```Location``` within the scope of the requesting system. \n \n If a *scoped role* identifies a ```HealthcareService``` then [id] **SHALL** identify any existing ```HealthcareService``` within the scope of the requesting system. \n \n **Response Codes**: \n * Code 200: Search successfully performed (but may return zero matching results). \n * Code 403: Server refused to perform the search. " ] ] ) ; fhir:versioning [ fhir:v "versioned-update" ] ; fhir:readHistory [ fhir:v false ] ; fhir:updateCreate [ fhir:v false ] ; fhir:conditionalCreate [ fhir:v false ] ; fhir:conditionalRead [ fhir:v "not-supported" ] ; fhir:conditionalUpdate [ fhir:v false ] ; fhir:conditionalDelete [ fhir:v "not-supported" ] ; fhir:searchParam ( [ fhir:name [ fhir:v "_profile" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Resource-profile"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "uri" ] ] [ fhir:name [ fhir:v "subject" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Contract-subject"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "reference" ] ] [ fhir:name [ fhir:v "version" ] ; fhir:type [ fhir:v "string" ] ] ) ] [ fhir:type [ fhir:v "Task" ] ; fhir:profile [ fhir:v "http://pca.digitalhealth.gov.au/fhir/4.0/StructureDefinition/pca-match-record"^^xsd:anyURI ; fhir:link ] ; fhir:documentation [ fhir:v " \n \n This section defines the supported interactions for the [PCA Match Record](StructureDefinition-pca-match-record.html) profile of the ```Task``` resource type. \n \n A ```Task``` resource conforming to the [PCA Match Record](StructureDefinition-pca-match-record.html) profile indicates the matching status of a service offering to a partner service’s local data store. " ] ; fhir:interaction ( [ fhir:code [ fhir:v "read" ] ; fhir:documentation [ fhir:v "**Definition**: \n \n This operation is a RESTful **read** interaction (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#read)) of a ```Task``` resource. \n \n **Behaviour**: \n \n This operation retrieves an identified ```Task``` resource that conforms to the [PCA Match Record](StructureDefinition-pca-match-record.html) profile. \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/Task/[id]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n \n **Response Body**: \n * Success: ```Task``` resource that conforms to the [PCA Match Record](StructureDefinition-pca-match-record.html) profile. \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain one or more of the following *scoped roles*: \n * ```Organization/[id]:PCA:Om``` \n * ```Organization/[id]:PCA:Hsm``` \n * ```Location/[id]:PCA:Hsm``` \n * ```HealthcareService/[id]:PCA:Hsm``` \n * ```Organization/[id]:PS_Read``` \n * ```Location/[id]:PS_Read``` \n * ```HealthcareService/[id]:PS_Read``` \n \n If a *scoped role* identifies an ```Organization``` then: \n * If the *focus* of the ```Task``` being read references an ```Organization```, then [id] **SHALL** identify that ```Organization```. \n * If the *focus* of the ```Task``` being read references a ```Location```, then [id] **SHALL** identify the ```Organization``` referenced by *managingOrganization* of the ```Location```. \n * If the *focus* of the ```Task``` being read references a ```HealthcareService```, then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* of that HealthcareService. \n * If the *focus* of the ```Task``` being read references a ```PractitionerRole```, then [id] **SHALL** identify the ```Organization``` referenced by *providedBy* of the ```HealthcareService``` referenced by *healthcareService* of that ```PractitionerRole```. \n \n If a *scoped role* identifies a ```Location``` then: \n * If the *focus* of the ```Task``` being read references a ```Location```, then [id] **SHALL** identify that ```Location```. \n * If the *focus* of the ```Task``` being read references a ```HealthcareService```, then [id] **SHALL** identify the ```Location``` referenced by *location* of that ```HealthcareService```. \n * If the *focus* of the ```Task``` being read references a ```PractitionerRole```, then [id] **SHALL** identify the ```Location``` referenced by *location* of the ```HealthcareService``` referenced by *healthcareService* of that PractitionerRole. \n \n If a *scoped role* identifies a ```HealthcareService``` then: \n * If the *focus* of the ```Task``` being read references a ```HealthcareService```, then [id] **SHALL** identify that ```HealthcareService```. \n * If the *focus* of the ```Task``` being read references a ```PractitionerRole```, then [id] **SHALL** identify the ```HealthcareService``` referenced by *healthcareService* of that PractitionerRole. \n \n **Response Codes**: \n * Code 200: The resource was found and returned. \n * Code 404: The resource was not found. " ] ] ) ; fhir:versioning [ fhir:v "versioned" ] ; fhir:readHistory [ fhir:v false ] ; fhir:updateCreate [ fhir:v false ] ; fhir:conditionalCreate [ fhir:v false ] ; fhir:conditionalRead [ fhir:v "not-supported" ] ; fhir:conditionalUpdate [ fhir:v false ] ; fhir:conditionalDelete [ fhir:v "not-supported" ] ] ) ; fhir:interaction ( [ fhir:code [ fhir:v "search-system" ] ; fhir:documentation [ fhir:v "**Definition**: \n This operation is a RESTful *search* interaction (whole system interaction), across multiple resource types (as described in the [FHIR specification](https://www.hl7.org/fhir/http.html#search)). \n \n **Behaviour**: \n This operation is used by a client system operated by a publisher organisation to get resources that match the specified search parameters and that are within the scope of the publisher organisation. \n \n The following search parameters are supported: \n * *_lastUpdated* is used to get the resources that have been added or changed since the requesting system last synchronised their local data store with PCA Publisher Agent. This search parameter supports the ```gt``` and ```lt``` comparison prefixes. \n * *_type* is used to filter the resources returned by their resource type. The available types are: \n \n * ```HealthcareService``` (returns resources conforming to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile) \n * ```PractitionerRole``` (returns resources conforming to the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile) \n * ```Organization``` (returns resources conforming to the [PCA Organization](StructureDefinition-pca-organization.html) profile) \n * ```Location``` (returns resources conforming to the [PCA Location](StructureDefinition-pca-location.html) profile) \n * ```Practitioner``` (returns resources conforming to the [PCA Practitioner](StructureDefinition-pca-practitioner.html) profile) \n * ```Provenance``` (returns resources conforming to the [PCA Provenance](StructureDefinition-pca-provenance.html) profile) \n * ```Contract``` (returns resources conforming to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile) \n * ```Task``` (returns resources conforming to the [PCA Match Record](StructureDefinition-pca-match-record.html) profile) \n \n \n * *_include* (and *_include:iterate*) are used in order that all the resources that match the *_lastUpdated* and *_type* filters will be accompanied, in the result Bundle, with all the other resources which they reference (directly or indirectly). \n \n Note that the use of *_include* (and *_include:iterate*) means that a resource may be present in the result ```Bundle``` either because it matched the other query parameters or because it was referenced (possibly indirectly) by another resource that matched the other query parameters. \n \n All of the following query parameters are required in order to receive the complete set of resources that have been created or changed since *[last_synchronized]*: \n \n ``` _lastUpdated=[last_synchronized] ``` \n ```_type=HealthcareService,PractitionerRole,Practitioner,Organization,Location,Provenance,Contract,Task ``` \n ```_include=Location:organization ``` \n ```_include=HealthcareService:organization ``` \n ```_include=HealthcareService:location ``` \n ```_include=PractitionerRole:organization ``` \n ```_include=PractitionerRole:location ``` \n ```_include=PractitionerRole:service ``` \n ```_include=PractitionerRole:practitioner ``` \n ```_include=Provenance:target ``` \n ```_include=Contract:subject ``` \n ```_include:iterate=HealthcareService:organization ``` \n ```_include:iterate=HealthcareService:location ``` \n ```_include:iterate=PractitionerRole:organization ``` \n ```_include:iterate=PractitionerRole:location ``` \n ```_include:iterate=PractitionerRole:service ``` \n ```_include:iterate=PractitionerRole:practitioner ``` \n \n This operation supports 'paging' ([see FHIR specification](https://www.hl7.org/fhir/search.html#Paging)). If there are too many resources to return in one ```Bundle```, the FHIR server adds a *next* link to the response ```Bundle```. The contents of the result ```Bundle``` therefore comprise all instances of the requested resource types whose *lastUpdated* timestamp is greater than the in the request query expression and less than or equal to where is the greatest *lastUpdated* value of all resources included in the result ```Bundle```. The Publisher Agent FHIR server sets the *next* link to the filter expression that was used in the original request except that is replaced with . If the *next* link is not present in the ```Bundle```, then there are no more service offerings available. \n \n **HTTP interaction signature**: \n * ```GET [publisher agent base url]/?[parameters]``` \n \n **Mandatory Request Headers**: \n * ```Accept: application/fhir+json;charset=utf-8``` or ```Accept: application/fhir+xml;charset=utf-8``` \n * ```Authorization: Bearer [token]``` \n \n **Request Body**: \n * (No request body) \n \n **Mandatory Response Headers**: \n * ```Content-Type: application/fhir+json;charset=utf-8``` or ```Content-Type: application/fhir+xml;charset=utf-8``` \n \n **Response Body**: \n * Success: ```Bundle``` that contains zero to many resources (where the resource type was included in the filter expression of the search request) that conform to the following [PCA profiles](profiles.html): \n \n * ```HealthcareService``` resources conforming to the [PCA Healthcare Service](StructureDefinition-pca-healthcare-service.html) profile \n * ```PractitionerRole``` resources conforming to the [PCA Practitioner Role](StructureDefinition-pca-practitioner-role.html) profile \n * ```Organization``` resources conforming to the [PCA Organization](StructureDefinition-pca-organization.html) profile \n * ```Location``` resources conforming to the [PCA Location](StructureDefinition-pca-location.html) profile \n * ```Practitioner``` resources conforming to the [PCA Practitioner](StructureDefinition-pca-practitioner.html) profile \n * ```Provenance``` resources conforming to the [PCA Provenance](StructureDefinition-pca-provenance.html) profile \n * ```Contract``` resources conforming to the [PCA Publication Authorisation Record](StructureDefinition-pca-publication-authorisation-record.html) profile \n * ```Task``` resources conforming to the [PCA Match Record](StructureDefinition-pca-match-record.html) profile \n \n \n * Error: ```OperationOutcome``` resource (see [FHIR specification](https://www.hl7.org/fhir/operationoutcome.html)). \n \n **Required OAuth 2.0 scopes**: \n \n The *scope* string **SHALL** contain the following *scoped role*: \n * ```Organization/[id]:PS_Read``` \n \n Where [id] **SHALL** identify the ```Organization``` associated with the target PCA Publisher Agent. \n \n **Response Codes**: \n * Code 200: Search successfully performed (but may return zero matching results). \n * Code 403: Server refused to perform the search. " ] ] ) ; fhir:searchParam ( [ fhir:name [ fhir:v "_lastUpdated" ] ; fhir:definition [ fhir:v "http://hl7.org/fhir/SearchParameter/Resource-lastUpdated"^^xsd:anyURI ; fhir:link ] ; fhir:type [ fhir:v "date" ] ] [ fhir:name [ fhir:v "_type" ] ; fhir:type [ fhir:v "token" ] ] [ fhir:name [ fhir:v "_include" ] ; fhir:type [ fhir:v "special" ] ] [ fhir:name [ fhir:v "_include:iterate" ] ; fhir:type [ fhir:v "special" ] ] [ fhir:name [ fhir:v "_page" ] ; fhir:type [ fhir:v "special" ] ] [ fhir:name [ fhir:v "_count" ] ; fhir:type [ fhir:v "special" ] ] [ fhir:name [ fhir:v "_resultId" ] ; fhir:type [ fhir:v "special" ] ] ) ] ) . # # -------------------------------------------------------------------------------------