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 0.1.0-preview built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/AuDigitalHealth/HealthConnect/ and changes regularly. See the Directory of published versions

Resource Profile: HC Practitioner

Official URL: http://ns.electronichealth.net.au/hc/StructureDefinition/hc-practitioner Version: 0.1.0-preview
Standards status: Draft Computable Name: HCPractitioner

Usage:Jurisdiction: Australia

Copyright/Legal: Copyright © 2025 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 Healthcare Provider Individual details who is delivering health related services.

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

Note: All elements defined within this profile are expected to be supported by implementing systems unless explicitly stated otherwise. The following sections provide additional guidance and exceptions for specific elements.

Usage notes

The following guidance maps key information requirements for HC Practitioner records to fields in the profile. Where a requirement references the HI Service as the authoritative source, publishers SHOULD prefer and validate values—such as practitioner identifiers, and names.

Identifiers

Required Identifier:

  • HPI-I - Healthcare Provider Identifier - Individual (mandatory)

Professional Registration and Profession

Professional registration should be carried in the qualification element. The registration number of the Practitioner should be populated in qualification.identifier; the practitioner's profession should be sent as free text in qualification.code.text.

  • qualification.identifier: Registration number issued by the regulatory body (either issued by Ahpra or a non-Ahpra peak body). Follow the applicable identifier profile for format and issuer information.
  • qualification.code.text: The practitioner's profession linked to the registration number as a human-readable string. Because there is no single, authoritative ValueSet that covers all professions reliably, send the profession in code.text.
  • qualification.code.coding (optional): Only use coded values when you have an authoritative, stable code system for that profession. When coding is included, also populate code.text with the same label.

Notes:

  • For Ahpra-registered practitioners include the Ahpra registration number in qualification.identifier. If you can map the profession to a reliable Ahpra code you may include qualification.code.coding, but still provide qualification.code.text.
  • For non-Ahpra registrations include the issuing organisation in qualification.issuer.display or, when attaching issuer details to the identifier itself, use qualification.identifier.assigner.display or qualification.identifier.system as appropriate.

This profile requires profession to be present as human-readable text in qualification.code.text when the profession is known; coded professions are optional.

Personal contact details

Practitioners may optionally provide personal contact details for inclusion in the Provider Directory. This includes personalPhoneNumber and personalEmailAddress. Publishing systems MUST only include and display these personal contact details if the practitioner has explicitly opted in to being listed; treat these fields as sensitive and do not expose them publicly unless the practitioner has consented.

Data Integrity and Validation

This profile includes invariants to ensure data consistency and proper professional credentialing.

Professional Registration Invariants

hc-practitioner-registration-required (error): Ensures at least one professional registration is present in qualifications:

  • At least one qualification with Ahpra registration identifier OR
  • At least one qualification with professional registration (PRN) identifier

Implementation Validation:

  • Each qualification will include both an identifier and appropriate profession code

Usages:

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.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Practitioner C 0..* AUCorePractitioner Healthcare Provider Individual
Constraints: inv-pra-0, inv-pra-1, inv-pra-2, inv-pra-3, inv-pra-4, hc-practitioner-registration-required
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:genderIdentity SC 0..1 (Complex) The individual's gender identity
URL: http://hl7.org/fhir/StructureDefinition/individual-genderIdentity
.... extension:individualPronouns 0..* (Complex) Pronouns shall be a member of the Australian Pronouns value set if any codes within that value set can apply
URL: http://hl7.org/fhir/StructureDefinition/individual-pronouns
.... extension:recordedSexOrGender SC 1..1 (Complex) A recorded sex or gender property for the individual
URL: http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
.... identifier:hpii SOΣ 1..1 AUHPII HPI-I identifier
... Slices for name SOΣ 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
.... name:All Slices Content/Rules for all slices
..... use ?!Σ 0..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
..... family SOΣ 1..1 string Family name (often called 'Surname')
..... given SOΣ 0..* string Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... name:officialName SOΣ 1..1 HumanName Legal Registered Name
..... use ?!Σ 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
Fixed Value: official
..... family SOΣ 1..1 string Practitioner's family name
..... given SOΣ 0..1 string Practitioner's given name
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ 0..1 string Title
This repeating element order: Prefixes appear in the correct order for presenting the name
.... name:preferredName SOΣ 0..1 HumanName Additional preferred name or alias of a practitioner
..... use ?!Σ 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
Fixed Value: usual
..... family SOΣ 1..1 string Practitioner's family name
..... given SOΣ 0..* string Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
... Slices for telecom Σ 0..* ContactPoint A contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system, value:use
.... telecom:personalPhoneNumber SΣ 0..1 ContactPoint Personal phone number
..... system ΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
Fixed Value: phone
..... value Σ 1..1 string The actual contact point details
..... use ?!Σ 1..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
Fixed Value: home
.... telecom:personalEmailAddress SΣ 0..1 ContactPoint Personal Email address
..... system ΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
Fixed Value: email
..... value Σ 1..1 string The actual contact point details
..... use ?!Σ 1..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
Fixed Value: home
... qualification S 1..* BackboneElement Certifications, licenses, or training pertaining to the provision of care
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... Slices for identifier S 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber Ahpra registration number
..... identifier:professionalRegistration S 0..1 HCProfessionalRegistrationNumber Professional registration number for non-Ahpra practitioners
.... code S 1..1 CodeableConcept Profession of the Practitioner.
Binding: hl7VS-degreeLicenseCertificate - AU Extended (preferred)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Practitioner.name.use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.name:officialName.​use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.name:preferredName.​use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.telecom:personalPhoneNumber.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Practitioner.telecom:personalPhoneNumber.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Practitioner.telecom:personalEmailAddress.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Practitioner.telecom:personalEmailAddress.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Practitioner.qualification.​code Base preferred hl7VS-degreeLicenseCertificate - AU Extended 📦6.0.0-ballot AU Base Implementation Guide v6.0

Constraints

Id Grade Path(s) Description Expression
dom-2 error Practitioner If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Practitioner 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 Practitioner 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 Practitioner If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Practitioner A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
hc-practitioner-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.code = 'AHPRA').exists() or qualification.identifier.where(type.coding.code = 'PRN').exists()
inv-pra-0 warning Practitioner Individual gender identity shall be a member of the Gender Identity Response value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-genderIdentity').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-genderIdentity').all(extension('value').value.memberOf('https://healthterminologies.gov.au/fhir/ValueSet/gender-identity-response-1'))
inv-pra-1 warning Practitioner Individual pronouns shall be a member of the Australian Pronouns value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-pronouns').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-pronouns').all(extension('value').value.memberOf('https://healthterminologies.gov.au/fhir/ValueSet/australian-pronouns-1'))
inv-pra-2 warning Practitioner Recorded sex or gender type shall be a member of the AU Recorded Sex or Gender Type value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('type').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('type').value.memberOf('http://terminology.hl7.org.au/ValueSet/rsg-type'))
inv-pra-3 warning Practitioner Recorded sex or gender source document type shall be a member of the AU Recorded Sex or Gender (RSG) Source Document Type value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('sourceDocument').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('sourceDocument').value.memberOf('http://terminology.hl7.org.au/ValueSet/rsg-document-type'))
inv-pra-4 warning Practitioner Recorded sex or gender jurisdiction shall be a member of the Jurisdiction ValueSet - AU Extended value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('jurisdiction').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('jurisdiction').value.memberOf('http://terminology.hl7.org.au/ValueSet/jurisdiction-extended'))

This structure is derived from AUCorePractitioner

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Practitioner C 0..* AUCorePractitioner Healthcare Provider Individual
Constraints: hc-practitioner-registration-required
... extension 1..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:genderIdentity S 0..1 PGenderIdentity(5.2.0) The individual's gender identity
Binding: HC Gender Identity ValueSet (preferred)
.... extension:recordedSexOrGender S 1..1 RecordedSexOrGender(5.2.0) A recorded sex or gender property for the individual
... identifier 1..* Identifier, AUHPII, AUPBSPrescriberNumber, AUCareAgencyEmployeeIdentifier, AUAhpraRegistrationNumber An identifier for the person as this agent
.... identifier:hpii 1..1 AUHPII HPI-I identifier
... Slices for name 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
.... name:officialName S 1..1 HumanName Legal Registered Name
..... use 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Fixed Value: official
..... family 1..1 string Practitioner's family name
..... given 0..1 string Practitioner's given name
..... prefix 0..1 string Title
.... name:preferredName S 0..1 HumanName Additional preferred name or alias of a practitioner
..... use 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Fixed Value: usual
..... family 1..1 string Practitioner's family name
... Slices for telecom 0..* ContactPoint A contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system, value:use
.... telecom:personalPhoneNumber S 0..1 ContactPoint Personal phone number
..... system 1..1 code phone | fax | email | pager | url | sms | other
Fixed Value: phone
..... value 1..1 string The actual contact point details
..... use 1..1 code home | work | temp | old | mobile - purpose of this contact point
Fixed Value: home
.... telecom:personalEmailAddress S 0..1 ContactPoint Personal Email address
..... system 1..1 code phone | fax | email | pager | url | sms | other
Fixed Value: email
..... value 1..1 string The actual contact point details
..... use 1..1 code home | work | temp | old | mobile - purpose of this contact point
Fixed Value: home
... qualification S 1..* BackboneElement Certifications, licenses, or training pertaining to the provision of care
.... Slices for identifier S 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber Ahpra registration number
..... identifier:professionalRegistration S 0..1 HCProfessionalRegistrationNumber Professional registration number for non-Ahpra practitioners
.... code S 1..1 CodeableConcept Profession of the Practitioner.

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Practitioner.extension:genderIdentity Base preferred HC Gender Identity ValueSet 📦0.1.0-preview This IG

Constraints

Id Grade Path(s) Description Expression
hc-practitioner-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.code = 'AHPRA').exists() or qualification.identifier.where(type.coding.code = 'PRN').exists()
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Practitioner C 0..* AUCorePractitioner Healthcare Provider Individual
Constraints: inv-pra-0, inv-pra-1, inv-pra-2, inv-pra-3, inv-pra-4, hc-practitioner-registration-required
... 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
... 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 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:genderIdentity SC 0..1 (Complex) The individual's gender identity
URL: http://hl7.org/fhir/StructureDefinition/individual-genderIdentity
.... extension:individualPronouns 0..* (Complex) Pronouns shall be a member of the Australian Pronouns value set if any codes within that value set can apply
URL: http://hl7.org/fhir/StructureDefinition/individual-pronouns
.... extension:recordedSexOrGender SC 1..1 (Complex) A recorded sex or gender property for the individual
URL: http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier SOΣ 1..* Identifier, AUHPII, AUPBSPrescriberNumber, AUCareAgencyEmployeeIdentifier, AUAhpraRegistrationNumber An identifier for the person as this agent
Slice: Unordered, Open by pattern:type
.... identifier:hpii SOΣ 1..1 AUHPII HPI-I identifier
... active Σ 0..1 boolean Whether this practitioner's record is in active use
... Slices for name SOΣ 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
.... name:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
..... text Σ 0..1 string Text representation of the full name
..... family SOΣ 1..1 string Family name (often called 'Surname')
..... given SOΣ 0..* string Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ 0..* string Parts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ 0..* string Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ 0..1 Period Time period when name was/is in use
.... name:officialName SOΣ 1..1 HumanName Legal Registered Name
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
Fixed Value: official
..... text Σ 0..1 string Text representation of the full name
..... family SOΣ 1..1 string Practitioner's family name
..... given SOΣ 0..1 string Practitioner's given name
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ 0..1 string Title
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ 0..* string Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ 0..1 Period Time period when name was/is in use
.... name:preferredName SOΣ 0..1 HumanName Additional preferred name or alias of a practitioner
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
Fixed Value: usual
..... text Σ 0..1 string Text representation of the full name
..... family SOΣ 1..1 string Practitioner's family name
..... given SOΣ 0..* string Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ 0..* string Parts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ 0..* string Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ 0..1 Period Time period when name was/is in use
... Slices for telecom Σ 0..* ContactPoint A contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system, value:use
.... telecom:personalPhoneNumber SΣ 0..1 ContactPoint Personal phone number
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
Fixed Value: phone
..... value Σ 1..1 string The actual contact point details
..... use ?!Σ 1..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
Fixed Value: home
..... 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
.... telecom:personalEmailAddress SΣ 0..1 ContactPoint Personal Email address
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
Fixed Value: email
..... value Σ 1..1 string The actual contact point details
..... use ?!Σ 1..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
Fixed Value: home
..... 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
... address Σ 0..* Address, AustralianAddress Address(es) of the practitioner that are not role specific (typically home address)
... gender Σ 0..1 code male | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.
... birthDate Σ 0..1 date The date on which the practitioner was born
... photo 0..* Attachment Image of the person
... qualification S 1..* BackboneElement Certifications, licenses, or training pertaining to the provision of care
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... Slices for identifier S 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber Ahpra registration number
..... identifier:professionalRegistration S 0..1 HCProfessionalRegistrationNumber Professional registration number for non-Ahpra practitioners
.... code S 1..1 CodeableConcept Profession of the Practitioner.
Binding: hl7VS-degreeLicenseCertificate - AU Extended (preferred)
.... period 0..1 Period Period during which the qualification is valid
.... issuer 0..1 Reference(Organization) Organization that regulates and issues the qualification
... communication 0..* CodeableConcept A language the practitioner can use in patient communication
Binding: Common Languages in Australia . (extensible)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Practitioner.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Practitioner.name.use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.name:officialName.​use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.name:preferredName.​use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.telecom:personalPhoneNumber.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Practitioner.telecom:personalPhoneNumber.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Practitioner.telecom:personalEmailAddress.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Practitioner.telecom:personalEmailAddress.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Practitioner.gender Base required AdministrativeGender 📍4.0.1 FHIR Std.
Practitioner.qualification.​code Base preferred hl7VS-degreeLicenseCertificate - AU Extended 📦6.0.0-ballot AU Base Implementation Guide v6.0
Practitioner.communication Base extensible Common Languages in Australia . ⏿2.2.1 tx.ontoserver.csiro.au

Constraints

Id Grade Path(s) Description Expression
dom-2 error Practitioner If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Practitioner 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 Practitioner 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 Practitioner If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Practitioner A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
hc-practitioner-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.code = 'AHPRA').exists() or qualification.identifier.where(type.coding.code = 'PRN').exists()
inv-pra-0 warning Practitioner Individual gender identity shall be a member of the Gender Identity Response value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-genderIdentity').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-genderIdentity').all(extension('value').value.memberOf('https://healthterminologies.gov.au/fhir/ValueSet/gender-identity-response-1'))
inv-pra-1 warning Practitioner Individual pronouns shall be a member of the Australian Pronouns value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-pronouns').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-pronouns').all(extension('value').value.memberOf('https://healthterminologies.gov.au/fhir/ValueSet/australian-pronouns-1'))
inv-pra-2 warning Practitioner Recorded sex or gender type shall be a member of the AU Recorded Sex or Gender Type value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('type').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('type').value.memberOf('http://terminology.hl7.org.au/ValueSet/rsg-type'))
inv-pra-3 warning Practitioner Recorded sex or gender source document type shall be a member of the AU Recorded Sex or Gender (RSG) Source Document Type value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('sourceDocument').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('sourceDocument').value.memberOf('http://terminology.hl7.org.au/ValueSet/rsg-document-type'))
inv-pra-4 warning Practitioner Recorded sex or gender jurisdiction shall be a member of the Jurisdiction ValueSet - AU Extended value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('jurisdiction').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('jurisdiction').value.memberOf('http://terminology.hl7.org.au/ValueSet/jurisdiction-extended'))

This structure is derived from AUCorePractitioner

Summary

Mandatory: 8 elements(7 nested mandatory elements)
Must-Support: 11 elements
Fixed: 6 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Practitioner.name
  • The element 2 is sliced based on the values of Practitioner.telecom
  • The element 1 is sliced based on the value of Practitioner.qualification.identifier

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Practitioner C 0..* AUCorePractitioner Healthcare Provider Individual
Constraints: inv-pra-0, inv-pra-1, inv-pra-2, inv-pra-3, inv-pra-4, hc-practitioner-registration-required
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:genderIdentity SC 0..1 (Complex) The individual's gender identity
URL: http://hl7.org/fhir/StructureDefinition/individual-genderIdentity
.... extension:individualPronouns 0..* (Complex) Pronouns shall be a member of the Australian Pronouns value set if any codes within that value set can apply
URL: http://hl7.org/fhir/StructureDefinition/individual-pronouns
.... extension:recordedSexOrGender SC 1..1 (Complex) A recorded sex or gender property for the individual
URL: http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
.... identifier:hpii SOΣ 1..1 AUHPII HPI-I identifier
... Slices for name SOΣ 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
.... name:All Slices Content/Rules for all slices
..... use ?!Σ 0..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
..... family SOΣ 1..1 string Family name (often called 'Surname')
..... given SOΣ 0..* string Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... name:officialName SOΣ 1..1 HumanName Legal Registered Name
..... use ?!Σ 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
Fixed Value: official
..... family SOΣ 1..1 string Practitioner's family name
..... given SOΣ 0..1 string Practitioner's given name
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ 0..1 string Title
This repeating element order: Prefixes appear in the correct order for presenting the name
.... name:preferredName SOΣ 0..1 HumanName Additional preferred name or alias of a practitioner
..... use ?!Σ 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
Fixed Value: usual
..... family SOΣ 1..1 string Practitioner's family name
..... given SOΣ 0..* string Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
... Slices for telecom Σ 0..* ContactPoint A contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system, value:use
.... telecom:personalPhoneNumber SΣ 0..1 ContactPoint Personal phone number
..... system ΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
Fixed Value: phone
..... value Σ 1..1 string The actual contact point details
..... use ?!Σ 1..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
Fixed Value: home
.... telecom:personalEmailAddress SΣ 0..1 ContactPoint Personal Email address
..... system ΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
Fixed Value: email
..... value Σ 1..1 string The actual contact point details
..... use ?!Σ 1..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
Fixed Value: home
... qualification S 1..* BackboneElement Certifications, licenses, or training pertaining to the provision of care
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... Slices for identifier S 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber Ahpra registration number
..... identifier:professionalRegistration S 0..1 HCProfessionalRegistrationNumber Professional registration number for non-Ahpra practitioners
.... code S 1..1 CodeableConcept Profession of the Practitioner.
Binding: hl7VS-degreeLicenseCertificate - AU Extended (preferred)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Practitioner.name.use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.name:officialName.​use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.name:preferredName.​use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.telecom:personalPhoneNumber.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Practitioner.telecom:personalPhoneNumber.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Practitioner.telecom:personalEmailAddress.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Practitioner.telecom:personalEmailAddress.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Practitioner.qualification.​code Base preferred hl7VS-degreeLicenseCertificate - AU Extended 📦6.0.0-ballot AU Base Implementation Guide v6.0

Constraints

Id Grade Path(s) Description Expression
dom-2 error Practitioner If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Practitioner 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 Practitioner 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 Practitioner If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Practitioner A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
hc-practitioner-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.code = 'AHPRA').exists() or qualification.identifier.where(type.coding.code = 'PRN').exists()
inv-pra-0 warning Practitioner Individual gender identity shall be a member of the Gender Identity Response value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-genderIdentity').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-genderIdentity').all(extension('value').value.memberOf('https://healthterminologies.gov.au/fhir/ValueSet/gender-identity-response-1'))
inv-pra-1 warning Practitioner Individual pronouns shall be a member of the Australian Pronouns value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-pronouns').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-pronouns').all(extension('value').value.memberOf('https://healthterminologies.gov.au/fhir/ValueSet/australian-pronouns-1'))
inv-pra-2 warning Practitioner Recorded sex or gender type shall be a member of the AU Recorded Sex or Gender Type value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('type').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('type').value.memberOf('http://terminology.hl7.org.au/ValueSet/rsg-type'))
inv-pra-3 warning Practitioner Recorded sex or gender source document type shall be a member of the AU Recorded Sex or Gender (RSG) Source Document Type value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('sourceDocument').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('sourceDocument').value.memberOf('http://terminology.hl7.org.au/ValueSet/rsg-document-type'))
inv-pra-4 warning Practitioner Recorded sex or gender jurisdiction shall be a member of the Jurisdiction ValueSet - AU Extended value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('jurisdiction').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('jurisdiction').value.memberOf('http://terminology.hl7.org.au/ValueSet/jurisdiction-extended'))

Differential View

This structure is derived from AUCorePractitioner

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Practitioner C 0..* AUCorePractitioner Healthcare Provider Individual
Constraints: hc-practitioner-registration-required
... extension 1..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:genderIdentity S 0..1 PGenderIdentity(5.2.0) The individual's gender identity
Binding: HC Gender Identity ValueSet (preferred)
.... extension:recordedSexOrGender S 1..1 RecordedSexOrGender(5.2.0) A recorded sex or gender property for the individual
... identifier 1..* Identifier, AUHPII, AUPBSPrescriberNumber, AUCareAgencyEmployeeIdentifier, AUAhpraRegistrationNumber An identifier for the person as this agent
.... identifier:hpii 1..1 AUHPII HPI-I identifier
... Slices for name 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
.... name:officialName S 1..1 HumanName Legal Registered Name
..... use 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Fixed Value: official
..... family 1..1 string Practitioner's family name
..... given 0..1 string Practitioner's given name
..... prefix 0..1 string Title
.... name:preferredName S 0..1 HumanName Additional preferred name or alias of a practitioner
..... use 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Fixed Value: usual
..... family 1..1 string Practitioner's family name
... Slices for telecom 0..* ContactPoint A contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system, value:use
.... telecom:personalPhoneNumber S 0..1 ContactPoint Personal phone number
..... system 1..1 code phone | fax | email | pager | url | sms | other
Fixed Value: phone
..... value 1..1 string The actual contact point details
..... use 1..1 code home | work | temp | old | mobile - purpose of this contact point
Fixed Value: home
.... telecom:personalEmailAddress S 0..1 ContactPoint Personal Email address
..... system 1..1 code phone | fax | email | pager | url | sms | other
Fixed Value: email
..... value 1..1 string The actual contact point details
..... use 1..1 code home | work | temp | old | mobile - purpose of this contact point
Fixed Value: home
... qualification S 1..* BackboneElement Certifications, licenses, or training pertaining to the provision of care
.... Slices for identifier S 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber Ahpra registration number
..... identifier:professionalRegistration S 0..1 HCProfessionalRegistrationNumber Professional registration number for non-Ahpra practitioners
.... code S 1..1 CodeableConcept Profession of the Practitioner.

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Practitioner.extension:genderIdentity Base preferred HC Gender Identity ValueSet 📦0.1.0-preview This IG

Constraints

Id Grade Path(s) Description Expression
hc-practitioner-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.code = 'AHPRA').exists() or qualification.identifier.where(type.coding.code = 'PRN').exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Practitioner C 0..* AUCorePractitioner Healthcare Provider Individual
Constraints: inv-pra-0, inv-pra-1, inv-pra-2, inv-pra-3, inv-pra-4, hc-practitioner-registration-required
... 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
... 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 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:genderIdentity SC 0..1 (Complex) The individual's gender identity
URL: http://hl7.org/fhir/StructureDefinition/individual-genderIdentity
.... extension:individualPronouns 0..* (Complex) Pronouns shall be a member of the Australian Pronouns value set if any codes within that value set can apply
URL: http://hl7.org/fhir/StructureDefinition/individual-pronouns
.... extension:recordedSexOrGender SC 1..1 (Complex) A recorded sex or gender property for the individual
URL: http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier SOΣ 1..* Identifier, AUHPII, AUPBSPrescriberNumber, AUCareAgencyEmployeeIdentifier, AUAhpraRegistrationNumber An identifier for the person as this agent
Slice: Unordered, Open by pattern:type
.... identifier:hpii SOΣ 1..1 AUHPII HPI-I identifier
... active Σ 0..1 boolean Whether this practitioner's record is in active use
... Slices for name SOΣ 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
.... name:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
..... text Σ 0..1 string Text representation of the full name
..... family SOΣ 1..1 string Family name (often called 'Surname')
..... given SOΣ 0..* string Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ 0..* string Parts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ 0..* string Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ 0..1 Period Time period when name was/is in use
.... name:officialName SOΣ 1..1 HumanName Legal Registered Name
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
Fixed Value: official
..... text Σ 0..1 string Text representation of the full name
..... family SOΣ 1..1 string Practitioner's family name
..... given SOΣ 0..1 string Practitioner's given name
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ 0..1 string Title
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ 0..* string Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ 0..1 Period Time period when name was/is in use
.... name:preferredName SOΣ 0..1 HumanName Additional preferred name or alias of a practitioner
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.
Fixed Value: usual
..... text Σ 0..1 string Text representation of the full name
..... family SOΣ 1..1 string Practitioner's family name
..... given SOΣ 0..* string Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ 0..* string Parts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ 0..* string Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ 0..1 Period Time period when name was/is in use
... Slices for telecom Σ 0..* ContactPoint A contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system, value:use
.... telecom:personalPhoneNumber SΣ 0..1 ContactPoint Personal phone number
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
Fixed Value: phone
..... value Σ 1..1 string The actual contact point details
..... use ?!Σ 1..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
Fixed Value: home
..... 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
.... telecom:personalEmailAddress SΣ 0..1 ContactPoint Personal Email address
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
Fixed Value: email
..... value Σ 1..1 string The actual contact point details
..... use ?!Σ 1..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
Fixed Value: home
..... 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
... address Σ 0..* Address, AustralianAddress Address(es) of the practitioner that are not role specific (typically home address)
... gender Σ 0..1 code male | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.
... birthDate Σ 0..1 date The date on which the practitioner was born
... photo 0..* Attachment Image of the person
... qualification S 1..* BackboneElement Certifications, licenses, or training pertaining to the provision of care
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... Slices for identifier S 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber Ahpra registration number
..... identifier:professionalRegistration S 0..1 HCProfessionalRegistrationNumber Professional registration number for non-Ahpra practitioners
.... code S 1..1 CodeableConcept Profession of the Practitioner.
Binding: hl7VS-degreeLicenseCertificate - AU Extended (preferred)
.... period 0..1 Period Period during which the qualification is valid
.... issuer 0..1 Reference(Organization) Organization that regulates and issues the qualification
... communication 0..* CodeableConcept A language the practitioner can use in patient communication
Binding: Common Languages in Australia . (extensible)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Practitioner.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Practitioner.name.use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.name:officialName.​use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.name:preferredName.​use Base required NameUse 📍4.0.1 FHIR Std.
Practitioner.telecom:personalPhoneNumber.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Practitioner.telecom:personalPhoneNumber.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Practitioner.telecom:personalEmailAddress.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Practitioner.telecom:personalEmailAddress.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Practitioner.gender Base required AdministrativeGender 📍4.0.1 FHIR Std.
Practitioner.qualification.​code Base preferred hl7VS-degreeLicenseCertificate - AU Extended 📦6.0.0-ballot AU Base Implementation Guide v6.0
Practitioner.communication Base extensible Common Languages in Australia . ⏿2.2.1 tx.ontoserver.csiro.au

Constraints

Id Grade Path(s) Description Expression
dom-2 error Practitioner If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Practitioner 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 Practitioner 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 Practitioner If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Practitioner A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
hc-practitioner-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.code = 'AHPRA').exists() or qualification.identifier.where(type.coding.code = 'PRN').exists()
inv-pra-0 warning Practitioner Individual gender identity shall be a member of the Gender Identity Response value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-genderIdentity').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-genderIdentity').all(extension('value').value.memberOf('https://healthterminologies.gov.au/fhir/ValueSet/gender-identity-response-1'))
inv-pra-1 warning Practitioner Individual pronouns shall be a member of the Australian Pronouns value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-pronouns').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-pronouns').all(extension('value').value.memberOf('https://healthterminologies.gov.au/fhir/ValueSet/australian-pronouns-1'))
inv-pra-2 warning Practitioner Recorded sex or gender type shall be a member of the AU Recorded Sex or Gender Type value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('type').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('type').value.memberOf('http://terminology.hl7.org.au/ValueSet/rsg-type'))
inv-pra-3 warning Practitioner Recorded sex or gender source document type shall be a member of the AU Recorded Sex or Gender (RSG) Source Document Type value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('sourceDocument').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('sourceDocument').value.memberOf('http://terminology.hl7.org.au/ValueSet/rsg-document-type'))
inv-pra-4 warning Practitioner Recorded sex or gender jurisdiction shall be a member of the Jurisdiction ValueSet - AU Extended value set if any codes within that value set can apply extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').extension('jurisdiction').empty() or extension('http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender').all(extension('jurisdiction').value.memberOf('http://terminology.hl7.org.au/ValueSet/jurisdiction-extended'))

This structure is derived from AUCorePractitioner

Summary

Mandatory: 8 elements(7 nested mandatory elements)
Must-Support: 11 elements
Fixed: 6 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Practitioner.name
  • The element 2 is sliced based on the values of Practitioner.telecom
  • The element 1 is sliced based on the value of Practitioner.qualification.identifier

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Search parameters for HC Practitioner

This IG provides a small set of convenience SearchParameters to make it easier to find HC Practitioner resources; it also expects implementers to support common Practitioner parameters from AU Core & AU Base.

Search parameters defined within AU Core and AU Base

How search queries can be performed using the HPI-I are described in AU Core documentation. How search queries can be performed using gender-identity is described in AU Base documentation. The AU Core guidance favours the standard FHIR identifier search parameter using the system|value (token) form.

  • identifier - Search practitioners by HPI-I or Ahpra registration number. Examples:
  • GET /Practitioner?identifier=http://ns.electronichealth.net.au/id/hi/hpii/1.0|8003619900015717 (HPI-I)
  • GET /Practitioner?identifier=http://hl7.org.au/id/ahpra-registration-number|MED0000932945 (Ahpra)

  • gender-identity (Practitioner.extension('http://hl7.org/fhir/StructureDefinition/individual-genderIdentity').extension('value').value)
  • Search by a practitioner's recorded gender identity extension value.
  • Example: GET /Practitioner?genderIdentity=http://snomed.info/sct|446151000124109

Search parameters defined in this IG

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

  • practitionername (Practitioner.name where name.use = official)
  • Search by the practitioner's official/legal name.
  • Example: GET /Practitioner?practitionername=Fryer

  • practitioneralias (Practitioner.name where name.use = usual)
  • Search by the practitioner's preferred or commonly used name.
  • Example: GET /Practitioner?practitioneralias=Helen

  • prn (Practitioner.qualification.identifier where type.coding.code = 'PRN')
  • Find practitioners by a Professional Registration Number (PRN).
  • Example (value-only): GET /Practitioner?prn=PRN-123456

  • rsg (Practitioner.extension(recordedSexorGender).valueCodeableConcept)
  • Search by a practitioner's recorded sex or gender.
  • Example: GET /Practitioner?rsg=http://hl7.org/fhir/administrative-gender|male

  • regprof (Practitioner.qualification.code.text)
  • Search by a practitioner's registered profession using string values.
  • Example: GET /Practitioner?regprof=Psychologist



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 SHALL token
identifier SHALL token The requester SHALL provide both the code values. The responder SHALL support.

The requester SHOULD support search using HPI-I or Ahpra number as defined in the profile. The responder SHOULD support search using the using HPI-I or Ahphra number as defined in the profile.
practitionername SHOULD string
practitioneralias SHOULD string
prn SHOULD token Search by Professional Registration Number. Shared SearchParameter for availability across Practitioner and PractitionerRole
ahpraregistrationnumber SHOULD token Search by Ahpra registration number. Shared SearchParameter for availability across Practitioner and PractitionerRole
regprof SHOULD string Search by registered profession using string values in `qualification.code.text`.
identifier+rsg SHOULD token+token
identifier+gender-identity SHOULD token+token
practitionername+rsg SHOULD string+token
practitionername+gender-identity SHOULD string+token
practitioneralias+rsg SHOULD string+token
practitioneralias+gender-identity SHOULD string+token
prn+rsg SHOULD token+token
prn+gender-identity SHOULD token+token
regprof+rsg SHOULD string+token Search by Ahpra profession and recorded sex/gender
regprof+gender-identity SHOULD string+token Search by Ahpra profession and gender identity

Search reverse include parameters

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

  • _revinclude=PractitionerRole:practitioner - Include PractitionerRole resources that reference this Practitioner
  • _revinclude=Provenance:target - Include Provenance resources that track changes to this Practitioner

Example usage

GET /Practitioner/202?_revinclude=PractitionerRole:practitioner

This query returns the Practitioner resource along with all their associated roles and positions.