AU Base Implementation Guide
            
            6.0.0-ci-build - CI Build
  
            
          
AU Base Implementation Guide, published by HL7 Australia. This guide is not an authorized publication; it is the continuous build for version 6.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-base/ and changes regularly. See the Directory of published versions
| Official URL: http://hl7.org.au/fhir/StructureDefinition/au-paididentifier | Version: 6.0.0-ci-build | |||
| Standards status: Trial-use | Maturity Level: 1 | Computable Name: AUPAIDIdentifier | ||
| Copyright/Legal: HL7 Australia© 2018+; Licensed Under Creative Commons No Rights Reserved. | ||||
This identifier profile defines a My Health Record Assigned Identity - Device (PAI-D) identifier in an Australian context. A PAI-D is typically used to identify a device that plays a role, for example an authoring or observing, in the exchange of digital health data with the My Health Record system.
Usages:
You can also check for usages in the FHIR IG Statistics
Changes since version 5.0.0:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   Identifier | C | 0..* | Identifier | My Health Record Assigned Identity - Device (PAI-D) Identifier Constraints: inv-paid-0, inv-paid-1, inv-paid-2 | 
|    use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | 
|    type | Σ | 1..1 | CodeableConcept | Coded identifier type for PAI-D Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. Required Pattern: At least the following | 
|     id | 0..1 | string | Unique id for inter-element referencing | |
|     extension | 0..* | Extension | Additional content defined by implementations | |
|     coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
|      id | 0..1 | string | Unique id for inter-element referencing | |
|      extension | 0..* | Extension | Additional content defined by implementations | |
|      system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org.au/CodeSystem/v2-0203 | |
|      version | 0..1 | string | Version of the system - if relevant | |
|      code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: NDI | |
|      display | 0..1 | string | Representation defined by the system | |
|      userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |
|     text | 0..1 | string | Plain text representation of the concept | |
|    system | Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: http://ns.electronichealth.net.au/id/pcehr/paid/1.0 | 
|    value | ΣC | 1..1 | string | PAI-D Example General: 123456 Example PAI-D: 8003640013000057 Max Length:16 | 
|  Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source | 
| Identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. | 
| Identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. | 
| Id | Grade | Path(s) | Description | Expression | 
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | hasValue() or (children().count() > id.count()) | 
| inv-paid-0 | error | Identifier | PAI-D shall be 16 digits | value.matches('^([0-9]{16})$') | 
| inv-paid-1 | error | Identifier | PAI-D prefix shall be 800364 | value.startsWith('800364') | 
| inv-paid-2 | error | Identifier | PAI-D shall pass the Luhn algorithm | (((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) | 
This structure is derived from Identifier
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   Identifier | C | 0..* | Identifier | My Health Record Assigned Identity - Device (PAI-D) Identifier Constraints: inv-paid-0, inv-paid-1, inv-paid-2 | 
|    type | 1..1 | CodeableConcept | Coded identifier type for PAI-D Required Pattern: At least the following | |
|     coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
|      system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org.au/CodeSystem/v2-0203 | |
|      code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: NDI | |
|    system | 1..1 | uri | The namespace for the identifier value Fixed Value: http://ns.electronichealth.net.au/id/pcehr/paid/1.0 | |
|    value | C | 1..1 | string | PAI-D Example PAI-D: 8003640013000057 Max Length:16 | 
|  Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression | 
| inv-paid-0 | error | Identifier | PAI-D shall be 16 digits | value.matches('^([0-9]{16})$') | 
| inv-paid-1 | error | Identifier | PAI-D prefix shall be 800364 | value.startsWith('800364') | 
| inv-paid-2 | error | Identifier | PAI-D shall pass the Luhn algorithm | (((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) | 
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   Identifier | C | 0..* | Identifier | My Health Record Assigned Identity - Device (PAI-D) Identifier Constraints: inv-paid-0, inv-paid-1, inv-paid-2 | 
|    id | 0..1 | string | Unique id for inter-element referencing | |
|    extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
|    use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | 
|    type | Σ | 1..1 | CodeableConcept | Coded identifier type for PAI-D Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. Required Pattern: At least the following | 
|     id | 0..1 | string | Unique id for inter-element referencing | |
|     extension | 0..* | Extension | Additional content defined by implementations | |
|     coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
|      id | 0..1 | string | Unique id for inter-element referencing | |
|      extension | 0..* | Extension | Additional content defined by implementations | |
|      system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org.au/CodeSystem/v2-0203 | |
|      version | 0..1 | string | Version of the system - if relevant | |
|      code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: NDI | |
|      display | 0..1 | string | Representation defined by the system | |
|      userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |
|     text | 0..1 | string | Plain text representation of the concept | |
|    system | Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: http://ns.electronichealth.net.au/id/pcehr/paid/1.0 | 
|    value | ΣC | 1..1 | string | PAI-D Example General: 123456 Example PAI-D: 8003640013000057 Max Length:16 | 
|    period | Σ | 0..1 | Period | Time period when id is/was valid for use | 
|    assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | 
|  Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source | 
| Identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. | 
| Identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. | 
| Id | Grade | Path(s) | Description | Expression | 
| 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-paid-0 | error | Identifier | PAI-D shall be 16 digits | value.matches('^([0-9]{16})$') | 
| inv-paid-1 | error | Identifier | PAI-D prefix shall be 800364 | value.startsWith('800364') | 
| inv-paid-2 | error | Identifier | PAI-D shall pass the Luhn algorithm | (((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) | 
This structure is derived from Identifier
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   Identifier | C | 0..* | Identifier | My Health Record Assigned Identity - Device (PAI-D) Identifier Constraints: inv-paid-0, inv-paid-1, inv-paid-2 | 
|    use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | 
|    type | Σ | 1..1 | CodeableConcept | Coded identifier type for PAI-D Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. Required Pattern: At least the following | 
|     id | 0..1 | string | Unique id for inter-element referencing | |
|     extension | 0..* | Extension | Additional content defined by implementations | |
|     coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
|      id | 0..1 | string | Unique id for inter-element referencing | |
|      extension | 0..* | Extension | Additional content defined by implementations | |
|      system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org.au/CodeSystem/v2-0203 | |
|      version | 0..1 | string | Version of the system - if relevant | |
|      code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: NDI | |
|      display | 0..1 | string | Representation defined by the system | |
|      userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |
|     text | 0..1 | string | Plain text representation of the concept | |
|    system | Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: http://ns.electronichealth.net.au/id/pcehr/paid/1.0 | 
|    value | ΣC | 1..1 | string | PAI-D Example General: 123456 Example PAI-D: 8003640013000057 Max Length:16 | 
|  Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source | 
| Identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. | 
| Identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. | 
| Id | Grade | Path(s) | Description | Expression | 
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | hasValue() or (children().count() > id.count()) | 
| inv-paid-0 | error | Identifier | PAI-D shall be 16 digits | value.matches('^([0-9]{16})$') | 
| inv-paid-1 | error | Identifier | PAI-D prefix shall be 800364 | value.startsWith('800364') | 
| inv-paid-2 | error | Identifier | PAI-D shall pass the Luhn algorithm | (((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) | 
Differential View
This structure is derived from Identifier
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   Identifier | C | 0..* | Identifier | My Health Record Assigned Identity - Device (PAI-D) Identifier Constraints: inv-paid-0, inv-paid-1, inv-paid-2 | 
|    type | 1..1 | CodeableConcept | Coded identifier type for PAI-D Required Pattern: At least the following | |
|     coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
|      system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org.au/CodeSystem/v2-0203 | |
|      code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: NDI | |
|    system | 1..1 | uri | The namespace for the identifier value Fixed Value: http://ns.electronichealth.net.au/id/pcehr/paid/1.0 | |
|    value | C | 1..1 | string | PAI-D Example PAI-D: 8003640013000057 Max Length:16 | 
|  Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression | 
| inv-paid-0 | error | Identifier | PAI-D shall be 16 digits | value.matches('^([0-9]{16})$') | 
| inv-paid-1 | error | Identifier | PAI-D prefix shall be 800364 | value.startsWith('800364') | 
| inv-paid-2 | error | Identifier | PAI-D shall pass the Luhn algorithm | (((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) | 
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   Identifier | C | 0..* | Identifier | My Health Record Assigned Identity - Device (PAI-D) Identifier Constraints: inv-paid-0, inv-paid-1, inv-paid-2 | 
|    id | 0..1 | string | Unique id for inter-element referencing | |
|    extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
|    use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | 
|    type | Σ | 1..1 | CodeableConcept | Coded identifier type for PAI-D Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. Required Pattern: At least the following | 
|     id | 0..1 | string | Unique id for inter-element referencing | |
|     extension | 0..* | Extension | Additional content defined by implementations | |
|     coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
|      id | 0..1 | string | Unique id for inter-element referencing | |
|      extension | 0..* | Extension | Additional content defined by implementations | |
|      system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org.au/CodeSystem/v2-0203 | |
|      version | 0..1 | string | Version of the system - if relevant | |
|      code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: NDI | |
|      display | 0..1 | string | Representation defined by the system | |
|      userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |
|     text | 0..1 | string | Plain text representation of the concept | |
|    system | Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: http://ns.electronichealth.net.au/id/pcehr/paid/1.0 | 
|    value | ΣC | 1..1 | string | PAI-D Example General: 123456 Example PAI-D: 8003640013000057 Max Length:16 | 
|    period | Σ | 0..1 | Period | Time period when id is/was valid for use | 
|    assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | 
|  Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source | 
| Identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. | 
| Identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. | 
| Id | Grade | Path(s) | Description | Expression | 
| 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-paid-0 | error | Identifier | PAI-D shall be 16 digits | value.matches('^([0-9]{16})$') | 
| inv-paid-1 | error | Identifier | PAI-D prefix shall be 800364 | value.startsWith('800364') | 
| inv-paid-2 | error | Identifier | PAI-D shall pass the Luhn algorithm | (((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) | 
This structure is derived from Identifier
Other representations of profile: CSV, Excel, Schematron