AU Patient Summary Implementation Guide
0.1.0-cibuild - CI Build Australia flag

AU Patient Summary Implementation Guide, published by HL7 Australia. This guide is not an authorized publication; it is the continuous build for version 0.1.0-cibuild built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7au/draft-au-patient-summary/ and changes regularly. See the Directory of published versions

Resource Profile: AU Patient Summary Organization ( Experimental )

Official URL: http://hl7.org.au.draft/fhir/aups/StructureDefinition/au-ps-organization Version: 0.1.0-cibuild
Standards status: Informative Maturity Level: 0 Computable Name: AUPSOrganization

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 is based on the AU Core profile, with IPS rules added as well (by reference to the IPS profile).

Usage:

Formal Views of Profile Content

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

This structure is derived from AUCoreOrganization

NameFlagsCard.TypeDescription & Constraintsdoco
.. Organization C 0..* AUCoreOrganization An organisation in an Australian healthcare context
This profile also imposes the profile Organization (IPS)
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
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
.... 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
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
.... identifier:abn SOC 0..* AUAustralianBusinessNumber Australian Business Number (ABN)
inv-abn-0: ABN shall be 11 digits
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... type SOΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... name SOΣC 1..1 string Name used for the organization
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... telecom SOC 0..* ContactPoint A contact detail for the organization
org-3: The telecom of an organization can never be of use 'home'
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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'
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Organization.typepreferredHealthcareOrganisationRoleType .
https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1

Constraints

IdGradePath(s)DetailsRequirements
au-core-org-01errorOrganization.identifierA 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-2errorOrganizationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorOrganizationIf 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-4errorOrganizationIf 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-5errorOrganizationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceOrganizationA 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-0errorOrganization.identifier:abnABN shall be 11 digits
: value.matches('^([0-9]{11})$')
inv-hpio-0errorOrganization.identifier:hpioHPI-O shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpio-1errorOrganization.identifier:hpioHPI-O prefix shall be 800362
: value.startsWith('800362')
inv-hpio-2errorOrganization.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)
org-1errorOrganizationThe organization SHALL at least have a name or an identifier, and possibly more than one
: (identifier.count() + name.count()) > 0
org-2errorOrganization.addressAn address of an organization can never be of use 'home'
: where(use = 'home').empty()
org-3errorOrganization.telecomThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Organization C 0..* AUCoreOrganization An organisation in an Australian healthcare context
This profile also imposes the profile Organization (IPS)
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
... 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
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
.... 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
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
.... identifier:abn SOC 0..* AUAustralianBusinessNumber Australian Business Number (ABN)
inv-abn-0: ABN shall be 11 digits
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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)
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... name SOΣC 1..1 string Name used for the organization
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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'
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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'
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Organization.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Organization.typepreferredHealthcareOrganisationRoleType .
https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1
Organization.contact.purposeextensibleContactPurpose
http://terminology.hl7.org.au/ValueSet/contact-purpose

Constraints

IdGradePath(s)DetailsRequirements
au-core-org-01errorOrganization.identifierA 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-2errorOrganizationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorOrganizationIf 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-4errorOrganizationIf 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-5errorOrganizationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceOrganizationA 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-0errorOrganization.identifier:abnABN shall be 11 digits
: value.matches('^([0-9]{11})$')
inv-hpio-0errorOrganization.identifier:hpioHPI-O shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpio-1errorOrganization.identifier:hpioHPI-O prefix shall be 800362
: value.startsWith('800362')
inv-hpio-2errorOrganization.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)
org-1errorOrganizationThe organization SHALL at least have a name or an identifier, and possibly more than one
: (identifier.count() + name.count()) > 0
org-2errorOrganization.addressAn address of an organization can never be of use 'home'
: where(use = 'home').empty()
org-3errorOrganization.telecomThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()

This structure is derived from AUCoreOrganization

Summary

Maturity: 0

Differential View

This structure is derived from AUCoreOrganization

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Organization C 0..* AUCoreOrganization An organisation in an Australian healthcare context
This profile also imposes the profile Organization (IPS)
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
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
.... 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
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
.... identifier:abn SOC 0..* AUAustralianBusinessNumber Australian Business Number (ABN)
inv-abn-0: ABN shall be 11 digits
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... type SOΣ 0..* CodeableConcept Kind of organization
Binding: Healthcare Organisation Role Type . (preferred)
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... name SOΣC 1..1 string Name used for the organization
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... telecom SOC 0..* ContactPoint A contact detail for the organization
org-3: The telecom of an organization can never be of use 'home'
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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'
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Organization.typepreferredHealthcareOrganisationRoleType .
https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1

Constraints

IdGradePath(s)DetailsRequirements
au-core-org-01errorOrganization.identifierA 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-2errorOrganizationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorOrganizationIf 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-4errorOrganizationIf 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-5errorOrganizationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceOrganizationA 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-0errorOrganization.identifier:abnABN shall be 11 digits
: value.matches('^([0-9]{11})$')
inv-hpio-0errorOrganization.identifier:hpioHPI-O shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpio-1errorOrganization.identifier:hpioHPI-O prefix shall be 800362
: value.startsWith('800362')
inv-hpio-2errorOrganization.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)
org-1errorOrganizationThe organization SHALL at least have a name or an identifier, and possibly more than one
: (identifier.count() + name.count()) > 0
org-2errorOrganization.addressAn address of an organization can never be of use 'home'
: where(use = 'home').empty()
org-3errorOrganization.telecomThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Organization C 0..* AUCoreOrganization An organisation in an Australian healthcare context
This profile also imposes the profile Organization (IPS)
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
... 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
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
.... 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
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
.... identifier:abn SOC 0..* AUAustralianBusinessNumber Australian Business Number (ABN)
inv-abn-0: ABN shall be 11 digits
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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)
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... name SOΣC 1..1 string Name used for the organization
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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'
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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'
ObligationsActor
SHALL:populate-if-known http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-responder
SHALL:no-error http://hl7.org.au/fhir/core/ActorDefinition/au-core-actor-requester
... 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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Organization.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Organization.typepreferredHealthcareOrganisationRoleType .
https://healthterminologies.gov.au/fhir/ValueSet/healthcare-organisation-role-type-1
Organization.contact.purposeextensibleContactPurpose
http://terminology.hl7.org.au/ValueSet/contact-purpose

Constraints

IdGradePath(s)DetailsRequirements
au-core-org-01errorOrganization.identifierA 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-2errorOrganizationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorOrganizationIf 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-4errorOrganizationIf 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-5errorOrganizationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceOrganizationA 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-0errorOrganization.identifier:abnABN shall be 11 digits
: value.matches('^([0-9]{11})$')
inv-hpio-0errorOrganization.identifier:hpioHPI-O shall be 16 digits
: value.matches('^([0-9]{16})$')
inv-hpio-1errorOrganization.identifier:hpioHPI-O prefix shall be 800362
: value.startsWith('800362')
inv-hpio-2errorOrganization.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)
org-1errorOrganizationThe organization SHALL at least have a name or an identifier, and possibly more than one
: (identifier.count() + name.count()) > 0
org-2errorOrganization.addressAn address of an organization can never be of use 'home'
: where(use = 'home').empty()
org-3errorOrganization.telecomThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()

This structure is derived from AUCoreOrganization

Summary

Maturity: 0

 

Other representations of profile: CSV, Excel, Schematron