Magentus Practice Management FHIR Implementation Guide
1.2.16 - ci-build

Magentus Practice Management FHIR Implementation Guide - Local Development build (v1.2.16) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

## Resource Profile: Genie Practitioner

Official URL: http://fhir.geniesolutions.io/StructureDefinition/gs-practitioner | Version: 1.2.16
Draft as of 2024-08-15 | Computable Name: GSPractitioner

Genie Practitioner core profile

Usage:

- Use this Resource Profile: EBookings Theatre List
- Refer to this Resource Profile: EBookings ChargeItem, EBookings ServiceRequest, EBookings Theatre List, Genie ChargeItem Base and Genie PractitionerRole
- Examples for this Resource Profile: Practitioner/75179ab5-684b-405e-a50c-a81359804d91, Practitioner/7d66ccbc-8185-4c6f-a0ae-257b65ef675c and Practitioner/ReferralRequesterPractitioner

### Formal Views of Profile Content

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

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

This structure is derived from AUCorePractitioner

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Practitioner |  |  | AUCorePractitioner |
id | S | 0..1 | id | Logical id of this artifact
Slices for identifier |  |  |  | Content/Rules for all slices
identifier:localPractitionerIdentifier |  | 0..1 | GSPractitionerLocalIdentifier | An identifier intended for computation
active | S | 1..1 | boolean | Whether this practitioner's record is in active use
Slices for name |  | 1..* | HumanName | The name(s) associated with the practitioner Slice: Unordered, Closed by value:use
name:official | S | 1..1 | HumanName | Provider's official name
use |  | 1..1 | code | usual | official | temp | nickname | anonymous | old | maiden Fixed Value: official
family |  | 1..1 | string | Family name (often called 'Surname')
given |  | 1..* | string | Given names (not always 'first'). Includes middle names
prefix |  | 0..1 | string | Title
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Practitioner |  | 0..* | AUCorePractitioner | A person with a formal responsibility in the provisioning of services
id | S Σ | 0..1 | id | Logical id of this artifact
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
Slices for identifier | S | 0..* | Identifier, AUHPII, AUPBSPrescriberNumber, AUCareAgencyEmployeeIdentifier, AUAhpraRegistrationNumber | An identifier intended for computation Slice: Unordered, Open by pattern:type
identifier:hpii | S C | 0..1 | AUHPII | Healthcare Provider Identifier – Individual (HPI-I) inv-hpii-0: HPI-I shall be 16 digits inv-hpii-1: HPI-I prefix shall be 800361 inv-hpii-2: HPI-I shall pass the Luhn algorithm check
identifier:localPractitionerIdentifier | S | 0..1 | GSPractitionerLocalIdentifier | An identifier intended for computation
active | S Σ | 1..1 | boolean | Whether this practitioner's record is in active use
Slices for name | S Σ C | 1..* | HumanName | The name(s) associated with the practitioner Slice: Unordered, Closed by value:use au-core-prac-01: At least text or family name shall be present
name:official | S Σ C | 1..1 | HumanName | Provider's official name au-core-prac-01: At least text or family name shall be present
use | ?!Σ | 1..1 | code | usual | official | temp | nickname | anonymous | old | maiden Binding: NameUse (required): The use of a human name. Fixed Value: official
family | Σ | 1..1 | string | Family name (often called 'Surname')
given | Σ | 1..* | 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..1 | string | Title This repeating element order: Prefixes appear in the correct order for presenting the name
telecom | S Σ | 0..* | ContactPoint | A contact detail for the practitioner (that apply to all roles)
address | S | 0..* | Address, AustralianAddress | An address expressed using postal conventions (as opposed to GPS or other location definition formats)
qualification | S C | 0..* | BackboneElement | Certification, licenses, or training pertaining to the provision of care inv-pra-0: A qualification shall only have Ahpra Profession details if the code is Ahpra Profession inv-pra-1: A qualification shall only have Ahpra Registration details if the code is Ahpra Registration
Slices for extension |  |  |  | Content/Rules for all slices
ahpraProfession-details | C | 0..1 | (Complex) | Ahpra Profession Details URL: http://hl7.org.au/fhir/StructureDefinition/ahpraprofession-details
ahpraRegistration-details | C | 0..1 | (Complex) | Ahpra Registration Details URL: http://hl7.org.au/fhir/StructureDefinition/ahpraregistration-details
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
identifier | S | 0..* | Identifier, AUAhpraRegistrationNumber | An identifier intended for computation
code | S C | 1..1 | CodeableConcept | Coded representation of the qualification Binding: hl7VS-degreeLicenseCertificate - AU Extended (preferred)
period | S | 0..1 | Period | Period during which the qualification is valid
issuer | S | 0..1 | Reference(Organization) | Organization that regulates and issues the qualification
communication | S | 0..* | CodeableConcept | A language the practitioner can use in patient communication Binding: Common Languages in Australia (extensible)
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Practitioner.name:official.use | required | Fixed Value: official `http://hl7.org/fhir/ValueSet/name-use|4.0.1` from the FHIR Standard
Practitioner.qualification.code | preferred | Hl7VSDegreeLicenseCertificateAUExtended `http://terminology.hl7.org.au/ValueSet/v2-0360-extended`
Practitioner.communication | extensible | CommonLanguagesInAustralia `https://healthterminologies.gov.au/fhir/ValueSet/common-languages-australia-2` from https://tx.ontoserver.csiro.au/fhir

#### Constraints

Id | Grade | Path(s) | Details | Requirements
au-core-prac-01 | error | Practitioner.name, Practitioner.name:official | At least text or family name shall be present : text.exists() or family.exists() |
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() |
inv-hpii-0 | error | Practitioner.identifier:hpii | HPI-I shall be 16 digits : value.matches('^([0-9]{16})$') |
inv-hpii-1 | error | Practitioner.identifier:hpii | HPI-I prefix shall be 800361 : value.startsWith('800361') |
inv-hpii-2 | error | Practitioner.identifier:hpii | HPI-I shall pass the Luhn algorithm check : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger())+(select(value.substring(10,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(11,1).toInteger())+(select(value.substring(12,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(13,1).toInteger())+(select(value.substring(14,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(15,1).toInteger()))mod 10=0) |
inv-pra-0 | error | Practitioner.qualification | A qualification shall only have Ahpra Profession details if the code is Ahpra Profession : extension('http://hl7.org.au/fhir/StructureDefinition/ahpraprofession-details').exists() implies code.coding.where(system='http://terminology.hl7.org.au/CodeSystem/v2-0360' and code='AUAHPRAProfession').exists() |
inv-pra-1 | error | Practitioner.qualification | A qualification shall only have Ahpra Registration details if the code is Ahpra Registration : extension('http://hl7.org.au/fhir/StructureDefinition/ahpraregistration-details').exists() implies code.coding.where(system='http://terminology.hl7.org.au/CodeSystem/v2-0360' and code='AUAHPRARegistration').exists() |

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Practitioner |  | 0..* | AUCorePractitioner | A person with a formal responsibility in the provisioning of services
id | S Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
Slices for identifier | S | 0..* | Identifier, AUHPII, AUPBSPrescriberNumber, AUCareAgencyEmployeeIdentifier, AUAhpraRegistrationNumber | An identifier intended for computation Slice: Unordered, Open by pattern:type
identifier:hpii | S C | 0..1 | AUHPII | Healthcare Provider Identifier – Individual (HPI-I) inv-hpii-0: HPI-I shall be 16 digits inv-hpii-1: HPI-I prefix shall be 800361 inv-hpii-2: HPI-I shall pass the Luhn algorithm check
identifier:localPractitionerIdentifier | S | 0..1 | GSPractitionerLocalIdentifier | An identifier intended for computation
active | S Σ | 1..1 | boolean | Whether this practitioner's record is in active use
Slices for name | S Σ C | 1..* | HumanName | The name(s) associated with the practitioner Slice: Unordered, Closed by value:use au-core-prac-01: At least text or family name shall be present
name:official | S Σ C | 1..1 | HumanName | Provider's official name au-core-prac-01: At least text or family name shall be present
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 | Σ | 1..1 | string | Family name (often called 'Surname')
given | Σ | 1..* | 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..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
telecom | S Σ | 0..* | ContactPoint | A contact detail for the practitioner (that apply to all roles)
address | S | 0..* | Address, AustralianAddress | An address expressed using postal conventions (as opposed to GPS or other location definition formats)
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 C | 0..* | BackboneElement | Certification, licenses, or training pertaining to the provision of care inv-pra-0: A qualification shall only have Ahpra Profession details if the code is Ahpra Profession inv-pra-1: A qualification shall only have Ahpra Registration details if the code is Ahpra Registration
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
ahpraProfession-details | C | 0..1 | (Complex) | Ahpra Profession Details URL: http://hl7.org.au/fhir/StructureDefinition/ahpraprofession-details
ahpraRegistration-details | C | 0..1 | (Complex) | Ahpra Registration Details URL: http://hl7.org.au/fhir/StructureDefinition/ahpraregistration-details
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
identifier | S | 0..* | Identifier, AUAhpraRegistrationNumber | An identifier intended for computation
code | S C | 1..1 | CodeableConcept | Coded representation of the qualification Binding: hl7VS-degreeLicenseCertificate - AU Extended (preferred)
period | S | 0..1 | Period | Period during which the qualification is valid
issuer | S | 0..1 | Reference(Organization) | Organization that regulates and issues the qualification
communication | S | 0..* | CodeableConcept | A language the practitioner can use in patient communication Binding: Common Languages in Australia (extensible)
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Practitioner.language | preferred | CommonLanguages
Additional Bindings | Purpose
AllLanguages | Max Binding
`http://hl7.org/fhir/ValueSet/languages` from the FHIR Standard
Practitioner.name:official.use | required | Fixed Value: official `http://hl7.org/fhir/ValueSet/name-use|4.0.1` from the FHIR Standard
Practitioner.gender | required | AdministrativeGender `http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1` from the FHIR Standard
Practitioner.qualification.code | preferred | Hl7VSDegreeLicenseCertificateAUExtended `http://terminology.hl7.org.au/ValueSet/v2-0360-extended`
Practitioner.communication | extensible | CommonLanguagesInAustralia `https://healthterminologies.gov.au/fhir/ValueSet/common-languages-australia-2` from https://tx.ontoserver.csiro.au/fhir

#### Constraints

Id | Grade | Path(s) | Details | Requirements
au-core-prac-01 | error | Practitioner.name, Practitioner.name:official | At least text or family name shall be present : text.exists() or family.exists() |
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() |
inv-hpii-0 | error | Practitioner.identifier:hpii | HPI-I shall be 16 digits : value.matches('^([0-9]{16})$') |
inv-hpii-1 | error | Practitioner.identifier:hpii | HPI-I prefix shall be 800361 : value.startsWith('800361') |
inv-hpii-2 | error | Practitioner.identifier:hpii | HPI-I shall pass the Luhn algorithm check : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger())+(select(value.substring(10,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(11,1).toInteger())+(select(value.substring(12,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(13,1).toInteger())+(select(value.substring(14,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(15,1).toInteger()))mod 10=0) |
inv-pra-0 | error | Practitioner.qualification | A qualification shall only have Ahpra Profession details if the code is Ahpra Profession : extension('http://hl7.org.au/fhir/StructureDefinition/ahpraprofession-details').exists() implies code.coding.where(system='http://terminology.hl7.org.au/CodeSystem/v2-0360' and code='AUAHPRAProfession').exists() |
inv-pra-1 | error | Practitioner.qualification | A qualification shall only have Ahpra Registration details if the code is Ahpra Registration : extension('http://hl7.org.au/fhir/StructureDefinition/ahpraregistration-details').exists() implies code.coding.where(system='http://terminology.hl7.org.au/CodeSystem/v2-0360' and code='AUAHPRARegistration').exists() |

This structure is derived from AUCorePractitioner

Summary

Mandatory: 5 elements
Must-Support: 3 elements
Fixed: 1 element

Structures

This structure refers to these other structures:

- Genie Practitioner Local Identifier (http://fhir.geniesolutions.io/StructureDefinition/gs-practitioner-local-identifier)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of Practitioner.name (Closed)

Differential View

This structure is derived from AUCorePractitioner

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Practitioner |  |  | AUCorePractitioner |
id | S | 0..1 | id | Logical id of this artifact
Slices for identifier |  |  |  | Content/Rules for all slices
identifier:localPractitionerIdentifier |  | 0..1 | GSPractitionerLocalIdentifier | An identifier intended for computation
active | S | 1..1 | boolean | Whether this practitioner's record is in active use
Slices for name |  | 1..* | HumanName | The name(s) associated with the practitioner Slice: Unordered, Closed by value:use
name:official | S | 1..1 | HumanName | Provider's official name
use |  | 1..1 | code | usual | official | temp | nickname | anonymous | old | maiden Fixed Value: official
family |  | 1..1 | string | Family name (often called 'Surname')
given |  | 1..* | string | Given names (not always 'first'). Includes middle names
prefix |  | 0..1 | string | Title
Documentation for this format

Key Elements View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Practitioner |  | 0..* | AUCorePractitioner | A person with a formal responsibility in the provisioning of services
id | S Σ | 0..1 | id | Logical id of this artifact
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
Slices for identifier | S | 0..* | Identifier, AUHPII, AUPBSPrescriberNumber, AUCareAgencyEmployeeIdentifier, AUAhpraRegistrationNumber | An identifier intended for computation Slice: Unordered, Open by pattern:type
identifier:hpii | S C | 0..1 | AUHPII | Healthcare Provider Identifier – Individual (HPI-I) inv-hpii-0: HPI-I shall be 16 digits inv-hpii-1: HPI-I prefix shall be 800361 inv-hpii-2: HPI-I shall pass the Luhn algorithm check
identifier:localPractitionerIdentifier | S | 0..1 | GSPractitionerLocalIdentifier | An identifier intended for computation
active | S Σ | 1..1 | boolean | Whether this practitioner's record is in active use
Slices for name | S Σ C | 1..* | HumanName | The name(s) associated with the practitioner Slice: Unordered, Closed by value:use au-core-prac-01: At least text or family name shall be present
name:official | S Σ C | 1..1 | HumanName | Provider's official name au-core-prac-01: At least text or family name shall be present
use | ?!Σ | 1..1 | code | usual | official | temp | nickname | anonymous | old | maiden Binding: NameUse (required): The use of a human name. Fixed Value: official
family | Σ | 1..1 | string | Family name (often called 'Surname')
given | Σ | 1..* | 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..1 | string | Title This repeating element order: Prefixes appear in the correct order for presenting the name
telecom | S Σ | 0..* | ContactPoint | A contact detail for the practitioner (that apply to all roles)
address | S | 0..* | Address, AustralianAddress | An address expressed using postal conventions (as opposed to GPS or other location definition formats)
qualification | S C | 0..* | BackboneElement | Certification, licenses, or training pertaining to the provision of care inv-pra-0: A qualification shall only have Ahpra Profession details if the code is Ahpra Profession inv-pra-1: A qualification shall only have Ahpra Registration details if the code is Ahpra Registration
Slices for extension |  |  |  | Content/Rules for all slices
ahpraProfession-details | C | 0..1 | (Complex) | Ahpra Profession Details URL: http://hl7.org.au/fhir/StructureDefinition/ahpraprofession-details
ahpraRegistration-details | C | 0..1 | (Complex) | Ahpra Registration Details URL: http://hl7.org.au/fhir/StructureDefinition/ahpraregistration-details
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
identifier | S | 0..* | Identifier, AUAhpraRegistrationNumber | An identifier intended for computation
code | S C | 1..1 | CodeableConcept | Coded representation of the qualification Binding: hl7VS-degreeLicenseCertificate - AU Extended (preferred)
period | S | 0..1 | Period | Period during which the qualification is valid
issuer | S | 0..1 | Reference(Organization) | Organization that regulates and issues the qualification
communication | S | 0..* | CodeableConcept | A language the practitioner can use in patient communication Binding: Common Languages in Australia (extensible)
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Practitioner.name:official.use | required | Fixed Value: official `http://hl7.org/fhir/ValueSet/name-use|4.0.1` from the FHIR Standard
Practitioner.qualification.code | preferred | Hl7VSDegreeLicenseCertificateAUExtended `http://terminology.hl7.org.au/ValueSet/v2-0360-extended`
Practitioner.communication | extensible | CommonLanguagesInAustralia `https://healthterminologies.gov.au/fhir/ValueSet/common-languages-australia-2` from https://tx.ontoserver.csiro.au/fhir

#### Constraints

Id | Grade | Path(s) | Details | Requirements
au-core-prac-01 | error | Practitioner.name, Practitioner.name:official | At least text or family name shall be present : text.exists() or family.exists() |
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() |
inv-hpii-0 | error | Practitioner.identifier:hpii | HPI-I shall be 16 digits : value.matches('^([0-9]{16})$') |
inv-hpii-1 | error | Practitioner.identifier:hpii | HPI-I prefix shall be 800361 : value.startsWith('800361') |
inv-hpii-2 | error | Practitioner.identifier:hpii | HPI-I shall pass the Luhn algorithm check : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger())+(select(value.substring(10,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(11,1).toInteger())+(select(value.substring(12,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(13,1).toInteger())+(select(value.substring(14,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(15,1).toInteger()))mod 10=0) |
inv-pra-0 | error | Practitioner.qualification | A qualification shall only have Ahpra Profession details if the code is Ahpra Profession : extension('http://hl7.org.au/fhir/StructureDefinition/ahpraprofession-details').exists() implies code.coding.where(system='http://terminology.hl7.org.au/CodeSystem/v2-0360' and code='AUAHPRAProfession').exists() |
inv-pra-1 | error | Practitioner.qualification | A qualification shall only have Ahpra Registration details if the code is Ahpra Registration : extension('http://hl7.org.au/fhir/StructureDefinition/ahpraregistration-details').exists() implies code.coding.where(system='http://terminology.hl7.org.au/CodeSystem/v2-0360' and code='AUAHPRARegistration').exists() |

Snapshot View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Practitioner |  | 0..* | AUCorePractitioner | A person with a formal responsibility in the provisioning of services
id | S Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
Slices for identifier | S | 0..* | Identifier, AUHPII, AUPBSPrescriberNumber, AUCareAgencyEmployeeIdentifier, AUAhpraRegistrationNumber | An identifier intended for computation Slice: Unordered, Open by pattern:type
identifier:hpii | S C | 0..1 | AUHPII | Healthcare Provider Identifier – Individual (HPI-I) inv-hpii-0: HPI-I shall be 16 digits inv-hpii-1: HPI-I prefix shall be 800361 inv-hpii-2: HPI-I shall pass the Luhn algorithm check
identifier:localPractitionerIdentifier | S | 0..1 | GSPractitionerLocalIdentifier | An identifier intended for computation
active | S Σ | 1..1 | boolean | Whether this practitioner's record is in active use
Slices for name | S Σ C | 1..* | HumanName | The name(s) associated with the practitioner Slice: Unordered, Closed by value:use au-core-prac-01: At least text or family name shall be present
name:official | S Σ C | 1..1 | HumanName | Provider's official name au-core-prac-01: At least text or family name shall be present
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 | Σ | 1..1 | string | Family name (often called 'Surname')
given | Σ | 1..* | 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..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
telecom | S Σ | 0..* | ContactPoint | A contact detail for the practitioner (that apply to all roles)
address | S | 0..* | Address, AustralianAddress | An address expressed using postal conventions (as opposed to GPS or other location definition formats)
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 C | 0..* | BackboneElement | Certification, licenses, or training pertaining to the provision of care inv-pra-0: A qualification shall only have Ahpra Profession details if the code is Ahpra Profession inv-pra-1: A qualification shall only have Ahpra Registration details if the code is Ahpra Registration
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
ahpraProfession-details | C | 0..1 | (Complex) | Ahpra Profession Details URL: http://hl7.org.au/fhir/StructureDefinition/ahpraprofession-details
ahpraRegistration-details | C | 0..1 | (Complex) | Ahpra Registration Details URL: http://hl7.org.au/fhir/StructureDefinition/ahpraregistration-details
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
identifier | S | 0..* | Identifier, AUAhpraRegistrationNumber | An identifier intended for computation
code | S C | 1..1 | CodeableConcept | Coded representation of the qualification Binding: hl7VS-degreeLicenseCertificate - AU Extended (preferred)
period | S | 0..1 | Period | Period during which the qualification is valid
issuer | S | 0..1 | Reference(Organization) | Organization that regulates and issues the qualification
communication | S | 0..* | CodeableConcept | A language the practitioner can use in patient communication Binding: Common Languages in Australia (extensible)
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Practitioner.language | preferred | CommonLanguages
Additional Bindings | Purpose
AllLanguages | Max Binding
`http://hl7.org/fhir/ValueSet/languages` from the FHIR Standard
Practitioner.name:official.use | required | Fixed Value: official `http://hl7.org/fhir/ValueSet/name-use|4.0.1` from the FHIR Standard
Practitioner.gender | required | AdministrativeGender `http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1` from the FHIR Standard
Practitioner.qualification.code | preferred | Hl7VSDegreeLicenseCertificateAUExtended `http://terminology.hl7.org.au/ValueSet/v2-0360-extended`
Practitioner.communication | extensible | CommonLanguagesInAustralia `https://healthterminologies.gov.au/fhir/ValueSet/common-languages-australia-2` from https://tx.ontoserver.csiro.au/fhir

#### Constraints

Id | Grade | Path(s) | Details | Requirements
au-core-prac-01 | error | Practitioner.name, Practitioner.name:official | At least text or family name shall be present : text.exists() or family.exists() |
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() |
inv-hpii-0 | error | Practitioner.identifier:hpii | HPI-I shall be 16 digits : value.matches('^([0-9]{16})$') |
inv-hpii-1 | error | Practitioner.identifier:hpii | HPI-I prefix shall be 800361 : value.startsWith('800361') |
inv-hpii-2 | error | Practitioner.identifier:hpii | HPI-I shall pass the Luhn algorithm check : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger())+(select(value.substring(10,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(11,1).toInteger())+(select(value.substring(12,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(13,1).toInteger())+(select(value.substring(14,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(15,1).toInteger()))mod 10=0) |
inv-pra-0 | error | Practitioner.qualification | A qualification shall only have Ahpra Profession details if the code is Ahpra Profession : extension('http://hl7.org.au/fhir/StructureDefinition/ahpraprofession-details').exists() implies code.coding.where(system='http://terminology.hl7.org.au/CodeSystem/v2-0360' and code='AUAHPRAProfession').exists() |
inv-pra-1 | error | Practitioner.qualification | A qualification shall only have Ahpra Registration details if the code is Ahpra Registration : extension('http://hl7.org.au/fhir/StructureDefinition/ahpraregistration-details').exists() implies code.coding.where(system='http://terminology.hl7.org.au/CodeSystem/v2-0360' and code='AUAHPRARegistration').exists() |

This structure is derived from AUCorePractitioner

Summary

Mandatory: 5 elements
Must-Support: 3 elements
Fixed: 1 element

Structures

This structure refers to these other structures:

- Genie Practitioner Local Identifier (http://fhir.geniesolutions.io/StructureDefinition/gs-practitioner-local-identifier)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of Practitioner.name (Closed)

Other representations of profile: CSV, Excel, Schematron