AU Patient Summary Implementation Guide
0.1.0-cibuild - CI Build
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
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:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from AUCoreOrganization
Name | Flags | Card. | Type | Description & Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
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
| ||||||
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..* | 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 | ||||||
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 AUCoreOrganization
Key Elements View
Name | Flags | Card. | Type | Description & Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
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
| ||||||
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..* | 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 | ||||||
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 AUCoreOrganization
Other representations of profile: CSV, Excel, Schematron