Australian Provider Directory Implementation Guide (PD 2)

This page is part of the Australian Provider Directory IG (v2.0.1: PD 2 on FHIR R4) based on FHIR R4. This is the current published version in it's permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

SD.5 StructureDefinition-au-pd-sm-endpoint

Australian Secure Messaging Endpoint Directory Entry

This profile describes content for describing details of an endpoint that would be adequate for addressing a secure message.

Examples

Secure Messaging Endpoint Example (Telstra Health)

Secure Messaging Endpoint Example (Medical Objects)

SD.5.1 Formal Views of Profile Content

The official URL for this profile is:

http://hl7.org.au/fhir/pd/StructureDefinition/au-pd-sm-endpoint

Endpoint for secure message delivery

This profile builds on Endpoint.

This profile was published on Tue May 14 00:00:00 AEST 2019 as a draft by null.

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

Australian Secure Messaging Endpoint Directory Entry

  1. Must Support Optional: Meta-Source (uri)
  2. Must Support 0 or more: SMD Target Identifier
  3. Must Support Required: Active Status (code)
  4. Must Support Required: Connection Type - Service Interface Type (Coding)
  5. Must Support Optional: Friendly name for endpoint (string)
  6. Must Support Required: Managing Organisation (with display text) (Organization Reference)
  7. Must Support 0 or more: Endpoint operator contact details (ContactPoint)
  8. Must Support 1 or more: Payload Type - Service Category (CodeableConcept)
  9. Must Support Required: Address - URL address of the endpoint (uri)
  10. Must Support Optional Extension: Receiving Facility (Complex)
  11. Must Support Optional Extension: Receiving Application (Complex)
  12. Must Support Optional Extension: Encryption PEM Certficate Details - PEM X509 Certificate (string)
NameFlagsCard.TypeDescription & Constraintsdoco
.. Endpoint 0..*Australian Secure Message Directory Endpoint Record
... meta 0..1MetaMetadata on Endpoint
.... source S0..1uri
... extension 0..*ExtensionSlice: Unordered, Open by value:url
... au-receivingfacility 0..1(Complex)HL7 V2 receiving facility
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingfacility
... au-receivingapplication 0..1(Complex)HL7 V2 receiving application
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingapplication
... encryption-certificate-pem-x509 0..*stringPEM X509 Certificate
URL: http://hl7.org.au/fhir/StructureDefinition/encryption-certificate-pem-x509
... identifier (Slice Definition)Slice: Unordered, Open by value:system
.... smdtarget S0..*IdentifierSecure Messaging Target Identifier
..... system 1..1uriSecure Messaging Delivery Target Identifier
Fixed Value: http://ns.electronichealth.net.au/smd/target
..... value 1..1stringSecure messaging target identifier value
... status S1..1codeRequired status
... connectionType S1..1CodingService interface type
Binding: Australian Service Interfaces (extensible)
... name S0..1stringFriendly name for the endpoint
... managingOrganization S1..1Reference(Organization)Directory entry managing organisation
.... display 1..1stringDirectroy entry managing organisation display details
... contact S0..*ContactPointEndpoint operator contact
... payloadType S1..*CodeableConceptPayload type
Binding: Australian Endpoint Payload Types (extensible)
... address S1..1urlURL address of the endpoint

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Endpoint I0..*Australian Secure Message Directory Endpoint Record
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata on Endpoint
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... source SΣ0..1uriIdentifies where the resource comes from
.... profile Σ0..*canonical(StructureDefinition)Profiles this resource claims to conform to
.... security Σ0..*CodingSecurity Labels applied to this resource
Binding: All Security Labels (extensible)
.... tag Σ0..*CodingTags applied to this resource
Binding: CommonTags (example)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... au-receivingfacility I0..1(Complex)HL7 V2 receiving facility
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingfacility
... au-receivingapplication I0..1(Complex)HL7 V2 receiving application
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingapplication
... encryption-certificate-pem-x509 I0..*stringPEM X509 Certificate
URL: http://hl7.org.au/fhir/StructureDefinition/encryption-certificate-pem-x509
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ(Slice Definition)Identifies this endpoint across multiple systems
Slice: Unordered, Open by value:system
.... smdtarget SΣ0..*IdentifierSecure Messaging Target Identifier
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible)
..... system Σ1..1uriSecure Messaging Delivery Target Identifier
Fixed Value: http://ns.electronichealth.net.au/smd/target
..... value Σ1..1stringSecure messaging target identifier value
Example General': 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!SΣ1..1codeRequired status
Binding: EndpointStatus (required)
... connectionType SΣ1..1CodingService interface type
Binding: Australian Service Interfaces (extensible)
... name SΣ0..1stringFriendly name for the endpoint
... managingOrganization SΣ1..1Reference(Organization)Directory entry managing organisation
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣI0..1stringLiteral reference, Relative, internal or absolute URL
.... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier Σ0..1IdentifierLogical reference, when literal reference is not known
.... display Σ1..1stringDirectroy entry managing organisation display details
... contact S0..*ContactPointEndpoint operator contact
... period Σ0..1PeriodInterval the endpoint is expected to be operational
... payloadType SΣ1..*CodeableConceptPayload type
Binding: Australian Endpoint Payload Types (extensible)
... payloadMimeType Σ0..*codeMimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this)
Binding: Mime Types (required)
... address SΣ1..1urlURL address of the endpoint
... header 0..*stringUsage depends on the channel type

doco Documentation for this format

Australian Secure Messaging Endpoint Directory Entry

  1. Must Support Optional: Meta-Source (uri)
  2. Must Support 0 or more: SMD Target Identifier
  3. Must Support Required: Active Status (code)
  4. Must Support Required: Connection Type - Service Interface Type (Coding)
  5. Must Support Optional: Friendly name for endpoint (string)
  6. Must Support Required: Managing Organisation (with display text) (Organization Reference)
  7. Must Support 0 or more: Endpoint operator contact details (ContactPoint)
  8. Must Support 1 or more: Payload Type - Service Category (CodeableConcept)
  9. Must Support Required: Address - URL address of the endpoint (uri)
  10. Must Support Optional Extension: Receiving Facility (Complex)
  11. Must Support Optional Extension: Receiving Application (Complex)
  12. Must Support Optional Extension: Encryption PEM Certficate Details - PEM X509 Certificate (string)

Differential View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Endpoint 0..*Australian Secure Message Directory Endpoint Record
... meta 0..1MetaMetadata on Endpoint
.... source S0..1uri
... extension 0..*ExtensionSlice: Unordered, Open by value:url
... au-receivingfacility 0..1(Complex)HL7 V2 receiving facility
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingfacility
... au-receivingapplication 0..1(Complex)HL7 V2 receiving application
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingapplication
... encryption-certificate-pem-x509 0..*stringPEM X509 Certificate
URL: http://hl7.org.au/fhir/StructureDefinition/encryption-certificate-pem-x509
... identifier (Slice Definition)Slice: Unordered, Open by value:system
.... smdtarget S0..*IdentifierSecure Messaging Target Identifier
..... system 1..1uriSecure Messaging Delivery Target Identifier
Fixed Value: http://ns.electronichealth.net.au/smd/target
..... value 1..1stringSecure messaging target identifier value
... status S1..1codeRequired status
... connectionType S1..1CodingService interface type
Binding: Australian Service Interfaces (extensible)
... name S0..1stringFriendly name for the endpoint
... managingOrganization S1..1Reference(Organization)Directory entry managing organisation
.... display 1..1stringDirectroy entry managing organisation display details
... contact S0..*ContactPointEndpoint operator contact
... payloadType S1..*CodeableConceptPayload type
Binding: Australian Endpoint Payload Types (extensible)
... address S1..1urlURL address of the endpoint

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Endpoint I0..*Australian Secure Message Directory Endpoint Record
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata on Endpoint
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... source SΣ0..1uriIdentifies where the resource comes from
.... profile Σ0..*canonical(StructureDefinition)Profiles this resource claims to conform to
.... security Σ0..*CodingSecurity Labels applied to this resource
Binding: All Security Labels (extensible)
.... tag Σ0..*CodingTags applied to this resource
Binding: CommonTags (example)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... au-receivingfacility I0..1(Complex)HL7 V2 receiving facility
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingfacility
... au-receivingapplication I0..1(Complex)HL7 V2 receiving application
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingapplication
... encryption-certificate-pem-x509 I0..*stringPEM X509 Certificate
URL: http://hl7.org.au/fhir/StructureDefinition/encryption-certificate-pem-x509
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ(Slice Definition)Identifies this endpoint across multiple systems
Slice: Unordered, Open by value:system
.... smdtarget SΣ0..*IdentifierSecure Messaging Target Identifier
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible)
..... system Σ1..1uriSecure Messaging Delivery Target Identifier
Fixed Value: http://ns.electronichealth.net.au/smd/target
..... value Σ1..1stringSecure messaging target identifier value
Example General': 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!SΣ1..1codeRequired status
Binding: EndpointStatus (required)
... connectionType SΣ1..1CodingService interface type
Binding: Australian Service Interfaces (extensible)
... name SΣ0..1stringFriendly name for the endpoint
... managingOrganization SΣ1..1Reference(Organization)Directory entry managing organisation
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣI0..1stringLiteral reference, Relative, internal or absolute URL
.... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier Σ0..1IdentifierLogical reference, when literal reference is not known
.... display Σ1..1stringDirectroy entry managing organisation display details
... contact S0..*ContactPointEndpoint operator contact
... period Σ0..1PeriodInterval the endpoint is expected to be operational
... payloadType SΣ1..*CodeableConceptPayload type
Binding: Australian Endpoint Payload Types (extensible)
... payloadMimeType Σ0..*codeMimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this)
Binding: Mime Types (required)
... address SΣ1..1urlURL address of the endpoint
... header 0..*stringUsage depends on the channel type

doco Documentation for this format

Downloads: StructureDefinition: (XML, JSON), Schema: XML Schematron

 

SD.5.2 Quick Start

Below is an overview of the requirements for search and read operations.


Read: Endpoint Read identified endpoint resource content.

GET [base]/Endpoint/[id]

Example: GET [base]/Endpoint/1234

Support: MUST support read Endpoint

Implementation Notes: [(how to read resource)


Search: Active Status

Search based on active status of the endpoint record.

GET [base]/Endpoint?status=[code]

Example: GET [base]/Endpoint?status=active

Support: MUST support search Organization by active status code (active | suspended | error | off | entered-in-error | test)

Implementation Notes: (how to search by token)


Search: Identifier (Secure Messaging Target Identifier)

Search based on identifier token.

GET [base]/Endpoint?identifier=[system]|[value]

Example: GET [base]/Endpoint?identifier=http://ns.electronichealth.net.au/smd/target|http://ns.argusdca.com.au/smd/id/hostname/ACC5959010000000

Support: MUST support search by Secure Messaging Target Identifier

Implementation Notes: (how to search by token)


Search: Connection Type (Service Interface)

Search based on token for a protocol to be used to connnect to the endpoint.

GET [base]/Endpoint?connection-type=[system]|[code]

Example: GET [base]/Endpoint?connection-type=http://hl7.org.au/fhir/CodeSystem/smd-interfaces|http://ns.electronichealth.net.au/smd/intf/SealedMessageDelivery/TLS/2010

Support: MUST support search by Connection Type.

Implementation Notes: (how to search by token)


Search: Payload Type (Service Category)

Search based on token for the type of content supported by the endpoint.

GET [base]/Endpoint?payload-type=[system]|[code]

Example: GET [base]/Endpoint?payload-type=http://hl7.org.au/fhir/CodeSystem/endpoint-payload-type|http://ns.hl7.org.au/hl7v2/profiles/HL7AU-OO-REF-SIMPLIFIED-201706

Support: MUST support search by Payload Type.

Implementation Notes: (how to search by token)


Search: Receiving Facility Extension Elements (Custom)

Search based string element content in the au-receivingfacility extension1. (namespace-id, universal-id, universal-id-type)

GET [base]/Endpoint?au-receivingfacility-namespace-id=[string]&au-receivingfacility-universal-id=[string]&au-receivingfacility-universal-id-type=[string]

Example: GET [base]/Endpoint?au-receivingfacility-namespace-id=Buderim Medical Center&au-receivingfacility-universal-id=877F9695-1298-4E6A-B432-0FDD46AD80B8&au-receivingfacility-universal-id-type=GUID

Support: MUST support search by Receiving Facility Extension Elements.

Implementation Notes: (how to search by string)

  • For searching explicitly for empty elements use :missing=true e.g. au-receivingfacility-universal-id-type:missing=true
  • Definition: au-receivingfacility-namespace-id (MSH-6.1) search extension('http://hl7.org.au/fhir/StructureDefinition/au-receivingfacility').extension('namespace-id').value
  • Definition: au-receivingfacility-universal-id (MSH-6.2) search extension('http://hl7.org.au/fhir/StructureDefinition/au-receivingfacility').extension('universal-id').value
  • Definition: au-receivingfacility-universal-id-type (MSH-6.3) search extension('http://hl7.org.au/fhir/StructureDefinition/au-receivingfacility').extension('universal-id-type').value