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

Resource Profile: HC Organization

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

Usage:Jurisdiction: Australia

Copyright/Legal: Copyright © 2025 Australian Digital Health Agency - All rights reserved. This content is licensed under a Creative Commons Attribution 4.0 International License. See https://creativecommons.org/licenses/by/4.0/

This profile defines a provider directory entry for an organisation.

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

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

Extensions

The following extensions are introduced in this profile:

The following identifiers both profile the aforementioned classification extension within their definitions:

  • HC HPI-O on Organization.identifier[hpio]
  • HC HSP-O on Organization.identifier[hspo]

Usage notes

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

Identifiers

The HC Organization profile supports the identifier slices introduced in AU Core (as indicated by the must support flag). At least one authoritative identifier (for example HPI-O, HSP-O, ABN, or other recognised identifier) SHOULD be provided to enable consistent and correct identification of the healthcare organisation and to support validation against the HI Service where applicable. Organisation identifiers can also be used as search parameters to locate organisation records.

A HC Organization resource may also contain additional business partner identifiers. These are considered secondary to the HPI-O/HSP-O and MAY not match identifier slices defined in AU Core Organization.

Note: HI Service is expected to assign only one national identifier type to an Organization (either HPI‑O or HSP‑O), not both. As such, a constraint at a severity of warning has been applied to this resource to advise implementers as such.

Organisation classification

The extension:hc-org-classification is used to indicate whether an organisation's HPI-O and HSP-O record in the HI Service is classified as a 'seed' or 'network' type. Note HSP-O can only be of 'seed' type.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Organization C 0..* AUCoreOrganization Australian Organisation Directory Entry
Constraints: org-1, hc-organization-identifier-required, hc-organization-no-both-hpio-hspo
... 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 SOΣC 1..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
Slice: Unordered, Open by pattern:system
Constraints: au-core-org-01
.... identifier:hpio SOΣC 0..1 HCHPIOIdentifier HPI-O identifier
.... identifier:abn SOΣC 1..1 AUAustralianBusinessNumber Identifies this organization across multiple systems
.... identifier:hspo SOΣC 0..1 HCHSPOIdentifier HSP-O identifier
Constraints: au-core-org-01
.... identifier:acn SOΣC 0..1 AUAustralianCompanyNumber Identifies this organization across multiple systems
Constraints: au-core-org-01
... type SOΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
... name SOΣC 1..1 string Name of Directory Entry Organisation
... alias S 0..1 string Additional preferred name or alias, as provided by the organisation.
... telecom SOC 0..* ContactPoint A contact detail for the organization
Constraints: org-3
.... system SOΣC 0..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
.... value SOΣ 0..1 string The actual contact point details
.... use ?!Σ 0..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
... Slices for address SOC 1..2 Address, AustralianAddress Addresses of Directory Entry Organisation
Slice: Unordered, Open by value:type
Constraints: org-2
.... address:physical SOC 1..1 Address, AustralianAddress Registered Business Address of the organisation, as recorded against the HPI-O record.
Constraints: org-2
..... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
..... type Σ 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Required Pattern: physical
.... address:postal SOC 0..1 Address, AustralianAddress A chosen or preferred mailing address, that is different from the registered address.
Constraints: org-2
..... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
..... type Σ 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Required Pattern: postal
... partOf SΣ 0..1 Reference(HC Organization) The organization of which this organization forms a part

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Organization.type Base preferred Healthcare Organisation Role Type . ⏿1.0.1 tx.ontoserver.csiro.au
Organization.telecom.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Organization.telecom.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Organization.address:physical.​use Base required AddressUse 📍4.0.1 FHIR Std.
Organization.address:physical.​type Base required AddressType 📍4.0.1 FHIR Std.
Organization.address:postal.​use Base required AddressUse 📍4.0.1 FHIR Std.
Organization.address:postal.​type Base required AddressType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
au-core-org-01 error Organization.identifier, Organization.identifier:hspo, Organization.identifier:acn A National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O type.coding.where(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'))
dom-2 error Organization If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Organization 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 Organization 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 Organization If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Organization A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
hc-organization-identifier-required error Organization Either an HPI-O (hpio) or an HSP-O (hspo) identifier must be present on the Organization. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() or identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
hc-organization-no-both-hpio-hspo warning Organization Warn if both HPI-O and HSP-O identifiers are present on the same Organization; HI Service is expected to assign only one. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() and identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
org-1 error Organization The organization SHALL at least have a name or an identifier, and possibly more than one (identifier.count() + name.count()) > 0
org-2 error Organization.address, Organization.address:physical, Organization.address:postal An address of an organization can never be of use 'home' where(use = 'home').empty()
org-3 error Organization.telecom The telecom of an organization can never be of use 'home' where(use = 'home').empty()

This structure is derived from AUCoreOrganization

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Organization C 0..* AUCoreOrganization Australian Organisation Directory Entry
Constraints: hc-organization-identifier-required, hc-organization-no-both-hpio-hspo
... identifier 1..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
... Slices for identifier Content/Rules for all slices
.... identifier:hpio 0..1 HCHPIOIdentifier HPI-O identifier
.... identifier:abn 1..1 AUAustralianBusinessNumber Identifies this organization across multiple systems
.... identifier:hspo S 0..1 HCHSPOIdentifier HSP-O identifier
.... identifier:acn S 0..1 AUAustralianCompanyNumber Identifies this organization across multiple systems
... active S 1..1 boolean Whether the organization's record is still in active use
... alias S 0..1 string Additional preferred name or alias, as provided by the organisation.
... Slices for address 1..2 Address, AustralianAddress Addresses of Directory Entry Organisation
Slice: Unordered, Open by value:type
.... address:physical 1..1 Address, AustralianAddress Registered Business Address of the organisation, as recorded against the HPI-O record.
..... type 1..1 code postal | physical | both
Required Pattern: physical
.... address:postal 0..1 Address, AustralianAddress A chosen or preferred mailing address, that is different from the registered address.
..... type 1..1 code postal | physical | both
Required Pattern: postal
... partOf S 0..1 Reference(HC Organization) The organization of which this organization forms a part

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
hc-organization-identifier-required error Organization Either an HPI-O (hpio) or an HSP-O (hspo) identifier must be present on the Organization. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() or identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
hc-organization-no-both-hpio-hspo warning Organization Warn if both HPI-O and HSP-O identifiers are present on the same Organization; HI Service is expected to assign only one. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() and identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Organization C 0..* AUCoreOrganization Australian Organisation Directory Entry
Constraints: org-1, hc-organization-identifier-required, hc-organization-no-both-hpio-hspo
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier SOΣC 1..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
Slice: Unordered, Open by pattern:system
Constraints: au-core-org-01
.... identifier:hpio SOΣC 0..1 HCHPIOIdentifier HPI-O identifier
.... identifier:abn SOΣC 1..1 AUAustralianBusinessNumber Identifies this organization across multiple systems
.... identifier:hspo SOΣC 0..1 HCHSPOIdentifier HSP-O identifier
Constraints: au-core-org-01
.... identifier:acn SOΣC 0..1 AUAustralianCompanyNumber Identifies this organization across multiple systems
Constraints: au-core-org-01
... active ?!SΣ 1..1 boolean Whether the organization's record is still in active use
... type SOΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
... name SOΣC 1..1 string Name of Directory Entry Organisation
... alias S 0..1 string Additional preferred name or alias, as provided by the organisation.
... telecom SOC 0..* ContactPoint A contact detail for the organization
Constraints: org-3
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... system SOΣC 0..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
.... value SOΣ 0..1 string The actual contact point details
.... use ?!Σ 0..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
.... rank Σ 0..1 positiveInt Specify preferred order of use (1 = highest)
.... period Σ 0..1 Period Time period when the contact point was/is in use
... Slices for address SOC 1..2 Address, AustralianAddress Addresses of Directory Entry Organisation
Slice: Unordered, Open by value:type
Constraints: org-2
.... address:physical SOC 1..1 Address, AustralianAddress Registered Business Address of the organisation, as recorded against the HPI-O record.
Constraints: org-2
..... 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 home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
..... type Σ 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Required Pattern: physical
..... text Σ 0..1 string Text representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
..... line Σ 0..* string Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
..... city Σ 0..1 string Name of city, town etc.
Example General: Erewhon
..... district Σ 0..1 string District name (aka county)
Example General: Madison
..... state Σ 0..1 string Sub-unit of country (abbreviations ok)
..... postalCode Σ 0..1 string Postal code for area
Example General: 9132
..... country Σ 0..1 string Country (e.g. can be ISO 3166 2 or 3 letter code)
..... period Σ 0..1 Period Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
.... address:postal SOC 0..1 Address, AustralianAddress A chosen or preferred mailing address, that is different from the registered address.
Constraints: org-2
..... 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 home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
..... type Σ 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Required Pattern: postal
..... text Σ 0..1 string Text representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
..... line Σ 0..* string Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
..... city Σ 0..1 string Name of city, town etc.
Example General: Erewhon
..... district Σ 0..1 string District name (aka county)
Example General: Madison
..... state Σ 0..1 string Sub-unit of country (abbreviations ok)
..... postalCode Σ 0..1 string Postal code for area
Example General: 9132
..... country Σ 0..1 string Country (e.g. can be ISO 3166 2 or 3 letter code)
..... period Σ 0..1 Period Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... partOf SΣ 0..1 Reference(HC 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

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Organization.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Organization.type Base preferred Healthcare Organisation Role Type . ⏿1.0.1 tx.ontoserver.csiro.au
Organization.telecom.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Organization.telecom.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Organization.address:physical.​use Base required AddressUse 📍4.0.1 FHIR Std.
Organization.address:physical.​type Base required AddressType 📍4.0.1 FHIR Std.
Organization.address:postal.​use Base required AddressUse 📍4.0.1 FHIR Std.
Organization.address:postal.​type Base required AddressType 📍4.0.1 FHIR Std.
Organization.contact.​purpose Base extensible Contact Purpose 📦6.0.0-ballot AU Base Implementation Guide v6.0

Constraints

Id Grade Path(s) Description Expression
au-core-org-01 error Organization.identifier, Organization.identifier:hspo, Organization.identifier:acn A National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O type.coding.where(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'))
dom-2 error Organization If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Organization 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 Organization 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 Organization If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Organization A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
hc-organization-identifier-required error Organization Either an HPI-O (hpio) or an HSP-O (hspo) identifier must be present on the Organization. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() or identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
hc-organization-no-both-hpio-hspo warning Organization Warn if both HPI-O and HSP-O identifiers are present on the same Organization; HI Service is expected to assign only one. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() and identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
org-1 error Organization The organization SHALL at least have a name or an identifier, and possibly more than one (identifier.count() + name.count()) > 0
org-2 error Organization.address, Organization.address:physical, Organization.address:postal An address of an organization can never be of use 'home' where(use = 'home').empty()
org-3 error Organization.telecom The telecom of an organization can never be of use 'home' where(use = 'home').empty()

This structure is derived from AUCoreOrganization

Summary

Mandatory: 6 elements(1 nested mandatory element)
Must-Support: 5 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 Organization.address

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Organization C 0..* AUCoreOrganization Australian Organisation Directory Entry
Constraints: org-1, hc-organization-identifier-required, hc-organization-no-both-hpio-hspo
... 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 SOΣC 1..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
Slice: Unordered, Open by pattern:system
Constraints: au-core-org-01
.... identifier:hpio SOΣC 0..1 HCHPIOIdentifier HPI-O identifier
.... identifier:abn SOΣC 1..1 AUAustralianBusinessNumber Identifies this organization across multiple systems
.... identifier:hspo SOΣC 0..1 HCHSPOIdentifier HSP-O identifier
Constraints: au-core-org-01
.... identifier:acn SOΣC 0..1 AUAustralianCompanyNumber Identifies this organization across multiple systems
Constraints: au-core-org-01
... type SOΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
... name SOΣC 1..1 string Name of Directory Entry Organisation
... alias S 0..1 string Additional preferred name or alias, as provided by the organisation.
... telecom SOC 0..* ContactPoint A contact detail for the organization
Constraints: org-3
.... system SOΣC 0..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
.... value SOΣ 0..1 string The actual contact point details
.... use ?!Σ 0..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
... Slices for address SOC 1..2 Address, AustralianAddress Addresses of Directory Entry Organisation
Slice: Unordered, Open by value:type
Constraints: org-2
.... address:physical SOC 1..1 Address, AustralianAddress Registered Business Address of the organisation, as recorded against the HPI-O record.
Constraints: org-2
..... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
..... type Σ 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Required Pattern: physical
.... address:postal SOC 0..1 Address, AustralianAddress A chosen or preferred mailing address, that is different from the registered address.
Constraints: org-2
..... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
..... type Σ 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Required Pattern: postal
... partOf SΣ 0..1 Reference(HC Organization) The organization of which this organization forms a part

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Organization.type Base preferred Healthcare Organisation Role Type . ⏿1.0.1 tx.ontoserver.csiro.au
Organization.telecom.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Organization.telecom.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Organization.address:physical.​use Base required AddressUse 📍4.0.1 FHIR Std.
Organization.address:physical.​type Base required AddressType 📍4.0.1 FHIR Std.
Organization.address:postal.​use Base required AddressUse 📍4.0.1 FHIR Std.
Organization.address:postal.​type Base required AddressType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
au-core-org-01 error Organization.identifier, Organization.identifier:hspo, Organization.identifier:acn A National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O type.coding.where(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'))
dom-2 error Organization If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Organization 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 Organization 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 Organization If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Organization A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
hc-organization-identifier-required error Organization Either an HPI-O (hpio) or an HSP-O (hspo) identifier must be present on the Organization. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() or identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
hc-organization-no-both-hpio-hspo warning Organization Warn if both HPI-O and HSP-O identifiers are present on the same Organization; HI Service is expected to assign only one. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() and identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
org-1 error Organization The organization SHALL at least have a name or an identifier, and possibly more than one (identifier.count() + name.count()) > 0
org-2 error Organization.address, Organization.address:physical, Organization.address:postal An address of an organization can never be of use 'home' where(use = 'home').empty()
org-3 error Organization.telecom The telecom of an organization can never be of use 'home' where(use = 'home').empty()

Differential View

This structure is derived from AUCoreOrganization

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Organization C 0..* AUCoreOrganization Australian Organisation Directory Entry
Constraints: hc-organization-identifier-required, hc-organization-no-both-hpio-hspo
... identifier 1..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
... Slices for identifier Content/Rules for all slices
.... identifier:hpio 0..1 HCHPIOIdentifier HPI-O identifier
.... identifier:abn 1..1 AUAustralianBusinessNumber Identifies this organization across multiple systems
.... identifier:hspo S 0..1 HCHSPOIdentifier HSP-O identifier
.... identifier:acn S 0..1 AUAustralianCompanyNumber Identifies this organization across multiple systems
... active S 1..1 boolean Whether the organization's record is still in active use
... alias S 0..1 string Additional preferred name or alias, as provided by the organisation.
... Slices for address 1..2 Address, AustralianAddress Addresses of Directory Entry Organisation
Slice: Unordered, Open by value:type
.... address:physical 1..1 Address, AustralianAddress Registered Business Address of the organisation, as recorded against the HPI-O record.
..... type 1..1 code postal | physical | both
Required Pattern: physical
.... address:postal 0..1 Address, AustralianAddress A chosen or preferred mailing address, that is different from the registered address.
..... type 1..1 code postal | physical | both
Required Pattern: postal
... partOf S 0..1 Reference(HC Organization) The organization of which this organization forms a part

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
hc-organization-identifier-required error Organization Either an HPI-O (hpio) or an HSP-O (hspo) identifier must be present on the Organization. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() or identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
hc-organization-no-both-hpio-hspo warning Organization Warn if both HPI-O and HSP-O identifiers are present on the same Organization; HI Service is expected to assign only one. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() and identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Organization C 0..* AUCoreOrganization Australian Organisation Directory Entry
Constraints: org-1, hc-organization-identifier-required, hc-organization-no-both-hpio-hspo
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier SOΣC 1..* Identifier, AUHPIO, AUPAIOIdentifier, AUCSPRegistrationNumber, AUAustralianBusinessNumber, AUAustralianCompanyNumber, AUAustralianRegisteredBodyNumber, AUNATAAccreditationNumber, AUPharmacyApprovalNumber Identifies this organization across multiple systems
Slice: Unordered, Open by pattern:system
Constraints: au-core-org-01
.... identifier:hpio SOΣC 0..1 HCHPIOIdentifier HPI-O identifier
.... identifier:abn SOΣC 1..1 AUAustralianBusinessNumber Identifies this organization across multiple systems
.... identifier:hspo SOΣC 0..1 HCHSPOIdentifier HSP-O identifier
Constraints: au-core-org-01
.... identifier:acn SOΣC 0..1 AUAustralianCompanyNumber Identifies this organization across multiple systems
Constraints: au-core-org-01
... active ?!SΣ 1..1 boolean Whether the organization's record is still in active use
... type SOΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
... name SOΣC 1..1 string Name of Directory Entry Organisation
... alias S 0..1 string Additional preferred name or alias, as provided by the organisation.
... telecom SOC 0..* ContactPoint A contact detail for the organization
Constraints: org-3
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... system SOΣC 0..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.
.... value SOΣ 0..1 string The actual contact point details
.... use ?!Σ 0..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.
.... rank Σ 0..1 positiveInt Specify preferred order of use (1 = highest)
.... period Σ 0..1 Period Time period when the contact point was/is in use
... Slices for address SOC 1..2 Address, AustralianAddress Addresses of Directory Entry Organisation
Slice: Unordered, Open by value:type
Constraints: org-2
.... address:physical SOC 1..1 Address, AustralianAddress Registered Business Address of the organisation, as recorded against the HPI-O record.
Constraints: org-2
..... 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 home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
..... type Σ 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Required Pattern: physical
..... text Σ 0..1 string Text representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
..... line Σ 0..* string Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
..... city Σ 0..1 string Name of city, town etc.
Example General: Erewhon
..... district Σ 0..1 string District name (aka county)
Example General: Madison
..... state Σ 0..1 string Sub-unit of country (abbreviations ok)
..... postalCode Σ 0..1 string Postal code for area
Example General: 9132
..... country Σ 0..1 string Country (e.g. can be ISO 3166 2 or 3 letter code)
..... period Σ 0..1 Period Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
.... address:postal SOC 0..1 Address, AustralianAddress A chosen or preferred mailing address, that is different from the registered address.
Constraints: org-2
..... 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 home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
..... type Σ 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Required Pattern: postal
..... text Σ 0..1 string Text representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
..... line Σ 0..* string Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
..... city Σ 0..1 string Name of city, town etc.
Example General: Erewhon
..... district Σ 0..1 string District name (aka county)
Example General: Madison
..... state Σ 0..1 string Sub-unit of country (abbreviations ok)
..... postalCode Σ 0..1 string Postal code for area
Example General: 9132
..... country Σ 0..1 string Country (e.g. can be ISO 3166 2 or 3 letter code)
..... period Σ 0..1 Period Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... partOf SΣ 0..1 Reference(HC 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

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Organization.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Organization.type Base preferred Healthcare Organisation Role Type . ⏿1.0.1 tx.ontoserver.csiro.au
Organization.telecom.​system Base required ContactPointSystem 📍4.0.1 FHIR Std.
Organization.telecom.​use Base required ContactPointUse 📍4.0.1 FHIR Std.
Organization.address:physical.​use Base required AddressUse 📍4.0.1 FHIR Std.
Organization.address:physical.​type Base required AddressType 📍4.0.1 FHIR Std.
Organization.address:postal.​use Base required AddressUse 📍4.0.1 FHIR Std.
Organization.address:postal.​type Base required AddressType 📍4.0.1 FHIR Std.
Organization.contact.​purpose Base extensible Contact Purpose 📦6.0.0-ballot AU Base Implementation Guide v6.0

Constraints

Id Grade Path(s) Description Expression
au-core-org-01 error Organization.identifier, Organization.identifier:hspo, Organization.identifier:acn A National Organisation Identifier (type=NOI) shall be an HPI-O or PAI-O type.coding.where(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'))
dom-2 error Organization If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Organization 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 Organization 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 Organization If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Organization A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
hc-organization-identifier-required error Organization Either an HPI-O (hpio) or an HSP-O (hspo) identifier must be present on the Organization. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() or identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
hc-organization-no-both-hpio-hspo warning Organization Warn if both HPI-O and HSP-O identifiers are present on the same Organization; HI Service is expected to assign only one. identifier.where(system='http://ns.electronichealth.net.au/id/hi/hpio/1.0').exists() and identifier.where(system='http://ns.electronichealth.net.au/id/hi/hspo/1.0').exists()
org-1 error Organization The organization SHALL at least have a name or an identifier, and possibly more than one (identifier.count() + name.count()) > 0
org-2 error Organization.address, Organization.address:physical, Organization.address:postal An address of an organization can never be of use 'home' where(use = 'home').empty()
org-3 error Organization.telecom The telecom of an organization can never be of use 'home' where(use = 'home').empty()

This structure is derived from AUCoreOrganization

Summary

Mandatory: 6 elements(1 nested mandatory element)
Must-Support: 5 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 Organization.address

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Search parameters for HC Organization

This IG defines no new SearchParameters for the Organization resource; it expects implementers to support common Organization parameters from both AU Core and R4.

Search parameters defined within AU Core

How these identifier searches can be used is described in AU Core documentation. AU Core recommends using the standard FHIR identifier search parameter (token, system|value) for organization identifiers. Examples:

  • ABN: GET /Organization?identifier=http://hl7.org.au/id/abn|12345678912
  • ACN: GET /Organization?identifier=http://hl7.org.au/id/acn|123456789
  • HPI-O: GET /Organization?identifier=http://ns.electronichealth.net.au/id/hi/hpio/1.0|8003626566707032
  • HSP-O: GET /Organization?identifier=http://ns.electronichealth.net.au/id/hi/hspo/1.0|8003640001234569

Search parameters defined within FHIR R4

The following parameters are inherited from R4 and are commonly useful; implementers SHOULD support them as indicated.

  • name (string)
  • Standard R4 parameter that searches Organization.name and Organization.alias (partial matches supported).
  • Example: GET /Organization?name=Example%20Aged

  • type (token)
  • Standard R4 parameter that searches Organization.type.coding using token semantics (system code).
  • Example (code-only): Organization?type=http://snomed.info/sct|257652008
Parameter(s) Conformance Type(s) Requirements (when used alone or in combination)
_id SHALL token
HPI-O SHALL token The reader SHOULD support search using the HPI-O identifier as defined in the profile. The health connect provider directory SHOULD support search using the using the HPI-O identifier as defined in the profile</code>
HSP-O SHALL token The reader SHOULD support search using the HSP-O identifier as defined in the profile. The health connect provider directory SHOULD support search using the using the HSP-O identifier as defined in the profile</code>
ABN SHOULD token The reader SHOULD support search using the ABN identifier as defined in the profile. The health connect provider directory SHOULD support search using the using the ABN identifier as defined in the profile</code>
ACN SHOULD token Use the standard `identifier` token form. Example: ?identifier=http://hl7.org.au/id/acn|123456789
name (R4) SHOULD string
type (R4) SHOULD token
HPI-O + type SHOULD token + token

Search include parameters

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

  • _include=Organization:partOf - Include parent organizations referenced by the partOf element

Search reverse include parameters

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

  • _revinclude=Location:organization - Include Location resources that reference this Organization through their managingOrganization element
  • _revinclude=Provenance:target - Include Provenance resources that track changes to this Organization

Example usage

GET /Organization/123?_revinclude=Location:organization&_revinclude=HealthcareService:organization

This query returns the Organization resource along with all associated Locations and HealthcareServices.