AU Core Implementation Guide
1.0.0-ci-build - CI Build
AU Core Implementation Guide, published by HL7 Australia. This guide is not an authorized publication; it is the continuous build for version 1.0.0-ci-build built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7au/au-fhir-core/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org.au/fhir/core/StructureDefinition/au-core-organization | Version: 1.0.0-ci-build | |||
Standards status: Draft | Maturity Level: 1 | Computable Name: AUCoreOrganization | ||
Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License. HL7 Australia© 2022+; Licensed Under Creative Commons No Rights Reserved. |
This profile sets minimum expectations for a Organization resource to record, search, and fetch information about an organisation. It is based on the AU Base Organization profile and identifies the additional mandatory core elements, extensions, vocabularies and value sets that SHALL be present in the Organization when conforming to this profile. It provides the floor for standards development for specific uses cases in an Australian context.
See Comparison with other national and international IGs for a comparison between AU Core profiles and profiles in other implementation guides.
The following are supported usage scenarios for this profile:
Usage:
Changes since version 1.0.0-ballot:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from AUBaseOrganisation
Name | Flags | Card. | Type | Description & Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Organization | 0..* | AUBaseOrganisation | An organisation in an Australian healthcare context | |||||||
Slices for identifier | SOC | 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
| ||||||
identifier:hpio | SO | 0..1 | AUHPIO | Healthcare Provider Identifier – Organisation (HPI-O)
| ||||||
identifier:abn | SO | 0..* | AUAustralianBusinessNumber | Australian Business Number (ABN)
| ||||||
type | SO | 0..* | CodeableConcept | Kind of organization
| ||||||
name | SO | 1..1 | string | Name used for the organization
| ||||||
telecom | SO | 0..* | ContactPoint | A contact detail for the organization
| ||||||
address | SO | 0..* | Address, AustralianAddress | An address expressed using postal conventions (as opposed to GPS or other location definition formats)
| ||||||
Documentation for this format |
Id | Grade | Path(s) | Details | Requirements |
au-core-org-01 | error | Organization.identifier | 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')) |
Name | Flags | Card. | Type | Description & Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Organization | C | 0..* | AUBaseOrganisation | An organisation in an Australian healthcare context org-1: The organization SHALL at least have a name or an identifier, and possibly more than one | ||||||
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 | SOC | 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
| ||||||
identifier:hpio | SOC | 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
| ||||||
identifier:abn | SOC | 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 | SOΣ | 0..* | CodeableConcept | Kind of organization Binding: Healthcare Organisation Role Type (preferred)
| ||||||
name | SOΣC | 1..1 | string | Name used for the organization
| ||||||
telecom | SOC | 0..* | ContactPoint | A contact detail for the organization org-3: The telecom of an organization can never be of use 'home'
| ||||||
address | SOC | 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'
| ||||||
Documentation for this format |
Path | Conformance | ValueSet | URI |
Organization.type | preferred | HealthcareOrganisationRoleType https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1 |
Id | Grade | Path(s) | Details | Requirements |
au-core-org-01 | error | Organization.identifier | 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() | |
inv-abn-0 | error | Organization.identifier:abn | ABN shall be 11 digits : value.matches('^([0-9]{11})$') | |
inv-hpio-0 | error | Organization.identifier:hpio | HPI-O shall be 16 digits : value.matches('^([0-9]{16})$') | |
inv-hpio-1 | error | Organization.identifier:hpio | HPI-O prefix shall be 800362 : value.startsWith('800362') | |
inv-hpio-2 | error | Organization.identifier:hpio | HPI-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) | |
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 | 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() |
Name | Flags | Card. | Type | Description & Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Organization | C | 0..* | AUBaseOrganisation | An organisation in an Australian healthcare context org-1: The organization SHALL at least have a name or an identifier, and possibly more than one | ||||||
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.
| |||||||
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 | SOC | 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
| ||||||
identifier:hpio | SOC | 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
| ||||||
identifier:abn | SOC | 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 | SOΣ | 0..* | CodeableConcept | Kind of organization Binding: Healthcare Organisation Role Type (preferred)
| ||||||
name | SOΣC | 1..1 | string | Name used for the organization
| ||||||
alias | 0..* | string | A list of alternate names that the organization is known as, or was known as in the past | |||||||
telecom | SOC | 0..* | ContactPoint | A contact detail for the organization org-3: The telecom of an organization can never be of use 'home'
| ||||||
address | SOC | 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 | |||||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Organization.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Organization.type | preferred | HealthcareOrganisationRoleType https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1 | ||||
Organization.contact.purpose | extensible | ContactPurposehttp://terminology.hl7.org.au/ValueSet/contact-purpose |
Id | Grade | Path(s) | Details | Requirements |
au-core-org-01 | error | Organization.identifier | 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() | |
inv-abn-0 | error | Organization.identifier:abn | ABN shall be 11 digits : value.matches('^([0-9]{11})$') | |
inv-hpio-0 | error | Organization.identifier:hpio | HPI-O shall be 16 digits : value.matches('^([0-9]{16})$') | |
inv-hpio-1 | error | Organization.identifier:hpio | HPI-O prefix shall be 800362 : value.startsWith('800362') | |
inv-hpio-2 | error | Organization.identifier:hpio | HPI-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) | |
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 | 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 AUBaseOrganisation
Summary
Mandatory: 1 element
Must-Support: 7 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Maturity: 1
Differential View
This structure is derived from AUBaseOrganisation
Name | Flags | Card. | Type | Description & Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Organization | 0..* | AUBaseOrganisation | An organisation in an Australian healthcare context | |||||||
Slices for identifier | SOC | 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
| ||||||
identifier:hpio | SO | 0..1 | AUHPIO | Healthcare Provider Identifier – Organisation (HPI-O)
| ||||||
identifier:abn | SO | 0..* | AUAustralianBusinessNumber | Australian Business Number (ABN)
| ||||||
type | SO | 0..* | CodeableConcept | Kind of organization
| ||||||
name | SO | 1..1 | string | Name used for the organization
| ||||||
telecom | SO | 0..* | ContactPoint | A contact detail for the organization
| ||||||
address | SO | 0..* | Address, AustralianAddress | An address expressed using postal conventions (as opposed to GPS or other location definition formats)
| ||||||
Documentation for this format |
Id | Grade | Path(s) | Details | Requirements |
au-core-org-01 | error | Organization.identifier | 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')) |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Organization | C | 0..* | AUBaseOrganisation | An organisation in an Australian healthcare context org-1: The organization SHALL at least have a name or an identifier, and possibly more than one | ||||||
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 | SOC | 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
| ||||||
identifier:hpio | SOC | 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
| ||||||
identifier:abn | SOC | 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 | SOΣ | 0..* | CodeableConcept | Kind of organization Binding: Healthcare Organisation Role Type (preferred)
| ||||||
name | SOΣC | 1..1 | string | Name used for the organization
| ||||||
telecom | SOC | 0..* | ContactPoint | A contact detail for the organization org-3: The telecom of an organization can never be of use 'home'
| ||||||
address | SOC | 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'
| ||||||
Documentation for this format |
Path | Conformance | ValueSet | URI |
Organization.type | preferred | HealthcareOrganisationRoleType https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1 |
Id | Grade | Path(s) | Details | Requirements |
au-core-org-01 | error | Organization.identifier | 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() | |
inv-abn-0 | error | Organization.identifier:abn | ABN shall be 11 digits : value.matches('^([0-9]{11})$') | |
inv-hpio-0 | error | Organization.identifier:hpio | HPI-O shall be 16 digits : value.matches('^([0-9]{16})$') | |
inv-hpio-1 | error | Organization.identifier:hpio | HPI-O prefix shall be 800362 : value.startsWith('800362') | |
inv-hpio-2 | error | Organization.identifier:hpio | HPI-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) | |
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 | 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() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Organization | C | 0..* | AUBaseOrganisation | An organisation in an Australian healthcare context org-1: The organization SHALL at least have a name or an identifier, and possibly more than one | ||||||
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.
| |||||||
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 | SOC | 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
| ||||||
identifier:hpio | SOC | 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
| ||||||
identifier:abn | SOC | 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 | SOΣ | 0..* | CodeableConcept | Kind of organization Binding: Healthcare Organisation Role Type (preferred)
| ||||||
name | SOΣC | 1..1 | string | Name used for the organization
| ||||||
alias | 0..* | string | A list of alternate names that the organization is known as, or was known as in the past | |||||||
telecom | SOC | 0..* | ContactPoint | A contact detail for the organization org-3: The telecom of an organization can never be of use 'home'
| ||||||
address | SOC | 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 | |||||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Organization.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Organization.type | preferred | HealthcareOrganisationRoleType https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1 | ||||
Organization.contact.purpose | extensible | ContactPurposehttp://terminology.hl7.org.au/ValueSet/contact-purpose |
Id | Grade | Path(s) | Details | Requirements |
au-core-org-01 | error | Organization.identifier | 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() | |
inv-abn-0 | error | Organization.identifier:abn | ABN shall be 11 digits : value.matches('^([0-9]{11})$') | |
inv-hpio-0 | error | Organization.identifier:hpio | HPI-O shall be 16 digits : value.matches('^([0-9]{16})$') | |
inv-hpio-1 | error | Organization.identifier:hpio | HPI-O prefix shall be 800362 : value.startsWith('800362') | |
inv-hpio-2 | error | Organization.identifier:hpio | HPI-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) | |
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 | 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 AUBaseOrganisation
Summary
Mandatory: 1 element
Must-Support: 7 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Maturity: 1
Other representations of profile: CSV, Excel, Schematron
Below is an overview of the mandatory and optional search parameters and combined search parameters. See the AU Core CapabilityStatements for a complete list of supported RESTful interactions for this IG.
FHIR search operations are described here and the syntax used to describe AU Core interactions is defined here.
Any search parameter defined in FHIR may be ‘allowed’ by the system unless explicitly marked as “SHALL NOT”. A few items are marked as MAY in this implementation guide to highlight their potential relevance.
Parameter(s) | Conformance | Type(s) | Requirements (when used alone or in combination) |
---|---|---|---|
identifier | SHALL | token |
The requester SHALL provide both the system and code values. The responder SHALL support both. The requester SHOULD support search using HPI-O and ABN identifiers as defined in the profile. The responder SHOULD support search using the using HPI-O and ABN identifiers as defined in the profile. |
name | SHALL | string |
|
address | SHOULD | string |
|
_id | SHOULD | token |
The following search parameters SHALL be supported:
SHALL support searching using the identifier
search parameter:
GET [base]/Organization?identifier={system|}[code]
Example:
Implementation Notes: Fetches a bundle containing any Organization resources matching the identifier (how to search by token)
SHALL support searching based on text name using the name
search parameter:
GET [base]/Organization?name=[string]
Example:
Implementation Notes: Fetches a bundle of all Organization resources matching the name (how to search by string)
The following search parameters SHOULD be supported:
SHOULD support searching based on text address using the address
search parameter:
GET [base]/Organization?address=[string]
Example:
Implementation Notes: Fetches a bundle of all Organization resources matching the address (how to search by string)
SHOULD support searching using the _id
search parameter:
GET [base]/Organization?_id=[id]
Example:
Implementation Notes: Fetches a bundle with the requested Organization, instead of just the resource itself, and allows for the inclusion of additional search parameters such as _include, _revinclude, or _lastUpdated (how to search by id of the resource)