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.2.0-preview built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/steveswinsburg/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.2.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.

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 peak body (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

inv-01-qualification-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 a peak body registration identifier

Implementation Validation:

  • Each qualification will include both an identifier and appropriate profession code (at least qualification.code.text).

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(2.0.0-ballot) Healthcare Provider Individual
Constraints: inv-pra-0, inv-pra-1, inv-pra-2, inv-pra-3, inv-pra-4, inv-01-qualification-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
Constraints: ext-1
.... extension:genderIdentity SOC 0..1 (Complex) The individual's gender identity
URL: http://hl7.org/fhir/StructureDefinition/individual-genderIdentity
Constraints: ext-1
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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
Constraints: ext-1
.... extension:recordedSexOrGender SOC 1..1 (Complex) A recorded sex or gender property for the individual
URL: http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender
Constraints: ext-1
ObligationsActor
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
.... identifier:hpii SOΣ 1..1 AUHPII(6.0.0) HPI-I identifier
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
... Slices for name SOΣ 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... given SOΣ 0..1 string Practitioner's given name
This repeating element order: Given Names appear in the correct order for presenting the name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... prefix OΣ 0..1 string Title
This repeating element order: Prefixes appear in the correct order for presenting the name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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 SOΣ 0..1 ContactPoint Personal phone number
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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 SOΣ 0..1 ContactPoint Personal Email address
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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 SO 1..* BackboneElement Professional registration details of the practitioner
ObligationsActor
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
.... Slices for identifier SO 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber(6.0.0) Ahpra registration number
..... identifier:peakbodyregistrationnumber S 0..1 HCPeakBodyRegistrationNumber(0.2.0-preview) Peak body, association or societal professional registration number for non-Ahpra practitioners
.... code SO 1..1 CodeableConcept Profession of the Practitioner.
Binding: Hl7VSDegreeLicenseCertificateAUExtended (6.0.0) (preferred)
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... text SΣ 1..1 string Text representation of the Practitioner Profession.
.... issuer S 0..1 Reference(Organization) Organization that regulates and issues the qualification

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 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 Practitioner.implicitRules, Practitioner.extension, Practitioner.extension:genderIdentity, Practitioner.extension:individualPronouns, Practitioner.extension:recordedSexOrGender, Practitioner.modifierExtension, Practitioner.identifier, Practitioner.identifier:hpii, Practitioner.name, Practitioner.name.use, Practitioner.name.family, Practitioner.name.given, Practitioner.name:officialName, Practitioner.name:officialName.use, Practitioner.name:officialName.family, Practitioner.name:officialName.given, Practitioner.name:officialName.prefix, Practitioner.name:preferredName, Practitioner.name:preferredName.use, Practitioner.name:preferredName.family, Practitioner.name:preferredName.given, Practitioner.telecom, Practitioner.telecom:personalPhoneNumber, Practitioner.telecom:personalPhoneNumber.system, Practitioner.telecom:personalPhoneNumber.value, Practitioner.telecom:personalPhoneNumber.use, Practitioner.telecom:personalEmailAddress, Practitioner.telecom:personalEmailAddress.system, Practitioner.telecom:personalEmailAddress.value, Practitioner.telecom:personalEmailAddress.use, Practitioner.qualification, Practitioner.qualification.modifierExtension, Practitioner.qualification.identifier, Practitioner.qualification.identifier:ahpraregistrationnumber, Practitioner.qualification.identifier:peakbodyregistrationnumber, Practitioner.qualification.code, Practitioner.qualification.code.text, Practitioner.qualification.issuer All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error Practitioner.extension, Practitioner.extension:genderIdentity, Practitioner.extension:individualPronouns, Practitioner.extension:recordedSexOrGender, Practitioner.modifierExtension, Practitioner.qualification.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()
inv-01-qualification-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.where(code = 'AHPRA').exists()).exists() or qualification.identifier.where(type.coding.where(code = 'PRN').exists()).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(2.0.0-ballot) Healthcare Provider Individual
... extension 1..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:genderIdentity SO 0..1 PGenderIdentity(5.2.0) The individual's gender identity
Binding: HCGenderIdentityVs (0.2.0-preview) (preferred)
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... extension:recordedSexOrGender SO 1..1 RecordedSexOrGender(5.2.0) A recorded sex or gender property for the individual
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
... identifier O 1..* Identifier(4.0.1), AUHPII(6.0.0), AUPBSPrescriberNumber(6.0.0), AUCareAgencyEmployeeIdentifier(6.0.0), AUAhpraRegistrationNumber(6.0.0) An identifier for the person as this agent
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... identifier:hpii O 1..1 AUHPII(6.0.0) HPI-I identifier
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
... Slices for name O 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... name:officialName S 1..1 HumanName Legal Registered Name
..... use 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Fixed Value: official
..... family O 1..1 string Practitioner's family name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... given O 0..1 string Practitioner's given name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... prefix O 0..1 string Title
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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 SO 0..1 ContactPoint Personal phone number
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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 SO 0..1 ContactPoint Personal Email address
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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 SO 1..* BackboneElement Professional registration details of the practitioner
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... Slices for identifier SO 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber(6.0.0) Ahpra registration number
..... identifier:peakbodyregistrationnumber S 0..1 HCPeakBodyRegistrationNumber(0.2.0-preview) Peak body, association or societal professional registration number for non-Ahpra practitioners
.... code SO 1..1 CodeableConcept Profession of the Practitioner.
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... text S 1..1 string Text representation of the Practitioner Profession.
.... issuer S 0..1 Reference(Organization) Organization that regulates and issues the qualification

doco Documentation for this format

Terminology Bindings (Differential)

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

Constraints

Id Grade Path(s) Description Expression
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Practitioner C 0..* AUCorePractitioner(2.0.0-ballot) Healthcare Provider Individual
Constraints: inv-pra-0, inv-pra-1, inv-pra-2, inv-pra-3, inv-pra-4, inv-01-qualification-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
Constraints: ext-1
.... extension:genderIdentity SOC 0..1 (Complex) The individual's gender identity
URL: http://hl7.org/fhir/StructureDefinition/individual-genderIdentity
Constraints: ext-1
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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
Constraints: ext-1
.... extension:recordedSexOrGender SOC 1..1 (Complex) A recorded sex or gender property for the individual
URL: http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender
Constraints: ext-1
ObligationsActor
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), AUHPII(6.0.0), AUPBSPrescriberNumber(6.0.0), AUCareAgencyEmployeeIdentifier(6.0.0), AUAhpraRegistrationNumber(6.0.0) An identifier for the person as this agent
Slice: Unordered, Open by pattern:type
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... identifier:hpii SOΣ 1..1 AUHPII(6.0.0) HPI-I identifier
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
... 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
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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
Constraints: ext-1
..... 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
Constraints: ext-1
..... 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
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... given SOΣ 0..1 string Practitioner's given name
This repeating element order: Given Names appear in the correct order for presenting the name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... prefix OΣ 0..1 string Title
This repeating element order: Prefixes appear in the correct order for presenting the name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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
Constraints: ext-1
..... 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 SOΣ 0..1 ContactPoint Personal phone number
ObligationsActor
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 Σ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 SOΣ 0..1 ContactPoint Personal Email address
ObligationsActor
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 Σ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(4.0.1), AustralianAddress(6.0.0) 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 SO 1..* BackboneElement Professional registration details of the practitioner
ObligationsActor
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
.... Slices for identifier SO 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber(6.0.0) Ahpra registration number
..... identifier:peakbodyregistrationnumber S 0..1 HCPeakBodyRegistrationNumber(0.2.0-preview) Peak body, association or societal professional registration number for non-Ahpra practitioners
.... code SO 1..1 CodeableConcept Profession of the Practitioner.
Binding: Hl7VSDegreeLicenseCertificateAUExtended (6.0.0) (preferred)
ObligationsActor
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 Σ 0..* Coding Code defined by a terminology system
..... text SΣ 1..1 string Text representation of the Practitioner Profession.
.... period 0..1 Period Period during which the qualification is valid
.... issuer S 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 AU Base Implementation Guide v6.0
Practitioner.communication Base extensible Common Languages in Australia . ⏿2.2.1 tx.hl7.org.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 Practitioner.meta, Practitioner.implicitRules, Practitioner.language, Practitioner.text, Practitioner.extension, Practitioner.extension:genderIdentity, Practitioner.extension:individualPronouns, Practitioner.extension:recordedSexOrGender, Practitioner.modifierExtension, Practitioner.identifier, Practitioner.identifier:hpii, Practitioner.active, Practitioner.name, Practitioner.name.extension, Practitioner.name.use, Practitioner.name.text, Practitioner.name.family, Practitioner.name.given, Practitioner.name.prefix, Practitioner.name.suffix, Practitioner.name.period, Practitioner.name:officialName, Practitioner.name:officialName.extension, Practitioner.name:officialName.use, Practitioner.name:officialName.text, Practitioner.name:officialName.family, Practitioner.name:officialName.given, Practitioner.name:officialName.prefix, Practitioner.name:officialName.suffix, Practitioner.name:officialName.period, Practitioner.name:preferredName, Practitioner.name:preferredName.extension, Practitioner.name:preferredName.use, Practitioner.name:preferredName.text, Practitioner.name:preferredName.family, Practitioner.name:preferredName.given, Practitioner.name:preferredName.prefix, Practitioner.name:preferredName.suffix, Practitioner.name:preferredName.period, Practitioner.telecom, Practitioner.telecom:personalPhoneNumber, Practitioner.telecom:personalPhoneNumber.extension, Practitioner.telecom:personalPhoneNumber.system, Practitioner.telecom:personalPhoneNumber.value, Practitioner.telecom:personalPhoneNumber.use, Practitioner.telecom:personalPhoneNumber.rank, Practitioner.telecom:personalPhoneNumber.period, Practitioner.telecom:personalEmailAddress, Practitioner.telecom:personalEmailAddress.extension, Practitioner.telecom:personalEmailAddress.system, Practitioner.telecom:personalEmailAddress.value, Practitioner.telecom:personalEmailAddress.use, Practitioner.telecom:personalEmailAddress.rank, Practitioner.telecom:personalEmailAddress.period, Practitioner.address, Practitioner.gender, Practitioner.birthDate, Practitioner.photo, Practitioner.qualification, Practitioner.qualification.extension, Practitioner.qualification.modifierExtension, Practitioner.qualification.identifier, Practitioner.qualification.identifier:ahpraregistrationnumber, Practitioner.qualification.identifier:peakbodyregistrationnumber, Practitioner.qualification.code, Practitioner.qualification.code.extension, Practitioner.qualification.code.coding, Practitioner.qualification.code.text, Practitioner.qualification.period, Practitioner.qualification.issuer, Practitioner.communication All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error Practitioner.extension, Practitioner.extension:genderIdentity, Practitioner.extension:individualPronouns, Practitioner.extension:recordedSexOrGender, Practitioner.modifierExtension, Practitioner.name.extension, Practitioner.name:officialName.extension, Practitioner.name:preferredName.extension, Practitioner.telecom:personalPhoneNumber.extension, Practitioner.telecom:personalEmailAddress.extension, Practitioner.qualification.extension, Practitioner.qualification.modifierExtension, Practitioner.qualification.code.extension Must have either extensions or value[x], not both extension.exists() != value.exists()
inv-01-qualification-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.where(code = 'AHPRA').exists()).exists() or qualification.identifier.where(type.coding.where(code = 'PRN').exists()).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: 9 elements(7 nested mandatory elements)
Must-Support: 13 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(2.0.0-ballot) Healthcare Provider Individual
Constraints: inv-pra-0, inv-pra-1, inv-pra-2, inv-pra-3, inv-pra-4, inv-01-qualification-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
Constraints: ext-1
.... extension:genderIdentity SOC 0..1 (Complex) The individual's gender identity
URL: http://hl7.org/fhir/StructureDefinition/individual-genderIdentity
Constraints: ext-1
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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
Constraints: ext-1
.... extension:recordedSexOrGender SOC 1..1 (Complex) A recorded sex or gender property for the individual
URL: http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender
Constraints: ext-1
ObligationsActor
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
.... identifier:hpii SOΣ 1..1 AUHPII(6.0.0) HPI-I identifier
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
... Slices for name SOΣ 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... given SOΣ 0..1 string Practitioner's given name
This repeating element order: Given Names appear in the correct order for presenting the name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... prefix OΣ 0..1 string Title
This repeating element order: Prefixes appear in the correct order for presenting the name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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 SOΣ 0..1 ContactPoint Personal phone number
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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 SOΣ 0..1 ContactPoint Personal Email address
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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 SO 1..* BackboneElement Professional registration details of the practitioner
ObligationsActor
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
.... Slices for identifier SO 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber(6.0.0) Ahpra registration number
..... identifier:peakbodyregistrationnumber S 0..1 HCPeakBodyRegistrationNumber(0.2.0-preview) Peak body, association or societal professional registration number for non-Ahpra practitioners
.... code SO 1..1 CodeableConcept Profession of the Practitioner.
Binding: Hl7VSDegreeLicenseCertificateAUExtended (6.0.0) (preferred)
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... text SΣ 1..1 string Text representation of the Practitioner Profession.
.... issuer S 0..1 Reference(Organization) Organization that regulates and issues the qualification

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 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 Practitioner.implicitRules, Practitioner.extension, Practitioner.extension:genderIdentity, Practitioner.extension:individualPronouns, Practitioner.extension:recordedSexOrGender, Practitioner.modifierExtension, Practitioner.identifier, Practitioner.identifier:hpii, Practitioner.name, Practitioner.name.use, Practitioner.name.family, Practitioner.name.given, Practitioner.name:officialName, Practitioner.name:officialName.use, Practitioner.name:officialName.family, Practitioner.name:officialName.given, Practitioner.name:officialName.prefix, Practitioner.name:preferredName, Practitioner.name:preferredName.use, Practitioner.name:preferredName.family, Practitioner.name:preferredName.given, Practitioner.telecom, Practitioner.telecom:personalPhoneNumber, Practitioner.telecom:personalPhoneNumber.system, Practitioner.telecom:personalPhoneNumber.value, Practitioner.telecom:personalPhoneNumber.use, Practitioner.telecom:personalEmailAddress, Practitioner.telecom:personalEmailAddress.system, Practitioner.telecom:personalEmailAddress.value, Practitioner.telecom:personalEmailAddress.use, Practitioner.qualification, Practitioner.qualification.modifierExtension, Practitioner.qualification.identifier, Practitioner.qualification.identifier:ahpraregistrationnumber, Practitioner.qualification.identifier:peakbodyregistrationnumber, Practitioner.qualification.code, Practitioner.qualification.code.text, Practitioner.qualification.issuer All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error Practitioner.extension, Practitioner.extension:genderIdentity, Practitioner.extension:individualPronouns, Practitioner.extension:recordedSexOrGender, Practitioner.modifierExtension, Practitioner.qualification.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()
inv-01-qualification-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.where(code = 'AHPRA').exists()).exists() or qualification.identifier.where(type.coding.where(code = 'PRN').exists()).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(2.0.0-ballot) Healthcare Provider Individual
... extension 1..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:genderIdentity SO 0..1 PGenderIdentity(5.2.0) The individual's gender identity
Binding: HCGenderIdentityVs (0.2.0-preview) (preferred)
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... extension:recordedSexOrGender SO 1..1 RecordedSexOrGender(5.2.0) A recorded sex or gender property for the individual
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
... identifier O 1..* Identifier(4.0.1), AUHPII(6.0.0), AUPBSPrescriberNumber(6.0.0), AUCareAgencyEmployeeIdentifier(6.0.0), AUAhpraRegistrationNumber(6.0.0) An identifier for the person as this agent
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... identifier:hpii O 1..1 AUHPII(6.0.0) HPI-I identifier
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
... Slices for name O 1..* HumanName The name(s) associated with the practitioner
Slice: Unordered, Open by value:use
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... name:officialName S 1..1 HumanName Legal Registered Name
..... use 1..1 code usual | official | temp | nickname | anonymous | old | maiden
Fixed Value: official
..... family O 1..1 string Practitioner's family name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... given O 0..1 string Practitioner's given name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... prefix O 0..1 string Title
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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 SO 0..1 ContactPoint Personal phone number
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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 SO 0..1 ContactPoint Personal Email address
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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 SO 1..* BackboneElement Professional registration details of the practitioner
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... Slices for identifier SO 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber(6.0.0) Ahpra registration number
..... identifier:peakbodyregistrationnumber S 0..1 HCPeakBodyRegistrationNumber(0.2.0-preview) Peak body, association or societal professional registration number for non-Ahpra practitioners
.... code SO 1..1 CodeableConcept Profession of the Practitioner.
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... text S 1..1 string Text representation of the Practitioner Profession.
.... issuer S 0..1 Reference(Organization) Organization that regulates and issues the qualification

doco Documentation for this format

Terminology Bindings (Differential)

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

Constraints

Id Grade Path(s) Description Expression

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Practitioner C 0..* AUCorePractitioner(2.0.0-ballot) Healthcare Provider Individual
Constraints: inv-pra-0, inv-pra-1, inv-pra-2, inv-pra-3, inv-pra-4, inv-01-qualification-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
Constraints: ext-1
.... extension:genderIdentity SOC 0..1 (Complex) The individual's gender identity
URL: http://hl7.org/fhir/StructureDefinition/individual-genderIdentity
Constraints: ext-1
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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
Constraints: ext-1
.... extension:recordedSexOrGender SOC 1..1 (Complex) A recorded sex or gender property for the individual
URL: http://hl7.org/fhir/StructureDefinition/individual-recordedSexOrGender
Constraints: ext-1
ObligationsActor
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), AUHPII(6.0.0), AUPBSPrescriberNumber(6.0.0), AUCareAgencyEmployeeIdentifier(6.0.0), AUAhpraRegistrationNumber(6.0.0) An identifier for the person as this agent
Slice: Unordered, Open by pattern:type
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... identifier:hpii SOΣ 1..1 AUHPII(6.0.0) HPI-I identifier
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
... 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
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
.... 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
Constraints: ext-1
..... 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
Constraints: ext-1
..... 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
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... given SOΣ 0..1 string Practitioner's given name
This repeating element order: Given Names appear in the correct order for presenting the name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... prefix OΣ 0..1 string Title
This repeating element order: Prefixes appear in the correct order for presenting the name
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... 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
Constraints: ext-1
..... 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 SOΣ 0..1 ContactPoint Personal phone number
ObligationsActor
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 Σ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 SOΣ 0..1 ContactPoint Personal Email address
ObligationsActor
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 Σ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(4.0.1), AustralianAddress(6.0.0) 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 SO 1..* BackboneElement Professional registration details of the practitioner
ObligationsActor
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
.... Slices for identifier SO 1..1 Identifier An identifier for this qualification
Slice: Unordered, Open by pattern:type
ObligationsActor
SHALL:populate-if-known Health Connect Provider Directory Responder Actor
SHOULD:handle Health Connect Provider Directory Requester Actor
..... identifier:ahpraregistrationnumber S 0..1 AUAhpraRegistrationNumber(6.0.0) Ahpra registration number
..... identifier:peakbodyregistrationnumber S 0..1 HCPeakBodyRegistrationNumber(0.2.0-preview) Peak body, association or societal professional registration number for non-Ahpra practitioners
.... code SO 1..1 CodeableConcept Profession of the Practitioner.
Binding: Hl7VSDegreeLicenseCertificateAUExtended (6.0.0) (preferred)
ObligationsActor
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 Σ 0..* Coding Code defined by a terminology system
..... text SΣ 1..1 string Text representation of the Practitioner Profession.
.... period 0..1 Period Period during which the qualification is valid
.... issuer S 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 AU Base Implementation Guide v6.0
Practitioner.communication Base extensible Common Languages in Australia . ⏿2.2.1 tx.hl7.org.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 Practitioner.meta, Practitioner.implicitRules, Practitioner.language, Practitioner.text, Practitioner.extension, Practitioner.extension:genderIdentity, Practitioner.extension:individualPronouns, Practitioner.extension:recordedSexOrGender, Practitioner.modifierExtension, Practitioner.identifier, Practitioner.identifier:hpii, Practitioner.active, Practitioner.name, Practitioner.name.extension, Practitioner.name.use, Practitioner.name.text, Practitioner.name.family, Practitioner.name.given, Practitioner.name.prefix, Practitioner.name.suffix, Practitioner.name.period, Practitioner.name:officialName, Practitioner.name:officialName.extension, Practitioner.name:officialName.use, Practitioner.name:officialName.text, Practitioner.name:officialName.family, Practitioner.name:officialName.given, Practitioner.name:officialName.prefix, Practitioner.name:officialName.suffix, Practitioner.name:officialName.period, Practitioner.name:preferredName, Practitioner.name:preferredName.extension, Practitioner.name:preferredName.use, Practitioner.name:preferredName.text, Practitioner.name:preferredName.family, Practitioner.name:preferredName.given, Practitioner.name:preferredName.prefix, Practitioner.name:preferredName.suffix, Practitioner.name:preferredName.period, Practitioner.telecom, Practitioner.telecom:personalPhoneNumber, Practitioner.telecom:personalPhoneNumber.extension, Practitioner.telecom:personalPhoneNumber.system, Practitioner.telecom:personalPhoneNumber.value, Practitioner.telecom:personalPhoneNumber.use, Practitioner.telecom:personalPhoneNumber.rank, Practitioner.telecom:personalPhoneNumber.period, Practitioner.telecom:personalEmailAddress, Practitioner.telecom:personalEmailAddress.extension, Practitioner.telecom:personalEmailAddress.system, Practitioner.telecom:personalEmailAddress.value, Practitioner.telecom:personalEmailAddress.use, Practitioner.telecom:personalEmailAddress.rank, Practitioner.telecom:personalEmailAddress.period, Practitioner.address, Practitioner.gender, Practitioner.birthDate, Practitioner.photo, Practitioner.qualification, Practitioner.qualification.extension, Practitioner.qualification.modifierExtension, Practitioner.qualification.identifier, Practitioner.qualification.identifier:ahpraregistrationnumber, Practitioner.qualification.identifier:peakbodyregistrationnumber, Practitioner.qualification.code, Practitioner.qualification.code.extension, Practitioner.qualification.code.coding, Practitioner.qualification.code.text, Practitioner.qualification.period, Practitioner.qualification.issuer, Practitioner.communication All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error Practitioner.extension, Practitioner.extension:genderIdentity, Practitioner.extension:individualPronouns, Practitioner.extension:recordedSexOrGender, Practitioner.modifierExtension, Practitioner.name.extension, Practitioner.name:officialName.extension, Practitioner.name:preferredName.extension, Practitioner.telecom:personalPhoneNumber.extension, Practitioner.telecom:personalEmailAddress.extension, Practitioner.qualification.extension, Practitioner.qualification.modifierExtension, Practitioner.qualification.code.extension Must have either extensions or value[x], not both extension.exists() != value.exists()
inv-01-qualification-registration-required error Practitioner At least one professional registration must be present in qualifications (Ahpra or other professional registration) qualification.identifier.where(type.coding.where(code = 'AHPRA').exists()).exists() or qualification.identifier.where(type.coding.where(code = 'PRN').exists()).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: 9 elements(7 nested mandatory elements)
Must-Support: 13 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.

  • genderIdentity (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 FHIR R4

The following standard FHIR R4 search parameters are recommended for practitioner identifier and name searches:

  • identifier (Practitioner.identifier)
  • Search practitioners by HPI-I. The AU Core guidance favours using the system value (token) form.
  • Example: GET /Practitioner?identifier=http://ns.electronichealth.net.au/id/hi/hpii/1.0|8003619900015717

Note: This standard search parameter does NOT work on identifiers nested within the qualification data element. Therefore, a custom search parameter identifier-r5 is described below.

  • name (Practitioner.name)
  • Search by practitioner's name across all name types (official, preferred, etc.)
  • Supports :contains modifier for partial matching
  • Example (single name component): GET /Practitioner?name:contains=Dr
  • Example (single name component): GET /Practitioner?name:contains=Helen
  • Example (multiple components with AND logic): GET /Practitioner?name:contains=John&name:contains=Helen
  • Note: For combined queries, repeat the parameter for AND logic. Comma-separated values create OR logic (e.g., name:contains=John,Helen finds "John" OR "Helen")

Search parameters defined in this IG

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

  • identifier-r5 (Practitioner.identifier Practitioner.qualification.identifier)
  • Search a Practitioner record by any identifier, including HPI-I and Professional Registration Number (PRN), mimicks R5-style identifier searching. Supports both Practitioner.identifier and Practitioner.qualification.identifier.
  • This search parameter supports the following query use cases where:
  • A peakbodyregistrationnumber OR ahpraregistrationnumber is supplied with or without an accompanying system. Note that when a system is not supplied this may result in duplicate value matches, originating from multiple different issuing organizations.
  • Examples:
    • HPI-I (with system): GET /Practitioner?identifier-r5=http://ns.electronichealth.net.au/id/hi/hpii/1.0|8003619900015717
    • HPI-I (without system): GET /Practitioner?identifier-r5=8003619900015717
    • Ahpra (with system): GET /Practitioner?identifier-r5=http://hl7.org.au/id/ahpra-registration-number|MED0000932945
    • Ahpra (without system): GET /Practitioner?identifier-r5=MED0000932945
    • PRN (with system): GET /Practitioner?identifier-r5=http://example.org/fhir/identifier/acha-prn|PRN-123456
    • PRN (without system): GET /Practitioner?identifier-r5=PRN-123456
  • rsg (Practitioner.extension(recordedSexorGender).valueCodeableConcept)
  • Search by a practitioner's recorded sex or gender.
  • Important: This searches on the 'value' element within the individual-recordedSexOrGender extension (typically administrative gender codes). However, to fully understand the meaning, in the returned results the complete extension structure inclusive of metadata elements: type, source, sourceDocument, effectivePeriod should be appraised as a whole.
  • Example: GET /Practitioner?rsg=http://hl7.org/fhir/administrative-gender|male

  • regprof (Practitioner.qualification.code.text) Supports both :contains & :exact modifiers.
  • Search by a practitioner's registered profession using string values.
  • Supports :contains modifier for partial matching, :exact modifier for precise matching.
  • 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 SHOULD token
identifier (R4) SHOULD token Use this parameter to search identifiers such as HPI-I using system|value or value or system format. **note** This does NOT work on identifiers nested within the qualification data element.
identifier-r5 SHOULD token Search by any identifier, i.e AHPRA, HPI-I or PRN. R5-style identifier search across Practitioner.identifier and Practitioner.qualification.identifier
name SHOULD string Search by practitioner's name across all name types (official, preferred, etc.). Standard FHIR R4 search parameter.
regprof SHOULD string Search by registered profession using string values in `qualification.code.text`.
identifier-r5+rsg SHOULD token+token
identifier-r5+genderIdentity SHOULD token+token
name+rsg SHOULD string+token
name+genderIdentity SHOULD string+token
identifier-r5+rsg SHOULD token+token Search by any identifier and recorded sex or gender
identifier-r5+genderIdentity SHOULD token+token Search by any identifier and gender identity
regprof+rsg SHOULD string+token Search by registered profession and recorded sex/gender
regprof+genderIdentity SHOULD string+token Search by registered 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?_revinclude=PractitionerRole:practitioner

This query returns all Practitioner resources and their associated roles and positions.