# Health Connect Australia Provider Directory FHIR Implementation Guide

26.0.0 - Trial

Health Connect Australia Provider Directory FHIR Implementation Guide, published by Australian Digital Health Agency. This guide is not an authorized publication; it is the continuous build for version 26.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/AuDigitalHealth/HCPD/ and changes regularly. See the Directory of published versions

## Resource Profile: HCPD HealthcareService

Official URL: http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-healthcareservice | Version: 26.0.0
Active as of 2026-06-17 | Computable Name: HCPD_HealthcareService
Usage:Jurisdiction: Australia
Copyright/Legal: Copyright © 2026 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/.

This profile defines a Health Connect Provider Directory entry for a healthcare service offered by an organisation.

This profile solves the business problem of standardising healthcare service representation in the provider directory, enabling consistent description of services, their availability, coverage areas, and associated care levels to facilitate service discovery and patient referral processes.

No data is entered directly into Health Connect; all Directory content is sourced from authoritative systems including PCA, HI-Service, and NHSD.

### Extensions

Extensions introduced in this profile:

- HealthcareService: IAR Levels of Care
- HealthcareService: Active Period
- HealthcareService: Accept New Patient
- HealthcareService: Referral Information for Referrer
- HealthcareService.availableTime.availableStartTime: Timezone Code
- HealthcareService.availableTime.availableEndTime: Timezone Code

#### Identifiers

Beyond the identifiers already defined in AU Core the HCPD HealthcareService profile explicitly supports the following identifier slice (as indicated by the must support flag):

- HCPD Local Identifier (hcpd-LI)

Unique identifier attributed by the HCPD system.

### Usage notes

The `extension:iar-levels-of-care` is used to indicate the Initial Assessment and Referral (IAR) Levels of Care for a healthcare services that support mental health care. This extension draws its codes from the Initial Assessment and Referral Levels of Care ValueSet.

#### Accept new patient

CodeableConcept datatype that indicates whether the healthcare service is accepting new patients.

#### Organization reference

The providedBy element must contain a relative reference to an existing HCPD Organization.

#### Service provision code

This section describes the use of codes to indicate payment and billing options, helping requesters or searchers make informed decisions when seeking healthcare services.

#### Service type

Utilises the Service Type ValueSet, to draw codes from SNOMED that define concepts for the type of service that the healthcare service provides.

A single code representing the primary service type MUST be provided and selected from the Service Type value set.

#### Location reference

The location element must contain a relative reference to an existing HCPD Location whose managingOrganization references a HCPD Organization.

#### Availability

To indicate the healthcare service is not available during a period of time, use notAvailable.

#### Coverage area

The coverage area that a service is intended for/available to should be defined using one or more instances of the coverageArea element, with the address elements of the contained `Location` populated depending on the type of coverage area to be defined. Health Connect currently supports coverage areas to be defined as Australia-wide (in which case only one coverageArea element should be present), or as a combination of individual states and/or suburbs (with separate coverageArea elements for each). See the HCPD Service Coverage Area profile for more information.

#### Referral information

Some subscribing systems may render markdown contained in the Referral Information For Referrer element; however this is not guaranteed, so publishing systems should limit markdown syntax in these elements to that which still renders well as plain text (such as bullets, numbered lists, or bold/italic text).

Usages:

- Refer to this Profile: HCPD PractitionerRole and HCPD Provenance
- Examples for this Profile: Healthcare service with Residential Aged Care service type
- CapabilityStatements using this Profile: Health Connect Provider Directory Requester and Health Connect Provider Directory Responder

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
HealthcareService |  | 0..* | AUCoreHealthcareService(2.0.0) | A healthcare service in an Australian healthcare context
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:iar-levels-of-care | SO | 0..* | CodeableConcept | IAR Levels of Care URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/iar-levels-of-care Binding: Initial Assessment and Referral Levels of Care (required) Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:new-patient-availability | SO | 0..1 | CodeableConcept | Indicates if Healthcare service is accepting new patients URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/new-patient-availability Binding: https://www.healthterminologies.gov.au/integration/R4/fhir/ValueSet/new-patient-availability-1 (required) Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:referral-information-for-referrer | SO | 0..1 | markdown | Referral information for referrers URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/referral-information-for-referrer Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:active-period | SO | 0..1 | Period | The period during which the HealthcareService is active. URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/active-period Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
Slices for identifier | SO Σ | 1..* | Identifier(4.0.1), AUHPIO(6.0.0), AUResidentialAgedCareServiceIdentifier(6.0.0) | External identifiers for this item Slice: Unordered, Open by pattern:type
Obligations | Actor | Source
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor | from AU Core HealthcareService
SHOULD:handle | Health Connect Provider Directory Requester Actor | from AU Core HealthcareService
identifier:HCPD_Local_Identifier | SO Σ | 1..1 | HCPD_Local_Identifier(26.0.0) | Local identifier for the HealthcareService attributed by HC
active | ?!Σ | 0..1 | boolean | Whether this HealthcareService record is in active use
providedBy | SO Σ | 1..1 | Reference(HCPD Organization(26.0.0)) | Providing organisation
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
type | SO Σ | 1..* | CodeableConcept | A high-level descriptor describing the type of healthcare service(s) offered by the organisation Binding: Service Type (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
coding | SO Σ | 1..* | Coding | Describes the service(s) offered. At least one coding is required
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
code | SO Σ | 1..1 | code | The healthcare service type code from SNOMED-CT-AU
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
display | S Σ | 1..1 | string | The display name of the healthcare service type from SNOMED-CT-AU
location | SO Σ | 1..1 | Reference(HCPD Location(26.0.0)) | Single location for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
name | SO Σ | 1..1 | string | Description of service as presented to a consumer while searching
comment | SO Σ | 0..1 | string | Additional description and/or any specific information about the healthcare service, not covered elsewhere
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
telecom | SO | 0..* | ContactPoint | Phone number, fax number, email
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:contact-purpose | S | 0..1 | (Complex) | Contact purpose URL: http://hl7.org.au/fhir/StructureDefinition/contact-purpose Constraints: ext-1
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org.au/fhir/StructureDefinition/contact-purpose"
value[x] |  | 1..1 | CodeableConcept | Contact purpose Binding: ContactPurpose (6.0.0) (extensible)
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point.
coverageArea | SO | 0..* | Reference(HCPD Service Coverage Area(26.0.0)) | The location(s) that this healthcare service is available to
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
serviceProvisionCode | SO | 0..* | CodeableConcept | Conditions under which service is available/offered Binding: Service_Provision_Code_VS (26.0.0) (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
eligibility | SO | 0..* | BackboneElement | Specific eligibility requirements required to use the service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
code | SO | 0..1 | CodeableConcept | Eligibility requirements for the healthcare service. Binding: Service Eligibility (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
communication | SO | 0..* | CodeableConcept | The languages that this healthcare service is offered in Binding: Common Languages in Australia (extensible)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
appointmentRequired | SO | 0..1 | boolean | Whether an appointment is required for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableTime | SO | 0..* | BackboneElement | Times the Service Site is available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
daysOfWeek | SO | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required): The days of the week.
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
allDay | SO | 0..1 | boolean | Always available? e.g. 24 hour service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableStartTime | SO | 0..1 | time | Opening time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:timeZone |  | 0..1 | code | The date on which an organisation commences offering a service URL: http://hl7.org/fhir/StructureDefinition/timezone Binding: IANATimezones (required): IANA Timezones (BCP 175) Constraints: ext-1
availableEndTime | SO | 0..1 | time | Closing time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:timeZone |  | 0..1 | code | The date on which an organisation ceases to offer a service URL: http://hl7.org/fhir/StructureDefinition/timezone Binding: IANATimezones (required): IANA Timezones (BCP 175) Constraints: ext-1
notAvailable | SO | 0..* | BackboneElement | Not available during this time due to provided reason
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
description | SO | 1..1 | string | Reason presented to the user explaining why time not available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
during | SO | 0..1 | Period | Date range that the service is not available - can be open-ended if service is closing
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
endpoint | SO | 0..* | Reference(HCPD Endpoint(26.0.0)) | Reference to all linked endpoints that are related to this healthcare service for electronic communication or exchange
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
HealthcareService.type | Base | required | Service Type | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.telecom.​extension:contact-purpose.​value[x] | Base | extensible | Contact Purpose | 📍6.0.0 | AU Base Implementation Guide v6.0
HealthcareService.telecom.​use | Base | required | ContactPointUse | 📍4.0.1 | FHIR Std.
HealthcareService.serviceProvisionCode | Base | required | Service Provision Code ValueSet | 📍26.0.0 | This IG
HealthcareService.eligibility.​code | Base | required | Service Eligibility | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.communication | Base | extensible | Common Languages in Australia | ⏿2.2.1 | tx.hl7.org.au
HealthcareService.availableTime.​daysOfWeek | Base | required | DaysOfWeek | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | HealthcareService | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | HealthcareService | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | HealthcareService | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | HealthcareService | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | HealthcareService | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | HealthcareService.implicitRules, HealthcareService.extension, HealthcareService.extension:iar-levels-of-care, HealthcareService.extension:new-patient-availability, HealthcareService.extension:referral-information-for-referrer, HealthcareService.extension:active-period, HealthcareService.modifierExtension, HealthcareService.identifier, HealthcareService.identifier:HCPD_Local_Identifier, HealthcareService.active, HealthcareService.providedBy, HealthcareService.type, HealthcareService.type.coding, HealthcareService.type.coding.code, HealthcareService.type.coding.display, HealthcareService.location, HealthcareService.name, HealthcareService.comment, HealthcareService.telecom, HealthcareService.telecom.extension:contact-purpose, HealthcareService.telecom.extension:contact-purpose.value[x], HealthcareService.telecom.use, HealthcareService.coverageArea, HealthcareService.serviceProvisionCode, HealthcareService.eligibility, HealthcareService.eligibility.modifierExtension, HealthcareService.eligibility.code, HealthcareService.communication, HealthcareService.appointmentRequired, HealthcareService.availableTime, HealthcareService.availableTime.modifierExtension, HealthcareService.availableTime.daysOfWeek, HealthcareService.availableTime.allDay, HealthcareService.availableTime.availableStartTime, HealthcareService.availableTime.availableStartTime.extension:timeZone, HealthcareService.availableTime.availableEndTime, HealthcareService.availableTime.availableEndTime.extension:timeZone, HealthcareService.notAvailable, HealthcareService.notAvailable.modifierExtension, HealthcareService.notAvailable.description, HealthcareService.notAvailable.during, HealthcareService.endpoint | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | HealthcareService.extension, HealthcareService.extension:iar-levels-of-care, HealthcareService.extension:new-patient-availability, HealthcareService.extension:referral-information-for-referrer, HealthcareService.extension:active-period, HealthcareService.modifierExtension, HealthcareService.telecom.extension:contact-purpose, HealthcareService.eligibility.modifierExtension, HealthcareService.availableTime.modifierExtension, HealthcareService.availableTime.availableStartTime.extension:timeZone, HealthcareService.availableTime.availableEndTime.extension:timeZone, HealthcareService.notAvailable.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from AUCoreHealthcareService

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
HealthcareService |  | 0..* | AUCoreHealthcareService(2.0.0) | A healthcare service in an Australian healthcare context
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:iar-levels-of-care | SO | 0..* | CodeableConcept | IAR Levels of Care URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/iar-levels-of-care Binding: Initial Assessment and Referral Levels of Care (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:new-patient-availability | SO | 0..1 | CodeableConcept | Indicates if Healthcare service is accepting new patients URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/new-patient-availability Binding: https://www.healthterminologies.gov.au/integration/R4/fhir/ValueSet/new-patient-availability-1 (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:referral-information-for-referrer | SO | 0..1 | markdown | Referral information for referrers URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/referral-information-for-referrer
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:active-period | SO | 0..1 | Period | The period during which the HealthcareService is active. URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/active-period
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for identifier | O | 1..* | Identifier(4.0.1), AUHPIO(6.0.0), AUResidentialAgedCareServiceIdentifier(6.0.0) | External identifiers for this item Slice: Unordered, Open by pattern:type
Obligations | Actor | Source
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor | from AU Core HealthcareService
SHOULD:handle | Health Connect Provider Directory Requester Actor | from AU Core HealthcareService
identifier:HCPD_Local_Identifier | S | 1..1 | HCPD_Local_Identifier(26.0.0) | Local identifier for the HealthcareService attributed by HC
providedBy | SO | 1..1 | Reference(HCPD Organization(26.0.0)) | Providing organisation
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
type | O | 1..* | CodeableConcept | A high-level descriptor describing the type of healthcare service(s) offered by the organisation Binding: Service Type (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
coding | SO | 1..* | Coding | Describes the service(s) offered. At least one coding is required
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
code | SO | 1..1 | code | The healthcare service type code from SNOMED-CT-AU
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
display | S | 1..1 | string | The display name of the healthcare service type from SNOMED-CT-AU
location | SO | 1..1 | Reference(HCPD Location(26.0.0)) | Single location for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
comment | SO | 0..1 | string | Additional description and/or any specific information about the healthcare service, not covered elsewhere
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
telecom | O | 0..* | ContactPoint | Phone number, fax number, email
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:contact-purpose | S | 0..1 | (Complex) | Contact purpose URL: http://hl7.org.au/fhir/StructureDefinition/contact-purpose
extension |  | 0..0 |  | Extension
coverageArea | SO | 0..* | Reference(HCPD Service Coverage Area(26.0.0)) | The location(s) that this healthcare service is available to
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
serviceProvisionCode | SO | 0..* | CodeableConcept | Conditions under which service is available/offered Binding: Service_Provision_Code_VS (26.0.0) (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
eligibility | SO | 0..* | BackboneElement | Specific eligibility requirements required to use the service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
code | SO | 0..1 | CodeableConcept | Eligibility requirements for the healthcare service. Binding: Service Eligibility (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
communication | SO | 0..* | CodeableConcept | The languages that this healthcare service is offered in
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
appointmentRequired | SO | 0..1 | boolean | Whether an appointment is required for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableTime | SO | 0..* | BackboneElement | Times the Service Site is available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
daysOfWeek | SO | 0..* | code | mon | tue | wed | thu | fri | sat | sun
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
allDay | SO | 0..1 | boolean | Always available? e.g. 24 hour service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableStartTime | SO | 0..1 | time | Opening time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:timeZone |  | 0..1 | TimezoneCode(5.3.0) | The date on which an organisation commences offering a service
availableEndTime | SO | 0..1 | time | Closing time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:timeZone |  | 0..1 | TimezoneCode(5.3.0) | The date on which an organisation ceases to offer a service
notAvailable | SO | 0..* | BackboneElement | Not available during this time due to provided reason
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
description | SO | 1..1 | string | Reason presented to the user explaining why time not available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
during | SO | 0..1 | Period | Date range that the service is not available - can be open-ended if service is closing
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
endpoint | SO | 0..* | Reference(HCPD Endpoint(26.0.0)) | Reference to all linked endpoints that are related to this healthcare service for electronic communication or exchange
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
HealthcareService.type | Base | required | Service Type | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.serviceProvisionCode | Base | required | Service Provision Code ValueSet | 📍26.0.0 | This IG
HealthcareService.eligibility.​code | Base | required | Service Eligibility | ⏿1.0.0 | tx.hl7.org.au

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
HealthcareService |  | 0..* | AUCoreHealthcareService(2.0.0) | A healthcare service in an Australian healthcare context
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:iar-levels-of-care | SO | 0..* | CodeableConcept | IAR Levels of Care URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/iar-levels-of-care Binding: Initial Assessment and Referral Levels of Care (required) Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:new-patient-availability | SO | 0..1 | CodeableConcept | Indicates if Healthcare service is accepting new patients URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/new-patient-availability Binding: https://www.healthterminologies.gov.au/integration/R4/fhir/ValueSet/new-patient-availability-1 (required) Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:referral-information-for-referrer | SO | 0..1 | markdown | Referral information for referrers URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/referral-information-for-referrer Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:active-period | SO | 0..1 | Period | The period during which the HealthcareService is active. URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/active-period Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
Slices for identifier | SO Σ | 1..* | Identifier(4.0.1), AUHPIO(6.0.0), AUResidentialAgedCareServiceIdentifier(6.0.0) | External identifiers for this item Slice: Unordered, Open by pattern:type
Obligations | Actor | Source
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor | from AU Core HealthcareService
SHOULD:handle | Health Connect Provider Directory Requester Actor | from AU Core HealthcareService
identifier:HCPD_Local_Identifier | SO Σ | 1..1 | HCPD_Local_Identifier(26.0.0) | Local identifier for the HealthcareService attributed by HC
active | ?!Σ | 0..1 | boolean | Whether this HealthcareService record is in active use
providedBy | SO Σ | 1..1 | Reference(HCPD Organization(26.0.0)) | Providing organisation
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
category | Σ | 0..* | CodeableConcept | Broad category of service being performed or delivered Binding: ServiceCategory (example): A category of the service(s) that could be provided.
type | SO Σ | 1..* | CodeableConcept | A high-level descriptor describing the type of healthcare service(s) offered by the organisation Binding: Service Type (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
coding | SO Σ | 1..* | Coding | Describes the service(s) offered. At least one coding is required
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
system | Σ | 0..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | SO Σ | 1..1 | code | The healthcare service type code from SNOMED-CT-AU
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
display | S Σ | 1..1 | string | The display name of the healthcare service type from SNOMED-CT-AU
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user
text | Σ | 0..1 | string | Plain text representation of the concept
specialty | Σ | 0..* | CodeableConcept | Specialties handled by the HealthcareService Binding: Clinical Specialty (preferred)
location | SO Σ | 1..1 | Reference(HCPD Location(26.0.0)) | Single location for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
name | SO Σ | 1..1 | string | Description of service as presented to a consumer while searching
comment | SO Σ | 0..1 | string | Additional description and/or any specific information about the healthcare service, not covered elsewhere
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extraDetails |  | 0..1 | markdown | Extra details about the service that can't be placed in the other fields
photo | Σ | 0..1 | Attachment | Facilitates quick identification of the service
telecom | SO | 0..* | ContactPoint | Phone number, fax number, email
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
extension:contact-purpose | S | 0..1 | (Complex) | Contact purpose URL: http://hl7.org.au/fhir/StructureDefinition/contact-purpose Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org.au/fhir/StructureDefinition/contact-purpose"
value[x] |  | 1..1 | CodeableConcept | Contact purpose Binding: ContactPurpose (6.0.0) (extensible)
system | Σ C | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point.
value | Σ | 0..1 | string | The actual contact point details
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point.
rank | Σ | 0..1 | positiveInt | Specify preferred order of use (1 = highest)
period | Σ | 0..1 | Period | Time period when the contact point was/is in use
coverageArea | SO | 0..* | Reference(HCPD Service Coverage Area(26.0.0)) | The location(s) that this healthcare service is available to
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
serviceProvisionCode | SO | 0..* | CodeableConcept | Conditions under which service is available/offered Binding: Service_Provision_Code_VS (26.0.0) (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
eligibility | SO | 0..* | BackboneElement | Specific eligibility requirements required to use the service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
code | SO | 0..1 | CodeableConcept | Eligibility requirements for the healthcare service. Binding: Service Eligibility (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
comment |  | 0..1 | markdown | Describes the eligibility conditions for the service
program |  | 0..* | CodeableConcept | Programs that this service is applicable to Binding: Program (example): Government or local programs that this service applies to.
characteristic |  | 0..* | CodeableConcept | Collection of characteristics (attributes) Binding Description: (example): A custom attribute that could be provided at a service (e.g. Wheelchair accessibiliy).
communication | SO | 0..* | CodeableConcept | The languages that this healthcare service is offered in Binding: Common Languages in Australia (extensible)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
referralMethod |  | 0..* | CodeableConcept | Ways that the service accepts referrals Binding: ReferralMethod (example): The methods of referral can be used when referring to a specific HealthCareService resource.
appointmentRequired | SO | 0..1 | boolean | Whether an appointment is required for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableTime | SO | 0..* | BackboneElement | Times the Service Site is available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
daysOfWeek | SO | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required): The days of the week.
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
allDay | SO | 0..1 | boolean | Always available? e.g. 24 hour service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableStartTime | SO | 0..1 | time | Opening time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:timeZone |  | 0..1 | code | The date on which an organisation commences offering a service URL: http://hl7.org/fhir/StructureDefinition/timezone Binding: IANATimezones (required): IANA Timezones (BCP 175) Constraints: ext-1
value |  | 0..1 | time | Primitive value for time
availableEndTime | SO | 0..1 | time | Closing time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:timeZone |  | 0..1 | code | The date on which an organisation ceases to offer a service URL: http://hl7.org/fhir/StructureDefinition/timezone Binding: IANATimezones (required): IANA Timezones (BCP 175) Constraints: ext-1
value |  | 0..1 | time | Primitive value for time
notAvailable | SO | 0..* | BackboneElement | Not available during this time due to provided reason
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
description | SO | 1..1 | string | Reason presented to the user explaining why time not available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
during | SO | 0..1 | Period | Date range that the service is not available - can be open-ended if service is closing
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availabilityExceptions |  | 0..1 | string | Description of availability exceptions
endpoint | SO | 0..* | Reference(HCPD Endpoint(26.0.0)) | Reference to all linked endpoints that are related to this healthcare service for electronic communication or exchange
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
HealthcareService.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
HealthcareService.category | Base | example | Service category | 📍4.0.1 | FHIR Std.
HealthcareService.type | Base | required | Service Type | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.specialty | Base | preferred | Clinical Specialty | ⏿1.1.0 | tx.hl7.org.au
HealthcareService.telecom.​extension:contact-purpose.​value[x] | Base | extensible | Contact Purpose | 📍6.0.0 | AU Base Implementation Guide v6.0
HealthcareService.telecom.​system | Base | required | ContactPointSystem | 📍4.0.1 | FHIR Std.
HealthcareService.telecom.​use | Base | required | ContactPointUse | 📍4.0.1 | FHIR Std.
HealthcareService.serviceProvisionCode | Base | required | Service Provision Code ValueSet | 📍26.0.0 | This IG
HealthcareService.eligibility.​code | Base | required | Service Eligibility | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.program | Base | example | Program | 📍4.0.1 | FHIR Std.
HealthcareService.characteristic | Base | example |  | Not State | Unknown
HealthcareService.communication | Base | extensible | Common Languages in Australia | ⏿2.2.1 | tx.hl7.org.au
HealthcareService.referralMethod | Base | example | ReferralMethod | 📍4.0.1 | FHIR Std.
HealthcareService.availableTime.​daysOfWeek | Base | required | DaysOfWeek | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | HealthcareService | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | HealthcareService | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | HealthcareService | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | HealthcareService | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | HealthcareService | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | HealthcareService.meta, HealthcareService.implicitRules, HealthcareService.language, HealthcareService.text, HealthcareService.extension, HealthcareService.extension:iar-levels-of-care, HealthcareService.extension:new-patient-availability, HealthcareService.extension:referral-information-for-referrer, HealthcareService.extension:active-period, HealthcareService.modifierExtension, HealthcareService.identifier, HealthcareService.identifier:HCPD_Local_Identifier, HealthcareService.active, HealthcareService.providedBy, HealthcareService.category, HealthcareService.type, HealthcareService.type.extension, HealthcareService.type.coding, HealthcareService.type.coding.extension, HealthcareService.type.coding.system, HealthcareService.type.coding.version, HealthcareService.type.coding.code, HealthcareService.type.coding.display, HealthcareService.type.coding.userSelected, HealthcareService.type.text, HealthcareService.specialty, HealthcareService.location, HealthcareService.name, HealthcareService.comment, HealthcareService.extraDetails, HealthcareService.photo, HealthcareService.telecom, HealthcareService.telecom.extension, HealthcareService.telecom.extension:contact-purpose, HealthcareService.telecom.extension:contact-purpose.value[x], HealthcareService.telecom.system, HealthcareService.telecom.value, HealthcareService.telecom.use, HealthcareService.telecom.rank, HealthcareService.telecom.period, HealthcareService.coverageArea, HealthcareService.serviceProvisionCode, HealthcareService.eligibility, HealthcareService.eligibility.extension, HealthcareService.eligibility.modifierExtension, HealthcareService.eligibility.code, HealthcareService.eligibility.comment, HealthcareService.program, HealthcareService.characteristic, HealthcareService.communication, HealthcareService.referralMethod, HealthcareService.appointmentRequired, HealthcareService.availableTime, HealthcareService.availableTime.extension, HealthcareService.availableTime.modifierExtension, HealthcareService.availableTime.daysOfWeek, HealthcareService.availableTime.allDay, HealthcareService.availableTime.availableStartTime, HealthcareService.availableTime.availableStartTime.extension, HealthcareService.availableTime.availableStartTime.extension:timeZone, HealthcareService.availableTime.availableEndTime, HealthcareService.availableTime.availableEndTime.extension, HealthcareService.availableTime.availableEndTime.extension:timeZone, HealthcareService.notAvailable, HealthcareService.notAvailable.extension, HealthcareService.notAvailable.modifierExtension, HealthcareService.notAvailable.description, HealthcareService.notAvailable.during, HealthcareService.availabilityExceptions, HealthcareService.endpoint | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | HealthcareService.extension, HealthcareService.extension:iar-levels-of-care, HealthcareService.extension:new-patient-availability, HealthcareService.extension:referral-information-for-referrer, HealthcareService.extension:active-period, HealthcareService.modifierExtension, HealthcareService.type.extension, HealthcareService.type.coding.extension, HealthcareService.telecom.extension, HealthcareService.telecom.extension:contact-purpose, HealthcareService.eligibility.extension, HealthcareService.eligibility.modifierExtension, HealthcareService.availableTime.extension, HealthcareService.availableTime.modifierExtension, HealthcareService.availableTime.availableStartTime.extension, HealthcareService.availableTime.availableStartTime.extension:timeZone, HealthcareService.availableTime.availableEndTime.extension, HealthcareService.availableTime.availableEndTime.extension:timeZone, HealthcareService.notAvailable.extension, HealthcareService.notAvailable.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from AUCoreHealthcareService

Summary

Mandatory: 8 elements
Must-Support: 27 elements
Prohibited: 1 element

Structures

This structure refers to these other structures:

- HCPD Local Identifier (HCPD-LI) (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-local-identifier|26.0.0)
- HCPD Organization (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-organization|26.0.0)
- HCPD Location (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-location|26.0.0)
- HCPD Service Coverage Area (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-service-coverage-area|26.0.0)
- HCPD Endpoint (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-endpoint|26.0.0)

Extensions

This structure refers to these extensions:

- http://digitalhealth.gov.au/fhir/cc/StructureDefinition/iar-levels-of-care|26.0.0
- http://digitalhealth.gov.au/fhir/cc/StructureDefinition/new-patient-availability|26.0.0
- http://digitalhealth.gov.au/fhir/cc/StructureDefinition/referral-information-for-referrer|26.0.0
- http://digitalhealth.gov.au/fhir/cc/StructureDefinition/active-period|26.0.0
- http://hl7.org.au/fhir/StructureDefinition/contact-purpose|6.0.0

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of HealthcareService.identifier

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
HealthcareService |  | 0..* | AUCoreHealthcareService(2.0.0) | A healthcare service in an Australian healthcare context
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:iar-levels-of-care | SO | 0..* | CodeableConcept | IAR Levels of Care URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/iar-levels-of-care Binding: Initial Assessment and Referral Levels of Care (required) Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:new-patient-availability | SO | 0..1 | CodeableConcept | Indicates if Healthcare service is accepting new patients URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/new-patient-availability Binding: https://www.healthterminologies.gov.au/integration/R4/fhir/ValueSet/new-patient-availability-1 (required) Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:referral-information-for-referrer | SO | 0..1 | markdown | Referral information for referrers URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/referral-information-for-referrer Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:active-period | SO | 0..1 | Period | The period during which the HealthcareService is active. URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/active-period Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
Slices for identifier | SO Σ | 1..* | Identifier(4.0.1), AUHPIO(6.0.0), AUResidentialAgedCareServiceIdentifier(6.0.0) | External identifiers for this item Slice: Unordered, Open by pattern:type
Obligations | Actor | Source
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor | from AU Core HealthcareService
SHOULD:handle | Health Connect Provider Directory Requester Actor | from AU Core HealthcareService
identifier:HCPD_Local_Identifier | SO Σ | 1..1 | HCPD_Local_Identifier(26.0.0) | Local identifier for the HealthcareService attributed by HC
active | ?!Σ | 0..1 | boolean | Whether this HealthcareService record is in active use
providedBy | SO Σ | 1..1 | Reference(HCPD Organization(26.0.0)) | Providing organisation
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
type | SO Σ | 1..* | CodeableConcept | A high-level descriptor describing the type of healthcare service(s) offered by the organisation Binding: Service Type (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
coding | SO Σ | 1..* | Coding | Describes the service(s) offered. At least one coding is required
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
code | SO Σ | 1..1 | code | The healthcare service type code from SNOMED-CT-AU
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
display | S Σ | 1..1 | string | The display name of the healthcare service type from SNOMED-CT-AU
location | SO Σ | 1..1 | Reference(HCPD Location(26.0.0)) | Single location for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
name | SO Σ | 1..1 | string | Description of service as presented to a consumer while searching
comment | SO Σ | 0..1 | string | Additional description and/or any specific information about the healthcare service, not covered elsewhere
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
telecom | SO | 0..* | ContactPoint | Phone number, fax number, email
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:contact-purpose | S | 0..1 | (Complex) | Contact purpose URL: http://hl7.org.au/fhir/StructureDefinition/contact-purpose Constraints: ext-1
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org.au/fhir/StructureDefinition/contact-purpose"
value[x] |  | 1..1 | CodeableConcept | Contact purpose Binding: ContactPurpose (6.0.0) (extensible)
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point.
coverageArea | SO | 0..* | Reference(HCPD Service Coverage Area(26.0.0)) | The location(s) that this healthcare service is available to
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
serviceProvisionCode | SO | 0..* | CodeableConcept | Conditions under which service is available/offered Binding: Service_Provision_Code_VS (26.0.0) (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
eligibility | SO | 0..* | BackboneElement | Specific eligibility requirements required to use the service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
code | SO | 0..1 | CodeableConcept | Eligibility requirements for the healthcare service. Binding: Service Eligibility (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
communication | SO | 0..* | CodeableConcept | The languages that this healthcare service is offered in Binding: Common Languages in Australia (extensible)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
appointmentRequired | SO | 0..1 | boolean | Whether an appointment is required for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableTime | SO | 0..* | BackboneElement | Times the Service Site is available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
daysOfWeek | SO | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required): The days of the week.
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
allDay | SO | 0..1 | boolean | Always available? e.g. 24 hour service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableStartTime | SO | 0..1 | time | Opening time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:timeZone |  | 0..1 | code | The date on which an organisation commences offering a service URL: http://hl7.org/fhir/StructureDefinition/timezone Binding: IANATimezones (required): IANA Timezones (BCP 175) Constraints: ext-1
availableEndTime | SO | 0..1 | time | Closing time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:timeZone |  | 0..1 | code | The date on which an organisation ceases to offer a service URL: http://hl7.org/fhir/StructureDefinition/timezone Binding: IANATimezones (required): IANA Timezones (BCP 175) Constraints: ext-1
notAvailable | SO | 0..* | BackboneElement | Not available during this time due to provided reason
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
description | SO | 1..1 | string | Reason presented to the user explaining why time not available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
during | SO | 0..1 | Period | Date range that the service is not available - can be open-ended if service is closing
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
endpoint | SO | 0..* | Reference(HCPD Endpoint(26.0.0)) | Reference to all linked endpoints that are related to this healthcare service for electronic communication or exchange
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
HealthcareService.type | Base | required | Service Type | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.telecom.​extension:contact-purpose.​value[x] | Base | extensible | Contact Purpose | 📍6.0.0 | AU Base Implementation Guide v6.0
HealthcareService.telecom.​use | Base | required | ContactPointUse | 📍4.0.1 | FHIR Std.
HealthcareService.serviceProvisionCode | Base | required | Service Provision Code ValueSet | 📍26.0.0 | This IG
HealthcareService.eligibility.​code | Base | required | Service Eligibility | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.communication | Base | extensible | Common Languages in Australia | ⏿2.2.1 | tx.hl7.org.au
HealthcareService.availableTime.​daysOfWeek | Base | required | DaysOfWeek | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | HealthcareService | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | HealthcareService | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | HealthcareService | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | HealthcareService | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | HealthcareService | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | HealthcareService.implicitRules, HealthcareService.extension, HealthcareService.extension:iar-levels-of-care, HealthcareService.extension:new-patient-availability, HealthcareService.extension:referral-information-for-referrer, HealthcareService.extension:active-period, HealthcareService.modifierExtension, HealthcareService.identifier, HealthcareService.identifier:HCPD_Local_Identifier, HealthcareService.active, HealthcareService.providedBy, HealthcareService.type, HealthcareService.type.coding, HealthcareService.type.coding.code, HealthcareService.type.coding.display, HealthcareService.location, HealthcareService.name, HealthcareService.comment, HealthcareService.telecom, HealthcareService.telecom.extension:contact-purpose, HealthcareService.telecom.extension:contact-purpose.value[x], HealthcareService.telecom.use, HealthcareService.coverageArea, HealthcareService.serviceProvisionCode, HealthcareService.eligibility, HealthcareService.eligibility.modifierExtension, HealthcareService.eligibility.code, HealthcareService.communication, HealthcareService.appointmentRequired, HealthcareService.availableTime, HealthcareService.availableTime.modifierExtension, HealthcareService.availableTime.daysOfWeek, HealthcareService.availableTime.allDay, HealthcareService.availableTime.availableStartTime, HealthcareService.availableTime.availableStartTime.extension:timeZone, HealthcareService.availableTime.availableEndTime, HealthcareService.availableTime.availableEndTime.extension:timeZone, HealthcareService.notAvailable, HealthcareService.notAvailable.modifierExtension, HealthcareService.notAvailable.description, HealthcareService.notAvailable.during, HealthcareService.endpoint | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | HealthcareService.extension, HealthcareService.extension:iar-levels-of-care, HealthcareService.extension:new-patient-availability, HealthcareService.extension:referral-information-for-referrer, HealthcareService.extension:active-period, HealthcareService.modifierExtension, HealthcareService.telecom.extension:contact-purpose, HealthcareService.eligibility.modifierExtension, HealthcareService.availableTime.modifierExtension, HealthcareService.availableTime.availableStartTime.extension:timeZone, HealthcareService.availableTime.availableEndTime.extension:timeZone, HealthcareService.notAvailable.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Differential View

This structure is derived from AUCoreHealthcareService

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
HealthcareService |  | 0..* | AUCoreHealthcareService(2.0.0) | A healthcare service in an Australian healthcare context
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:iar-levels-of-care | SO | 0..* | CodeableConcept | IAR Levels of Care URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/iar-levels-of-care Binding: Initial Assessment and Referral Levels of Care (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:new-patient-availability | SO | 0..1 | CodeableConcept | Indicates if Healthcare service is accepting new patients URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/new-patient-availability Binding: https://www.healthterminologies.gov.au/integration/R4/fhir/ValueSet/new-patient-availability-1 (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:referral-information-for-referrer | SO | 0..1 | markdown | Referral information for referrers URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/referral-information-for-referrer
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:active-period | SO | 0..1 | Period | The period during which the HealthcareService is active. URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/active-period
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for identifier | O | 1..* | Identifier(4.0.1), AUHPIO(6.0.0), AUResidentialAgedCareServiceIdentifier(6.0.0) | External identifiers for this item Slice: Unordered, Open by pattern:type
Obligations | Actor | Source
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor | from AU Core HealthcareService
SHOULD:handle | Health Connect Provider Directory Requester Actor | from AU Core HealthcareService
identifier:HCPD_Local_Identifier | S | 1..1 | HCPD_Local_Identifier(26.0.0) | Local identifier for the HealthcareService attributed by HC
providedBy | SO | 1..1 | Reference(HCPD Organization(26.0.0)) | Providing organisation
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
type | O | 1..* | CodeableConcept | A high-level descriptor describing the type of healthcare service(s) offered by the organisation Binding: Service Type (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
coding | SO | 1..* | Coding | Describes the service(s) offered. At least one coding is required
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
code | SO | 1..1 | code | The healthcare service type code from SNOMED-CT-AU
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
display | S | 1..1 | string | The display name of the healthcare service type from SNOMED-CT-AU
location | SO | 1..1 | Reference(HCPD Location(26.0.0)) | Single location for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
comment | SO | 0..1 | string | Additional description and/or any specific information about the healthcare service, not covered elsewhere
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
telecom | O | 0..* | ContactPoint | Phone number, fax number, email
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:contact-purpose | S | 0..1 | (Complex) | Contact purpose URL: http://hl7.org.au/fhir/StructureDefinition/contact-purpose
extension |  | 0..0 |  | Extension
coverageArea | SO | 0..* | Reference(HCPD Service Coverage Area(26.0.0)) | The location(s) that this healthcare service is available to
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
serviceProvisionCode | SO | 0..* | CodeableConcept | Conditions under which service is available/offered Binding: Service_Provision_Code_VS (26.0.0) (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
eligibility | SO | 0..* | BackboneElement | Specific eligibility requirements required to use the service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
code | SO | 0..1 | CodeableConcept | Eligibility requirements for the healthcare service. Binding: Service Eligibility (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
communication | SO | 0..* | CodeableConcept | The languages that this healthcare service is offered in
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
appointmentRequired | SO | 0..1 | boolean | Whether an appointment is required for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableTime | SO | 0..* | BackboneElement | Times the Service Site is available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
daysOfWeek | SO | 0..* | code | mon | tue | wed | thu | fri | sat | sun
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
allDay | SO | 0..1 | boolean | Always available? e.g. 24 hour service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableStartTime | SO | 0..1 | time | Opening time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:timeZone |  | 0..1 | TimezoneCode(5.3.0) | The date on which an organisation commences offering a service
availableEndTime | SO | 0..1 | time | Closing time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Slices for extension |  |  |  | Content/Rules for all slices
extension:timeZone |  | 0..1 | TimezoneCode(5.3.0) | The date on which an organisation ceases to offer a service
notAvailable | SO | 0..* | BackboneElement | Not available during this time due to provided reason
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
description | SO | 1..1 | string | Reason presented to the user explaining why time not available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
during | SO | 0..1 | Period | Date range that the service is not available - can be open-ended if service is closing
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
endpoint | SO | 0..* | Reference(HCPD Endpoint(26.0.0)) | Reference to all linked endpoints that are related to this healthcare service for electronic communication or exchange
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
HealthcareService.type | Base | required | Service Type | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.serviceProvisionCode | Base | required | Service Provision Code ValueSet | 📍26.0.0 | This IG
HealthcareService.eligibility.​code | Base | required | Service Eligibility | ⏿1.0.0 | tx.hl7.org.au

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
HealthcareService |  | 0..* | AUCoreHealthcareService(2.0.0) | A healthcare service in an Australian healthcare context
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:iar-levels-of-care | SO | 0..* | CodeableConcept | IAR Levels of Care URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/iar-levels-of-care Binding: Initial Assessment and Referral Levels of Care (required) Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:new-patient-availability | SO | 0..1 | CodeableConcept | Indicates if Healthcare service is accepting new patients URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/new-patient-availability Binding: https://www.healthterminologies.gov.au/integration/R4/fhir/ValueSet/new-patient-availability-1 (required) Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:referral-information-for-referrer | SO | 0..1 | markdown | Referral information for referrers URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/referral-information-for-referrer Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extension:active-period | SO | 0..1 | Period | The period during which the HealthcareService is active. URL: http://digitalhealth.gov.au/fhir/cc/StructureDefinition/active-period Constraints: ext-1
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
Slices for identifier | SO Σ | 1..* | Identifier(4.0.1), AUHPIO(6.0.0), AUResidentialAgedCareServiceIdentifier(6.0.0) | External identifiers for this item Slice: Unordered, Open by pattern:type
Obligations | Actor | Source
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor | from AU Core HealthcareService
SHOULD:handle | Health Connect Provider Directory Requester Actor | from AU Core HealthcareService
identifier:HCPD_Local_Identifier | SO Σ | 1..1 | HCPD_Local_Identifier(26.0.0) | Local identifier for the HealthcareService attributed by HC
active | ?!Σ | 0..1 | boolean | Whether this HealthcareService record is in active use
providedBy | SO Σ | 1..1 | Reference(HCPD Organization(26.0.0)) | Providing organisation
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
category | Σ | 0..* | CodeableConcept | Broad category of service being performed or delivered Binding: ServiceCategory (example): A category of the service(s) that could be provided.
type | SO Σ | 1..* | CodeableConcept | A high-level descriptor describing the type of healthcare service(s) offered by the organisation Binding: Service Type (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
coding | SO Σ | 1..* | Coding | Describes the service(s) offered. At least one coding is required
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
system | Σ | 0..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | SO Σ | 1..1 | code | The healthcare service type code from SNOMED-CT-AU
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
display | S Σ | 1..1 | string | The display name of the healthcare service type from SNOMED-CT-AU
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user
text | Σ | 0..1 | string | Plain text representation of the concept
specialty | Σ | 0..* | CodeableConcept | Specialties handled by the HealthcareService Binding: Clinical Specialty (preferred)
location | SO Σ | 1..1 | Reference(HCPD Location(26.0.0)) | Single location for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
name | SO Σ | 1..1 | string | Description of service as presented to a consumer while searching
comment | SO Σ | 0..1 | string | Additional description and/or any specific information about the healthcare service, not covered elsewhere
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
extraDetails |  | 0..1 | markdown | Extra details about the service that can't be placed in the other fields
photo | Σ | 0..1 | Attachment | Facilitates quick identification of the service
telecom | SO | 0..* | ContactPoint | Phone number, fax number, email
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
extension:contact-purpose | S | 0..1 | (Complex) | Contact purpose URL: http://hl7.org.au/fhir/StructureDefinition/contact-purpose Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org.au/fhir/StructureDefinition/contact-purpose"
value[x] |  | 1..1 | CodeableConcept | Contact purpose Binding: ContactPurpose (6.0.0) (extensible)
system | Σ C | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point.
value | Σ | 0..1 | string | The actual contact point details
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point.
rank | Σ | 0..1 | positiveInt | Specify preferred order of use (1 = highest)
period | Σ | 0..1 | Period | Time period when the contact point was/is in use
coverageArea | SO | 0..* | Reference(HCPD Service Coverage Area(26.0.0)) | The location(s) that this healthcare service is available to
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
serviceProvisionCode | SO | 0..* | CodeableConcept | Conditions under which service is available/offered Binding: Service_Provision_Code_VS (26.0.0) (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
eligibility | SO | 0..* | BackboneElement | Specific eligibility requirements required to use the service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
code | SO | 0..1 | CodeableConcept | Eligibility requirements for the healthcare service. Binding: Service Eligibility (required)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
comment |  | 0..1 | markdown | Describes the eligibility conditions for the service
program |  | 0..* | CodeableConcept | Programs that this service is applicable to Binding: Program (example): Government or local programs that this service applies to.
characteristic |  | 0..* | CodeableConcept | Collection of characteristics (attributes) Binding Description: (example): A custom attribute that could be provided at a service (e.g. Wheelchair accessibiliy).
communication | SO | 0..* | CodeableConcept | The languages that this healthcare service is offered in Binding: Common Languages in Australia (extensible)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
referralMethod |  | 0..* | CodeableConcept | Ways that the service accepts referrals Binding: ReferralMethod (example): The methods of referral can be used when referring to a specific HealthCareService resource.
appointmentRequired | SO | 0..1 | boolean | Whether an appointment is required for this service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableTime | SO | 0..* | BackboneElement | Times the Service Site is available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
daysOfWeek | SO | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required): The days of the week.
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
allDay | SO | 0..1 | boolean | Always available? e.g. 24 hour service
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availableStartTime | SO | 0..1 | time | Opening time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:timeZone |  | 0..1 | code | The date on which an organisation commences offering a service URL: http://hl7.org/fhir/StructureDefinition/timezone Binding: IANATimezones (required): IANA Timezones (BCP 175) Constraints: ext-1
value |  | 0..1 | time | Primitive value for time
availableEndTime | SO | 0..1 | time | Closing time of day (ignored if allDay = true)
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:timeZone |  | 0..1 | code | The date on which an organisation ceases to offer a service URL: http://hl7.org/fhir/StructureDefinition/timezone Binding: IANATimezones (required): IANA Timezones (BCP 175) Constraints: ext-1
value |  | 0..1 | time | Primitive value for time
notAvailable | SO | 0..* | BackboneElement | Not available during this time due to provided reason
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
description | SO | 1..1 | string | Reason presented to the user explaining why time not available
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
during | SO | 0..1 | Period | Date range that the service is not available - can be open-ended if service is closing
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
availabilityExceptions |  | 0..1 | string | Description of availability exceptions
endpoint | SO | 0..* | Reference(HCPD Endpoint(26.0.0)) | Reference to all linked endpoints that are related to this healthcare service for electronic communication or exchange
Obligations | Actor
SHALL:populate-if-known | Health Connect Provider Directory Responder Actor
SHOULD:handle | Health Connect Provider Directory Requester Actor
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
HealthcareService.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
HealthcareService.category | Base | example | Service category | 📍4.0.1 | FHIR Std.
HealthcareService.type | Base | required | Service Type | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.specialty | Base | preferred | Clinical Specialty | ⏿1.1.0 | tx.hl7.org.au
HealthcareService.telecom.​extension:contact-purpose.​value[x] | Base | extensible | Contact Purpose | 📍6.0.0 | AU Base Implementation Guide v6.0
HealthcareService.telecom.​system | Base | required | ContactPointSystem | 📍4.0.1 | FHIR Std.
HealthcareService.telecom.​use | Base | required | ContactPointUse | 📍4.0.1 | FHIR Std.
HealthcareService.serviceProvisionCode | Base | required | Service Provision Code ValueSet | 📍26.0.0 | This IG
HealthcareService.eligibility.​code | Base | required | Service Eligibility | ⏿1.0.0 | tx.hl7.org.au
HealthcareService.program | Base | example | Program | 📍4.0.1 | FHIR Std.
HealthcareService.characteristic | Base | example |  | Not State | Unknown
HealthcareService.communication | Base | extensible | Common Languages in Australia | ⏿2.2.1 | tx.hl7.org.au
HealthcareService.referralMethod | Base | example | ReferralMethod | 📍4.0.1 | FHIR Std.
HealthcareService.availableTime.​daysOfWeek | Base | required | DaysOfWeek | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | HealthcareService | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | HealthcareService | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | HealthcareService | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | HealthcareService | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | HealthcareService | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | HealthcareService.meta, HealthcareService.implicitRules, HealthcareService.language, HealthcareService.text, HealthcareService.extension, HealthcareService.extension:iar-levels-of-care, HealthcareService.extension:new-patient-availability, HealthcareService.extension:referral-information-for-referrer, HealthcareService.extension:active-period, HealthcareService.modifierExtension, HealthcareService.identifier, HealthcareService.identifier:HCPD_Local_Identifier, HealthcareService.active, HealthcareService.providedBy, HealthcareService.category, HealthcareService.type, HealthcareService.type.extension, HealthcareService.type.coding, HealthcareService.type.coding.extension, HealthcareService.type.coding.system, HealthcareService.type.coding.version, HealthcareService.type.coding.code, HealthcareService.type.coding.display, HealthcareService.type.coding.userSelected, HealthcareService.type.text, HealthcareService.specialty, HealthcareService.location, HealthcareService.name, HealthcareService.comment, HealthcareService.extraDetails, HealthcareService.photo, HealthcareService.telecom, HealthcareService.telecom.extension, HealthcareService.telecom.extension:contact-purpose, HealthcareService.telecom.extension:contact-purpose.value[x], HealthcareService.telecom.system, HealthcareService.telecom.value, HealthcareService.telecom.use, HealthcareService.telecom.rank, HealthcareService.telecom.period, HealthcareService.coverageArea, HealthcareService.serviceProvisionCode, HealthcareService.eligibility, HealthcareService.eligibility.extension, HealthcareService.eligibility.modifierExtension, HealthcareService.eligibility.code, HealthcareService.eligibility.comment, HealthcareService.program, HealthcareService.characteristic, HealthcareService.communication, HealthcareService.referralMethod, HealthcareService.appointmentRequired, HealthcareService.availableTime, HealthcareService.availableTime.extension, HealthcareService.availableTime.modifierExtension, HealthcareService.availableTime.daysOfWeek, HealthcareService.availableTime.allDay, HealthcareService.availableTime.availableStartTime, HealthcareService.availableTime.availableStartTime.extension, HealthcareService.availableTime.availableStartTime.extension:timeZone, HealthcareService.availableTime.availableEndTime, HealthcareService.availableTime.availableEndTime.extension, HealthcareService.availableTime.availableEndTime.extension:timeZone, HealthcareService.notAvailable, HealthcareService.notAvailable.extension, HealthcareService.notAvailable.modifierExtension, HealthcareService.notAvailable.description, HealthcareService.notAvailable.during, HealthcareService.availabilityExceptions, HealthcareService.endpoint | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | HealthcareService.extension, HealthcareService.extension:iar-levels-of-care, HealthcareService.extension:new-patient-availability, HealthcareService.extension:referral-information-for-referrer, HealthcareService.extension:active-period, HealthcareService.modifierExtension, HealthcareService.type.extension, HealthcareService.type.coding.extension, HealthcareService.telecom.extension, HealthcareService.telecom.extension:contact-purpose, HealthcareService.eligibility.extension, HealthcareService.eligibility.modifierExtension, HealthcareService.availableTime.extension, HealthcareService.availableTime.modifierExtension, HealthcareService.availableTime.availableStartTime.extension, HealthcareService.availableTime.availableStartTime.extension:timeZone, HealthcareService.availableTime.availableEndTime.extension, HealthcareService.availableTime.availableEndTime.extension:timeZone, HealthcareService.notAvailable.extension, HealthcareService.notAvailable.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from AUCoreHealthcareService

Summary

Mandatory: 8 elements
Must-Support: 27 elements
Prohibited: 1 element

Structures

This structure refers to these other structures:

- HCPD Local Identifier (HCPD-LI) (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-local-identifier|26.0.0)
- HCPD Organization (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-organization|26.0.0)
- HCPD Location (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-location|26.0.0)
- HCPD Service Coverage Area (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-service-coverage-area|26.0.0)
- HCPD Endpoint (http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-endpoint|26.0.0)

Extensions

This structure refers to these extensions:

- http://digitalhealth.gov.au/fhir/cc/StructureDefinition/iar-levels-of-care|26.0.0
- http://digitalhealth.gov.au/fhir/cc/StructureDefinition/new-patient-availability|26.0.0
- http://digitalhealth.gov.au/fhir/cc/StructureDefinition/referral-information-for-referrer|26.0.0
- http://digitalhealth.gov.au/fhir/cc/StructureDefinition/active-period|26.0.0
- http://hl7.org.au/fhir/StructureDefinition/contact-purpose|6.0.0

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of HealthcareService.identifier

Other representations of profile: CSV, Excel, Schematron

### Notes:

### Search parameters

This IG defines and intoduces several search parameters in addition to those inherited, that make it easier to find and filter `HCPD Healthcare Service` resources in Health Connect implementations. The following search parameters are defined and SHOULD be supported:

#### Search parameters defined in FHIR R4

- `service-type` (HealthcareService.type)
  - Searches `HealthcareService.type`. It is a token search - use the fully-qualified `system|code` form to avoid ambiguity.
  - Examples:
  - Unencoded: `GET /HealthcareService?service-type=http://snomed.info/sct|1256161000168107`
  - Encoded: `GET /HealthcareService?service-type=http%3A%2F%2Fsnomed.info%2Fsct%2F32506021000036107%7C1256161000168107`

Note: Values come from the HCPD Healthcare Service value set (SNOMED). Use codes that are children of 224930009 ("Services"), excluding 700232004 ("General medical service").

#### Search parameters defined in this IG

The following search parameters are defined by this IG and SHOULD be supported:

- `languages` (HealthcareService.communication.coding OR PractitionerRole.extension.where(url='http://digitalhealth.gov.au/fhir/hcpd/StructureDefinition/hcpd-practitioner-role-communication').value.ofType(CodeableConcept).coding)
  - Search for healthcare services by the languages they support for communication. This shared SearchParameter works for both HealthcareService and PractitionerRole resources.
  - Supports `system|code` or `code`.
  - Example: `GET /HealthcareService?languages=it` (Italian code for bcp-47)
  - Example: `GET /HealthcareService?languages=de` (German code for bcp-47)
- `hsbilling` (HealthcareService.serviceProvisionCode)
  - Search for healthcare services by their billing or service provision conditions (for example, bulk billing, fees apply).
  - Example (preferred, unambiguous): `GET /HealthcareService?hsbilling=http://terminology.hl7.org.au/CodeSystem/service-provision-conditions|FAP`

##### Availability

- `allday` (HealthcareService.availableTime.allDay | PractitionerRole.availableTime.allDay)

  - Search for services/roles by whether they are available all day. Use token semantics for boolean values.
  - Example: `GET /HealthcareService?allday=true`
  - Example: `GET /PractitionerRole?allday=false`

- `daysofweek` (HealthcareService.availableTime.daysOfWeek | PractitionerRole.availableTime.daysOfWeek)

  - Search for services/roles by days of the week they are available. Supports multiple days using OR logic.
  - Available day codes: mon, tue, wed, thu, fri, sat, sun
  - Example: `GET /HealthcareService?daysofweek=mon`
  - Example: `GET /HealthcareService?daysofweek=mon,tue,wed` (multiple days)
  - Example: `GET /PractitionerRole?daysofweek=fri`

Availability (Start/End Time)

- Shared parameters: starttime and endtime work for both HealthcareService and PractitionerRole.
  - Format: Numeric HHMM (e.g., 0800 for 8:00 AM, 1730 for 5:30 PM). Do not include colons in queries.
  - Matching: Numeric comparisons with prefix operators.
  - Prefix operators: `eq` (=), `ge` (>=), `gt` (>), `le` (<=), `lt` (<), `ne` (!=). When no prefix is specified, `eq` is implied.
  - Examples:
  - Exact start: GET /HealthcareService?starttime=0800
  - Starts at or after 9 AM: GET /HealthcareService?starttime=ge0900
  - Starts before 10 AM: GET /PractitionerRole?starttime=lt1000
  - Exact end: GET /HealthcareService?endtime=1700
  - Ends at or before 4 PM: GET /HealthcareService?endtime=le1600
  - Ends after 6 PM: GET /PractitionerRole?endtime=gt1800

Limitation: Combination in a query cannot guarantee the correct pairing of `starttime` and `endtime` from the same availableTime block. Use of `daysofweek` can help filter, but may still return mixed results when multiple blocks exist for a day. At an implementation layer further filtering may be needed to ensure correct pairing.

Note: Support for _id is mandatory for a responder and optional for a requester. Where the expectation for a search parameter differs between actors, the table below will reflect the stronger conformance requirement.

Parameter(s) | Conformance | Type(s) | Requirements (when used alone or in combination)
--- | --- | --- | ---
_id | SHOULD | `token` |
service-type (R4) | SHOULD | `token` |
languages | SHOULD | `token` |
hsbilling | SHOULD | `token` |
service-type+languages | SHOULD | `token`+`token` |
service-type+hsbilling | SHOULD | `token`+`token` |
languages+hsbilling | SHOULD | `token`+`token` |
languages+daysofweek | SHOULD | `token`+`token` |
hsbilling+daysofweek | SHOULD | `token`+`token` |
daysofweek+starttime+endtime | SHOULD | `token`+`number`+`number` |

### Search include parameters

This implementation supports the following `_include` parameters when searching for HealthcareService resources:

- `_include=HealthcareService:location` - Include Location resources referenced by the `location` element
- `_include=HealthcareService:organization` - Include Organization resources referenced by the `providedBy` element
- `_include=HealthcareService:endpoint` - Include Endpoint resources referenced by the `endpoint` element

### Search reverse include parameters

This implementation supports the following `_revinclude` parameters when searching for HealthcareService resources:

- `_revinclude=PractitionerRole:service` - Include PractitionerRole resources that reference this HealthcareService
- `_revinclude=Provenance:target` - Include Provenance resources that track changes to this HealthcareService

#### Example usage

    GET /HealthcareService/789?_include=HealthcareService:location&_include=HealthcareService:organization&_revinclude=PractitionerRole:service

This query returns the HealthcareService with its Location, providing Organization, and all associated PractitionerRoles.