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: Diagnostic Imaging Report Transaction Provider Entry

Official URL: http://fhir.geniesolutions.io/StructureDefinition/gs-imagingreport-entry-provider Version: 1.2.16
Draft as of 2024-08-15 Computable Name: GSImagingReportEntryProvider

Diagnostic Imaging Report Transaction Provider Entry

Usage:

Formal Views of Profile Content

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

This structure is derived from AUCorePractitionerRole

NameFlagsCard.TypeDescription & Constraintsdoco
.. PractitionerRole 0..* AUCorePractitionerRole A person with formal responsibility in a role providing one or more services
... Slices for contained S 1..* Resource Contained, inline Resources
Slice: Unordered, Open by type:$this
.... contained:practitioner S 1..1 AUCorePractitioner A person with a formal responsibility in the provisioning of services
..... name 1..1 HumanName Requester name
...... family 1..1 string Family name (often called 'Surname')
...... given 1..1 string Given names (not always 'first'). Includes middle names
.... contained:organization S 0..1 AUCoreOrganization An organisation in an Australian healthcare context
..... name 1..1 string Requester site name
... Slices for identifier Content/Rules for all slices
.... identifier:employeeNumber 0..1 AUEmployeeNumber Business Identifiers that are specific to a role/location
... practitioner
.... reference 1..1 string Reference to contained Practitioner resource
... organization
.... reference 1..1 string Reference to contained Organization resource

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. PractitionerRole 0..* AUCorePractitionerRole A person with formal responsibility in a role providing one or more services
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for contained S 1..* Resource Contained, inline Resources
Slice: Unordered, Open by type:$this
.... contained:practitioner S 1..1 AUCorePractitioner A person with a formal responsibility in the provisioning of services
..... 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 SC 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
..... name SΣC 1..1 HumanName Requester name
au-core-prac-01: At least text or family name shall be present
...... use ?!Σ 0..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

...... family Σ 1..1 string Family name (often called 'Surname')
...... given Σ 1..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
..... 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 SC 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 SC 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)
.... contained:organization S 0..1 AUCoreOrganization An organisation in an Australian healthcare context
..... 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 SC 0..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
Slice: Unordered, Open by pattern:system
au-core-org-01: A National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O
..... Slices for identifier Content/Rules for all slices
...... identifier:hpio SC 0..1 AUHPIO Healthcare Provider Identifier – Organisation (HPI-O)
inv-hpio-0: HPI-O shall be 16 digits
inv-hpio-1: HPI-O prefix shall be 800362
inv-hpio-2: HPI-O shall pass the Luhn algorithm check
..... Slices for identifier Content/Rules for all slices
...... identifier:abn SC 0..* AUAustralianBusinessNumber Australian Business Number (ABN)
inv-abn-0: ABN shall be 11 digits
..... active ?!Σ 0..1 boolean Whether the organization's record is still in active use
..... type SΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
..... name SΣC 1..1 string Requester site name
..... alias S 0..* string A list of alternate names that the organization is known as, or was known as in the past
..... telecom SC 0..* ContactPoint A contact detail for the organization
org-3: The telecom of an organization can never be of use 'home'
..... address SC 0..* Address, AustralianAddress An address expressed using postal conventions (as opposed to GPS or other location definition formats)
org-2: An address of an organization can never be of use 'home'
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier S 0..* Identifier, AUMedicareProviderNumber, AUNationalProviderIdentifierAtOrganisation, AUEmployeeNumber Business Identifiers that are specific to a role/location
Slice: Unordered, Open by pattern:type
.... identifier:medicareProvider S 0..1 AUMedicareProviderNumber Medicare Provider Number
.... identifier:employeeNumber S 0..1 AUEmployeeNumber Business Identifiers that are specific to a role/location
... practitioner SΣC 1..1 Reference(AU Core Practitioner) Practitioner that is able to provide the defined services for the organization
au-core-prarol-01: At least a reference, identifier or display shall be present
.... reference ΣC 1..1 string Reference to contained Practitioner resource
... organization SΣ 0..1 Reference(AU Core Organization) Organization where the roles are available
.... reference ΣC 1..1 string Reference to contained Organization resource
... code SΣ 0..* CodeableConcept Roles which this practitioner may perform
Binding: Practitioner Role . (preferred)
... specialty SΣ 0..* CodeableConcept Specific specialty of the practitioner
Binding: Clinical Specialty . (preferred)
... location SΣ 0..* Reference(AU Core Location) The location(s) at which this practitioner provides care
... telecom SΣ 0..* ContactPoint Contact details that are specific to the role/location/service

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
PractitionerRole.contained:practitioner.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|4.0.1
from the FHIR Standard
PractitionerRole.contained:practitioner.qualification.codepreferredHl7VSDegreeLicenseCertificateAUExtended
http://terminology.hl7.org.au/ValueSet/v2-0360-extended
PractitionerRole.contained:practitioner.communicationextensibleCommonLanguagesInAustralia .
https://healthterminologies.gov.au/fhir/ValueSet/common-languages-australia-2
PractitionerRole.contained:organization.typepreferredHealthcareOrganisationRoleType .
https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1
PractitionerRole.codepreferredPractitionerRole .
https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1
PractitionerRole.specialtypreferredClinicalSpecialty .
https://healthterminologies.gov.au/fhir/ValueSet/clinical-specialty-1

Constraints

IdGradePath(s)DetailsRequirements
au-core-org-01errorPractitionerRole.contained:organization.identifierA National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O
: where(type.coding.code = 'NOI').exists() implies (system='http://ns.electronichealth.net.au/id/hi/hpio/1.0') or (system='http://ns.electronichealth.net.au/id/pcehr/paio/1.0')
au-core-prac-01errorPractitionerRole.contained:practitioner.nameAt least text or family name shall be present
: text.exists() or family.exists()
au-core-prarol-01errorPractitionerRole.practitionerAt least a reference, identifier or display shall be present
: reference.exists() or identifier.exists() or display.exists()
dom-2errorPractitionerRoleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPractitionerRoleIf 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-4errorPractitionerRoleIf 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-5errorPractitionerRoleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePractitionerRoleA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-abn-0errorPractitionerRole.contained:organization.identifier:abnABN shall be 11 digits
: value.matches('^([0-9]{11})$')
inv-hpio-0errorPractitionerRole.contained:organization.identifier:hpioHPI-O shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpii-0errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-I shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpio-1errorPractitionerRole.contained:organization.identifier:hpioHPI-O prefix shall be 800362
: value.startsWith('800362')
inv-hpii-1errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-I prefix shall be 800361
: value.startsWith('800361')
inv-hpio-2errorPractitionerRole.contained:organization.identifier:hpioHPI-O 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-hpii-2errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-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-0errorPractitionerRole.contained:practitioner.qualificationA 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-1errorPractitionerRole.contained:practitioner.qualificationA 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()
org-2errorPractitionerRole.contained:organization.addressAn address of an organization can never be of use 'home'
: where(use = 'home').empty()
org-3errorPractitionerRole.contained:organization.telecomThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()
NameFlagsCard.TypeDescription & Constraintsdoco
.. PractitionerRole 0..* AUCorePractitionerRole A person with formal responsibility in a role providing one or more services
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... Slices for contained S 1..* Resource Contained, inline Resources
Slice: Unordered, Open by type:$this
.... contained:practitioner S 1..1 AUCorePractitioner A person with a formal responsibility in the provisioning of services
..... id Σ 0..1 id Logical id of this artifact
..... meta Σ 0..1 Meta Metadata about the resource
..... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
..... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
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 SC 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
..... active Σ 0..1 boolean Whether this practitioner's record is in active use
..... name SΣC 1..1 HumanName Requester 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 ?!Σ 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 Σ 1..1 string Family name (often called 'Surname')
...... given Σ 1..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..* 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
..... 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 SC 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 SC 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)
.... contained:organization S 0..1 AUCoreOrganization An organisation in an Australian healthcare context
..... id Σ 0..1 id Logical id of this artifact
..... meta Σ 0..1 Meta Metadata about the resource
..... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
..... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
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 SC 0..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
Slice: Unordered, Open by pattern:system
au-core-org-01: A National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O
..... Slices for identifier Content/Rules for all slices
...... identifier:hpio SC 0..1 AUHPIO Healthcare Provider Identifier – Organisation (HPI-O)
inv-hpio-0: HPI-O shall be 16 digits
inv-hpio-1: HPI-O prefix shall be 800362
inv-hpio-2: HPI-O shall pass the Luhn algorithm check
..... Slices for identifier Content/Rules for all slices
...... identifier:abn SC 0..* AUAustralianBusinessNumber Australian Business Number (ABN)
inv-abn-0: ABN shall be 11 digits
..... active ?!Σ 0..1 boolean Whether the organization's record is still in active use
..... type SΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
..... name SΣC 1..1 string Requester site name
..... alias S 0..* string A list of alternate names that the organization is known as, or was known as in the past
..... telecom SC 0..* ContactPoint A contact detail for the organization
org-3: The telecom of an organization can never be of use 'home'
..... address SC 0..* Address, AustralianAddress An address expressed using postal conventions (as opposed to GPS or other location definition formats)
org-2: An address of an organization can never be of use 'home'
..... partOf Σ 0..1 Reference(Organization) The organization of which this organization forms a part
..... contact 0..* BackboneElement Contact for the organization for a certain purpose
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
...... purpose 0..1 CodeableConcept The type of contact
Binding: Contact Purpose (extensible)
...... name 0..1 HumanName A name associated with the contact
...... telecom 0..* ContactPoint Contact details (telephone, email, etc.) for a contact
...... address 0..1 Address Visiting or postal addresses for the contact
..... endpoint 0..* Reference(Endpoint) Technical endpoints providing access to services operated for the organization
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier S 0..* Identifier, AUMedicareProviderNumber, AUNationalProviderIdentifierAtOrganisation, AUEmployeeNumber Business Identifiers that are specific to a role/location
Slice: Unordered, Open by pattern:type
.... identifier:medicareProvider S 0..1 AUMedicareProviderNumber Medicare Provider Number
.... identifier:employeeNumber S 0..1 AUEmployeeNumber Business Identifiers that are specific to a role/location
... active Σ 0..1 boolean Whether this practitioner role record is in active use
... period Σ 0..1 Period The period during which the practitioner is authorized to perform in these role(s)
... practitioner SΣC 1..1 Reference(AU Core Practitioner) Practitioner that is able to provide the defined services for the organization
au-core-prarol-01: At least a reference, identifier or display 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
.... reference ΣC 1..1 string Reference to contained Practitioner resource
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... organization SΣ 0..1 Reference(AU Core Organization) Organization where the roles are available
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 1..1 string Reference to contained Organization resource
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... code SΣ 0..* CodeableConcept Roles which this practitioner may perform
Binding: Practitioner Role . (preferred)
... specialty SΣ 0..* CodeableConcept Specific specialty of the practitioner
Binding: Clinical Specialty . (preferred)
... location SΣ 0..* Reference(AU Core Location) The location(s) at which this practitioner provides care
... healthcareService 0..* Reference(HealthcareService) The list of healthcare services that this worker provides for this role's Organization/Location(s)
... telecom SΣ 0..* ContactPoint Contact details that are specific to the role/location/service
... availableTime 0..* BackboneElement Times the Service Site is available
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... daysOfWeek 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required): The days of the week.


.... allDay 0..1 boolean Always available? e.g. 24 hour service
.... availableStartTime 0..1 time Opening time of day (ignored if allDay = true)
..... id 0..1 string xml:id (or equivalent in JSON)
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... timeZone 0..1 CodeableConcept AU time zone
URL: http://hl7.org.au/fhir/StructureDefinition/au-timezone
Binding: AU Time Zone (required)
..... value 0..1 time Primitive value for time
.... availableEndTime 0..1 time Closing time of day (ignored if allDay = true)
..... id 0..1 string xml:id (or equivalent in JSON)
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... timeZone 0..1 CodeableConcept AU time zone
URL: http://hl7.org.au/fhir/StructureDefinition/au-timezone
Binding: AU Time Zone (required)
..... value 0..1 time Primitive value for time
... notAvailable 0..* BackboneElement Not available during this time due to provided reason
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... description 1..1 string Reason presented to the user explaining why time not available
.... during 0..1 Period Service not available from this date
... availabilityExceptions 0..1 string Description of availability exceptions
... endpoint 0..* Reference(Endpoint) Technical endpoints providing access to services operated for the practitioner with this role

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
PractitionerRole.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
PractitionerRole.contained:practitioner.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
PractitionerRole.contained:practitioner.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|4.0.1
from the FHIR Standard
PractitionerRole.contained:practitioner.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
PractitionerRole.contained:practitioner.qualification.codepreferredHl7VSDegreeLicenseCertificateAUExtended
http://terminology.hl7.org.au/ValueSet/v2-0360-extended
PractitionerRole.contained:practitioner.communicationextensibleCommonLanguagesInAustralia .
https://healthterminologies.gov.au/fhir/ValueSet/common-languages-australia-2
PractitionerRole.contained:organization.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
PractitionerRole.contained:organization.typepreferredHealthcareOrganisationRoleType .
https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1
PractitionerRole.contained:organization.contact.purposeextensibleContactPurpose
http://terminology.hl7.org.au/ValueSet/contact-purpose
PractitionerRole.practitioner.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
PractitionerRole.organization.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
PractitionerRole.codepreferredPractitionerRole .
https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1
PractitionerRole.specialtypreferredClinicalSpecialty .
https://healthterminologies.gov.au/fhir/ValueSet/clinical-specialty-1
PractitionerRole.availableTime.daysOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
au-core-org-01errorPractitionerRole.contained:organization.identifierA National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O
: where(type.coding.code = 'NOI').exists() implies (system='http://ns.electronichealth.net.au/id/hi/hpio/1.0') or (system='http://ns.electronichealth.net.au/id/pcehr/paio/1.0')
au-core-prac-01errorPractitionerRole.contained:practitioner.nameAt least text or family name shall be present
: text.exists() or family.exists()
au-core-prarol-01errorPractitionerRole.practitionerAt least a reference, identifier or display shall be present
: reference.exists() or identifier.exists() or display.exists()
dom-2errorPractitionerRoleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPractitionerRoleIf 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-4errorPractitionerRoleIf 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-5errorPractitionerRoleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePractitionerRoleA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-abn-0errorPractitionerRole.contained:organization.identifier:abnABN shall be 11 digits
: value.matches('^([0-9]{11})$')
inv-hpio-0errorPractitionerRole.contained:organization.identifier:hpioHPI-O shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpii-0errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-I shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpio-1errorPractitionerRole.contained:organization.identifier:hpioHPI-O prefix shall be 800362
: value.startsWith('800362')
inv-hpii-1errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-I prefix shall be 800361
: value.startsWith('800361')
inv-hpio-2errorPractitionerRole.contained:organization.identifier:hpioHPI-O 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-hpii-2errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-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-0errorPractitionerRole.contained:practitioner.qualificationA 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-1errorPractitionerRole.contained:practitioner.qualificationA 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()
org-2errorPractitionerRole.contained:organization.addressAn address of an organization can never be of use 'home'
: where(use = 'home').empty()
org-3errorPractitionerRole.contained:organization.telecomThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()

This structure is derived from AUCorePractitionerRole

Summary

Mandatory: 5 elements(1 nested mandatory element)
Must-Support: 3 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 PractitionerRole.contained

Differential View

This structure is derived from AUCorePractitionerRole

NameFlagsCard.TypeDescription & Constraintsdoco
.. PractitionerRole 0..* AUCorePractitionerRole A person with formal responsibility in a role providing one or more services
... Slices for contained S 1..* Resource Contained, inline Resources
Slice: Unordered, Open by type:$this
.... contained:practitioner S 1..1 AUCorePractitioner A person with a formal responsibility in the provisioning of services
..... name 1..1 HumanName Requester name
...... family 1..1 string Family name (often called 'Surname')
...... given 1..1 string Given names (not always 'first'). Includes middle names
.... contained:organization S 0..1 AUCoreOrganization An organisation in an Australian healthcare context
..... name 1..1 string Requester site name
... Slices for identifier Content/Rules for all slices
.... identifier:employeeNumber 0..1 AUEmployeeNumber Business Identifiers that are specific to a role/location
... practitioner
.... reference 1..1 string Reference to contained Practitioner resource
... organization
.... reference 1..1 string Reference to contained Organization resource

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. PractitionerRole 0..* AUCorePractitionerRole A person with formal responsibility in a role providing one or more services
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for contained S 1..* Resource Contained, inline Resources
Slice: Unordered, Open by type:$this
.... contained:practitioner S 1..1 AUCorePractitioner A person with a formal responsibility in the provisioning of services
..... 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 SC 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
..... name SΣC 1..1 HumanName Requester name
au-core-prac-01: At least text or family name shall be present
...... use ?!Σ 0..1 code usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

...... family Σ 1..1 string Family name (often called 'Surname')
...... given Σ 1..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
..... 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 SC 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 SC 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)
.... contained:organization S 0..1 AUCoreOrganization An organisation in an Australian healthcare context
..... 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 SC 0..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
Slice: Unordered, Open by pattern:system
au-core-org-01: A National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O
..... Slices for identifier Content/Rules for all slices
...... identifier:hpio SC 0..1 AUHPIO Healthcare Provider Identifier – Organisation (HPI-O)
inv-hpio-0: HPI-O shall be 16 digits
inv-hpio-1: HPI-O prefix shall be 800362
inv-hpio-2: HPI-O shall pass the Luhn algorithm check
..... Slices for identifier Content/Rules for all slices
...... identifier:abn SC 0..* AUAustralianBusinessNumber Australian Business Number (ABN)
inv-abn-0: ABN shall be 11 digits
..... active ?!Σ 0..1 boolean Whether the organization's record is still in active use
..... type SΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
..... name SΣC 1..1 string Requester site name
..... alias S 0..* string A list of alternate names that the organization is known as, or was known as in the past
..... telecom SC 0..* ContactPoint A contact detail for the organization
org-3: The telecom of an organization can never be of use 'home'
..... address SC 0..* Address, AustralianAddress An address expressed using postal conventions (as opposed to GPS or other location definition formats)
org-2: An address of an organization can never be of use 'home'
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier S 0..* Identifier, AUMedicareProviderNumber, AUNationalProviderIdentifierAtOrganisation, AUEmployeeNumber Business Identifiers that are specific to a role/location
Slice: Unordered, Open by pattern:type
.... identifier:medicareProvider S 0..1 AUMedicareProviderNumber Medicare Provider Number
.... identifier:employeeNumber S 0..1 AUEmployeeNumber Business Identifiers that are specific to a role/location
... practitioner SΣC 1..1 Reference(AU Core Practitioner) Practitioner that is able to provide the defined services for the organization
au-core-prarol-01: At least a reference, identifier or display shall be present
.... reference ΣC 1..1 string Reference to contained Practitioner resource
... organization SΣ 0..1 Reference(AU Core Organization) Organization where the roles are available
.... reference ΣC 1..1 string Reference to contained Organization resource
... code SΣ 0..* CodeableConcept Roles which this practitioner may perform
Binding: Practitioner Role . (preferred)
... specialty SΣ 0..* CodeableConcept Specific specialty of the practitioner
Binding: Clinical Specialty . (preferred)
... location SΣ 0..* Reference(AU Core Location) The location(s) at which this practitioner provides care
... telecom SΣ 0..* ContactPoint Contact details that are specific to the role/location/service

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
PractitionerRole.contained:practitioner.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|4.0.1
from the FHIR Standard
PractitionerRole.contained:practitioner.qualification.codepreferredHl7VSDegreeLicenseCertificateAUExtended
http://terminology.hl7.org.au/ValueSet/v2-0360-extended
PractitionerRole.contained:practitioner.communicationextensibleCommonLanguagesInAustralia .
https://healthterminologies.gov.au/fhir/ValueSet/common-languages-australia-2
PractitionerRole.contained:organization.typepreferredHealthcareOrganisationRoleType .
https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1
PractitionerRole.codepreferredPractitionerRole .
https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1
PractitionerRole.specialtypreferredClinicalSpecialty .
https://healthterminologies.gov.au/fhir/ValueSet/clinical-specialty-1

Constraints

IdGradePath(s)DetailsRequirements
au-core-org-01errorPractitionerRole.contained:organization.identifierA National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O
: where(type.coding.code = 'NOI').exists() implies (system='http://ns.electronichealth.net.au/id/hi/hpio/1.0') or (system='http://ns.electronichealth.net.au/id/pcehr/paio/1.0')
au-core-prac-01errorPractitionerRole.contained:practitioner.nameAt least text or family name shall be present
: text.exists() or family.exists()
au-core-prarol-01errorPractitionerRole.practitionerAt least a reference, identifier or display shall be present
: reference.exists() or identifier.exists() or display.exists()
dom-2errorPractitionerRoleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPractitionerRoleIf 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-4errorPractitionerRoleIf 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-5errorPractitionerRoleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePractitionerRoleA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-abn-0errorPractitionerRole.contained:organization.identifier:abnABN shall be 11 digits
: value.matches('^([0-9]{11})$')
inv-hpio-0errorPractitionerRole.contained:organization.identifier:hpioHPI-O shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpii-0errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-I shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpio-1errorPractitionerRole.contained:organization.identifier:hpioHPI-O prefix shall be 800362
: value.startsWith('800362')
inv-hpii-1errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-I prefix shall be 800361
: value.startsWith('800361')
inv-hpio-2errorPractitionerRole.contained:organization.identifier:hpioHPI-O 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-hpii-2errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-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-0errorPractitionerRole.contained:practitioner.qualificationA 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-1errorPractitionerRole.contained:practitioner.qualificationA 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()
org-2errorPractitionerRole.contained:organization.addressAn address of an organization can never be of use 'home'
: where(use = 'home').empty()
org-3errorPractitionerRole.contained:organization.telecomThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. PractitionerRole 0..* AUCorePractitionerRole A person with formal responsibility in a role providing one or more services
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... Slices for contained S 1..* Resource Contained, inline Resources
Slice: Unordered, Open by type:$this
.... contained:practitioner S 1..1 AUCorePractitioner A person with a formal responsibility in the provisioning of services
..... id Σ 0..1 id Logical id of this artifact
..... meta Σ 0..1 Meta Metadata about the resource
..... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
..... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
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 SC 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
..... active Σ 0..1 boolean Whether this practitioner's record is in active use
..... name SΣC 1..1 HumanName Requester 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 ?!Σ 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 Σ 1..1 string Family name (often called 'Surname')
...... given Σ 1..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..* 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
..... 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 SC 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 SC 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)
.... contained:organization S 0..1 AUCoreOrganization An organisation in an Australian healthcare context
..... id Σ 0..1 id Logical id of this artifact
..... meta Σ 0..1 Meta Metadata about the resource
..... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
..... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
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 SC 0..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
Slice: Unordered, Open by pattern:system
au-core-org-01: A National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O
..... Slices for identifier Content/Rules for all slices
...... identifier:hpio SC 0..1 AUHPIO Healthcare Provider Identifier – Organisation (HPI-O)
inv-hpio-0: HPI-O shall be 16 digits
inv-hpio-1: HPI-O prefix shall be 800362
inv-hpio-2: HPI-O shall pass the Luhn algorithm check
..... Slices for identifier Content/Rules for all slices
...... identifier:abn SC 0..* AUAustralianBusinessNumber Australian Business Number (ABN)
inv-abn-0: ABN shall be 11 digits
..... active ?!Σ 0..1 boolean Whether the organization's record is still in active use
..... type SΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
..... name SΣC 1..1 string Requester site name
..... alias S 0..* string A list of alternate names that the organization is known as, or was known as in the past
..... telecom SC 0..* ContactPoint A contact detail for the organization
org-3: The telecom of an organization can never be of use 'home'
..... address SC 0..* Address, AustralianAddress An address expressed using postal conventions (as opposed to GPS or other location definition formats)
org-2: An address of an organization can never be of use 'home'
..... partOf Σ 0..1 Reference(Organization) The organization of which this organization forms a part
..... contact 0..* BackboneElement Contact for the organization for a certain purpose
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
...... purpose 0..1 CodeableConcept The type of contact
Binding: Contact Purpose (extensible)
...... name 0..1 HumanName A name associated with the contact
...... telecom 0..* ContactPoint Contact details (telephone, email, etc.) for a contact
...... address 0..1 Address Visiting or postal addresses for the contact
..... endpoint 0..* Reference(Endpoint) Technical endpoints providing access to services operated for the organization
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier S 0..* Identifier, AUMedicareProviderNumber, AUNationalProviderIdentifierAtOrganisation, AUEmployeeNumber Business Identifiers that are specific to a role/location
Slice: Unordered, Open by pattern:type
.... identifier:medicareProvider S 0..1 AUMedicareProviderNumber Medicare Provider Number
.... identifier:employeeNumber S 0..1 AUEmployeeNumber Business Identifiers that are specific to a role/location
... active Σ 0..1 boolean Whether this practitioner role record is in active use
... period Σ 0..1 Period The period during which the practitioner is authorized to perform in these role(s)
... practitioner SΣC 1..1 Reference(AU Core Practitioner) Practitioner that is able to provide the defined services for the organization
au-core-prarol-01: At least a reference, identifier or display 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
.... reference ΣC 1..1 string Reference to contained Practitioner resource
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... organization SΣ 0..1 Reference(AU Core Organization) Organization where the roles are available
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 1..1 string Reference to contained Organization resource
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... code SΣ 0..* CodeableConcept Roles which this practitioner may perform
Binding: Practitioner Role . (preferred)
... specialty SΣ 0..* CodeableConcept Specific specialty of the practitioner
Binding: Clinical Specialty . (preferred)
... location SΣ 0..* Reference(AU Core Location) The location(s) at which this practitioner provides care
... healthcareService 0..* Reference(HealthcareService) The list of healthcare services that this worker provides for this role's Organization/Location(s)
... telecom SΣ 0..* ContactPoint Contact details that are specific to the role/location/service
... availableTime 0..* BackboneElement Times the Service Site is available
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... daysOfWeek 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required): The days of the week.


.... allDay 0..1 boolean Always available? e.g. 24 hour service
.... availableStartTime 0..1 time Opening time of day (ignored if allDay = true)
..... id 0..1 string xml:id (or equivalent in JSON)
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... timeZone 0..1 CodeableConcept AU time zone
URL: http://hl7.org.au/fhir/StructureDefinition/au-timezone
Binding: AU Time Zone (required)
..... value 0..1 time Primitive value for time
.... availableEndTime 0..1 time Closing time of day (ignored if allDay = true)
..... id 0..1 string xml:id (or equivalent in JSON)
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... timeZone 0..1 CodeableConcept AU time zone
URL: http://hl7.org.au/fhir/StructureDefinition/au-timezone
Binding: AU Time Zone (required)
..... value 0..1 time Primitive value for time
... notAvailable 0..* BackboneElement Not available during this time due to provided reason
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... description 1..1 string Reason presented to the user explaining why time not available
.... during 0..1 Period Service not available from this date
... availabilityExceptions 0..1 string Description of availability exceptions
... endpoint 0..* Reference(Endpoint) Technical endpoints providing access to services operated for the practitioner with this role

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
PractitionerRole.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
PractitionerRole.contained:practitioner.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
PractitionerRole.contained:practitioner.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|4.0.1
from the FHIR Standard
PractitionerRole.contained:practitioner.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
PractitionerRole.contained:practitioner.qualification.codepreferredHl7VSDegreeLicenseCertificateAUExtended
http://terminology.hl7.org.au/ValueSet/v2-0360-extended
PractitionerRole.contained:practitioner.communicationextensibleCommonLanguagesInAustralia .
https://healthterminologies.gov.au/fhir/ValueSet/common-languages-australia-2
PractitionerRole.contained:organization.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
PractitionerRole.contained:organization.typepreferredHealthcareOrganisationRoleType .
https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1
PractitionerRole.contained:organization.contact.purposeextensibleContactPurpose
http://terminology.hl7.org.au/ValueSet/contact-purpose
PractitionerRole.practitioner.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
PractitionerRole.organization.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
PractitionerRole.codepreferredPractitionerRole .
https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1
PractitionerRole.specialtypreferredClinicalSpecialty .
https://healthterminologies.gov.au/fhir/ValueSet/clinical-specialty-1
PractitionerRole.availableTime.daysOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
au-core-org-01errorPractitionerRole.contained:organization.identifierA National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O
: where(type.coding.code = 'NOI').exists() implies (system='http://ns.electronichealth.net.au/id/hi/hpio/1.0') or (system='http://ns.electronichealth.net.au/id/pcehr/paio/1.0')
au-core-prac-01errorPractitionerRole.contained:practitioner.nameAt least text or family name shall be present
: text.exists() or family.exists()
au-core-prarol-01errorPractitionerRole.practitionerAt least a reference, identifier or display shall be present
: reference.exists() or identifier.exists() or display.exists()
dom-2errorPractitionerRoleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPractitionerRoleIf 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-4errorPractitionerRoleIf 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-5errorPractitionerRoleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePractitionerRoleA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-abn-0errorPractitionerRole.contained:organization.identifier:abnABN shall be 11 digits
: value.matches('^([0-9]{11})$')
inv-hpio-0errorPractitionerRole.contained:organization.identifier:hpioHPI-O shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpii-0errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-I shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpio-1errorPractitionerRole.contained:organization.identifier:hpioHPI-O prefix shall be 800362
: value.startsWith('800362')
inv-hpii-1errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-I prefix shall be 800361
: value.startsWith('800361')
inv-hpio-2errorPractitionerRole.contained:organization.identifier:hpioHPI-O 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-hpii-2errorPractitionerRole.contained:practitioner.identifier:hpiiHPI-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-0errorPractitionerRole.contained:practitioner.qualificationA 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-1errorPractitionerRole.contained:practitioner.qualificationA 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()
org-2errorPractitionerRole.contained:organization.addressAn address of an organization can never be of use 'home'
: where(use = 'home').empty()
org-3errorPractitionerRole.contained:organization.telecomThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()

This structure is derived from AUCorePractitionerRole

Summary

Mandatory: 5 elements(1 nested mandatory element)
Must-Support: 3 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 PractitionerRole.contained

 

Other representations of profile: CSV, Excel, Schematron