Australian Provider Directory Implementation Guide (PD 1)

This page is part of the Australian Provider Directory IG (v1.0.0: PD 1 on FHIR STU3) based on FHIR R3. The current version which supercedes this version is 2.0.1. 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 about the resource (extended)
.... extension 0..*ExtensionSlice: Unordered, Open by value:url
.... meta-source S0..*uriPreadopt STU4 Meta.source
URL: http://hl7.org.au/fhir/StructureDefinition/meta-source
... 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
.... extension 0..1Extension
..... valueString 0..1string
.... extension 0..1Extension
..... valueString 0..1string
... au-receivingapplication 0..1(Complex)HL7 V2 receiving application
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingapplication
.... extension 0..1Extension
..... valueString 0..1string
.... extension 0..1Extension
..... valueString 0..1string
.... extension 0..1Extension
..... valueString 0..1string
... encryption-certificate-pem-x509 0..*stringPEM X509 Certificate
URL: http://hl7.org.au/fhir/StructureDefinition/encryption-certificate-pem-x509
... identifier IdentifierSlice: Unordered, Open by value:system
... identifier 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..1uriURL 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 about the resource (extended)
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... meta-source S0..*uriPreadopt STU4 Meta.source
URL: http://hl7.org.au/fhir/StructureDefinition/meta-source
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"http://hl7.org.au/fhir/StructureDefinition/meta-source"
..... valueUri 1..1uriSource System URI
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... profile Σ0..*uriProfiles 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: Common Tags (example)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
Max Binding: All Languages
... text I0..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
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"namespace-id"
..... valueString 0..1stringValue of extension
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"universal-id"
..... valueString 0..1stringValue of extension
.... extension 0..1ExtensionType Scheme of universal-id
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"universal-id-type"
..... valueString 0..1stringValue of extension
.... url 1..1uri"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
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"namespace-id"
..... valueString 0..1stringValue of extension
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"universal-id"
..... valueString 0..1stringValue of extension
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"universal-id-type"
..... valueString 0..1stringValue of extension
.... url 1..1uri"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 ΣIdentifierIdentifies this endpoint across multiple systems
Slice: Unordered, Open by value:system
... identifier SΣ0..*IdentifierSecure Messaging Target Identifier
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary (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..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣI0..1stringLiteral reference, Relative, internal or absolute URL
.... 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: mimetypes (required)
... address SΣ1..1uriURL 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 about the resource (extended)
.... extension 0..*ExtensionSlice: Unordered, Open by value:url
.... meta-source S0..*uriPreadopt STU4 Meta.source
URL: http://hl7.org.au/fhir/StructureDefinition/meta-source
... 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
.... extension 0..1Extension
..... valueString 0..1string
.... extension 0..1Extension
..... valueString 0..1string
... au-receivingapplication 0..1(Complex)HL7 V2 receiving application
URL: http://hl7.org.au/fhir/StructureDefinition/au-receivingapplication
.... extension 0..1Extension
..... valueString 0..1string
.... extension 0..1Extension
..... valueString 0..1string
.... extension 0..1Extension
..... valueString 0..1string
... encryption-certificate-pem-x509 0..*stringPEM X509 Certificate
URL: http://hl7.org.au/fhir/StructureDefinition/encryption-certificate-pem-x509
... identifier IdentifierSlice: Unordered, Open by value:system
... identifier 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..1uriURL 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 about the resource (extended)
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... meta-source S0..*uriPreadopt STU4 Meta.source
URL: http://hl7.org.au/fhir/StructureDefinition/meta-source
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"http://hl7.org.au/fhir/StructureDefinition/meta-source"
..... valueUri 1..1uriSource System URI
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... profile Σ0..*uriProfiles 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: Common Tags (example)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
Max Binding: All Languages
... text I0..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
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"namespace-id"
..... valueString 0..1stringValue of extension
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"universal-id"
..... valueString 0..1stringValue of extension
.... extension 0..1ExtensionType Scheme of universal-id
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"universal-id-type"
..... valueString 0..1stringValue of extension
.... url 1..1uri"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
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"namespace-id"
..... valueString 0..1stringValue of extension
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"universal-id"
..... valueString 0..1stringValue of extension
.... extension 0..1ExtensionExtension
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uri"universal-id-type"
..... valueString 0..1stringValue of extension
.... url 1..1uri"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 ΣIdentifierIdentifies this endpoint across multiple systems
Slice: Unordered, Open by value:system
... identifier SΣ0..*IdentifierSecure Messaging Target Identifier
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary (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..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣI0..1stringLiteral reference, Relative, internal or absolute URL
.... 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: mimetypes (required)
... address SΣ1..1uriURL 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