AU Core Implementation Guide
2.0.1-ci-build - CI Build Australia flag

AU Core Implementation Guide, published by HL7 Australia. This guide is not an authorized publication; it is the continuous build for version 2.0.1-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-core/ and changes regularly. See the Directory of published versions

Resource Profile: AU Core Endpoint

Official URL: http://hl7.org.au/fhir/core/StructureDefinition/au-core-endpoint Version: 2.0.1-ci-build
Standards status: Trial-use Maturity Level: 0 Computable Name: AUCoreEndpoint

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 sets minimum expectations for an Endpoint resource to record, search, and fetch details of a technical endpoint that can be used to connect to a service for the delivery or retrieval of information. It is based on the AU Base Endpoint profile and identifies the additional mandatory core elements, extensions, vocabularies and value sets that SHALL be present in the Endpoint resource when conforming to this profile. It provides the floor for standards development for specific uses cases in an Australian context.

See Comparison with other national and international IGs for a comparison between AU Core profiles and profiles in other implementation guides.

Usage Scenarios

The following are supported usage scenarios for this profile:

  • Query for an endpoint
  • Record or update endpoint information

Profile Specific Implementation Guidance

No guidance defined.

Usages:

You can also check for usages in the FHIR IG Statistics

Changes since version 2.0.0:

  • New Content
  • Formal Views of Profile Content

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

    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Endpoint 0..* AUBaseEndpoint An endpoint in an Australian healthcare context
    ... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
    ... Slices for extension Content/Rules for all slices
    .... extension:environmentType 0..* CodeableConcept R5: The type of environment(s) exposed at this endpoint (new)
    URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Endpoint.environmentType
    Binding: R5EndpointEnvironmentForR4 (0.1.0) (extensible)
    Constraints: ext-1
    ... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
    ... connectionType SOΣ 1..1 Coding Protocol/Profile/Standard to be used with this endpoint connection
    Binding: Endpoint Connection Type - AU Extended (extensible)
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... name SOΣ 0..1 string A name that this endpoint can be identified by
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... payloadType SOΣ 1..* CodeableConcept The type of content that may be used at this endpoint (e.g. XDS Discharge summaries)
    Binding: Endpoint Payload Type - AU Extended (preferred)
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... address SOΣ 1..1 url The technical base address for connecting to this endpoint
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester

    doco Documentation for this format

    Terminology Bindings

    Path Status Usage ValueSet Version Source
    Endpoint.status Base required EndpointStatus 📍4.0.1 FHIR Std.
    Endpoint.connectionType Base extensible Endpoint Connection Type - AU Extended 📦6.0.1-ci-build AU Base Implementation Guide vnull
    Endpoint.payloadType Base preferred Endpoint Payload Type - AU Extended 📦6.0.1-ci-build AU Base Implementation Guide vnull

    Constraints

    Id Grade Path(s) Description Expression
    dom-2 error Endpoint If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
    dom-3 error Endpoint 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 Endpoint 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 Endpoint If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
    dom-6 best practice Endpoint 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 Endpoint.extension:environmentType, Endpoint.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()

    This structure is derived from AUBaseEndpoint

    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Endpoint 0..* AUBaseEndpoint An endpoint in an Australian healthcare context
    ... status SO 1..1 code active | suspended | error | off | entered-in-error | test
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... connectionType SO 1..1 Coding Protocol/Profile/Standard to be used with this endpoint connection
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... name SO 0..1 string A name that this endpoint can be identified by
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... address SO 1..1 url The technical base address for connecting to this endpoint
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester

    doco Documentation for this format
    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Endpoint 0..* AUBaseEndpoint An endpoint in an Australian healthcare context
    ... 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
    This profile does not constrain the narrative in regard to content, language, or traceability to data elements
    ... contained 0..* Resource Contained, inline Resources
    ... Slices for extension 0..* Extension Extension
    Slice: Unordered, Open by value:url
    .... extension:environmentType 0..* CodeableConcept R5: The type of environment(s) exposed at this endpoint (new)
    URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Endpoint.environmentType
    Binding: R5EndpointEnvironmentForR4 (0.1.0) (extensible)
    Constraints: ext-1
    ... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
    ... identifier Σ 0..* Identifier Identifies this endpoint across multiple systems
    ... status ?!SOΣ 1..1 code active | suspended | error | off | entered-in-error | test
    Binding: EndpointStatus (required): The status of the endpoint.
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... connectionType SOΣ 1..1 Coding Protocol/Profile/Standard to be used with this endpoint connection
    Binding: Endpoint Connection Type - AU Extended (extensible)
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... name SOΣ 0..1 string A name that this endpoint can be identified by
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... managingOrganization Σ 0..1 Reference(Organization) Organization that manages this endpoint (might not be the organization that exposes the endpoint)
    ... contact 0..* ContactPoint Contact details for source (e.g. troubleshooting)
    ... period Σ 0..1 Period Interval the endpoint is expected to be operational
    ... payloadType SOΣ 1..* CodeableConcept The type of content that may be used at this endpoint (e.g. XDS Discharge summaries)
    Binding: Endpoint Payload Type - AU Extended (preferred)
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... payloadMimeType Σ 0..* code Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this)
    Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
    ... address SOΣ 1..1 url The technical base address for connecting to this endpoint
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... header 0..* string Usage depends on the channel type

    doco Documentation for this format

    Terminology Bindings

    Path Status Usage ValueSet Version Source
    Endpoint.language Base preferred Common Languages 📍4.0.1 FHIR Std.
    Endpoint.status Base required EndpointStatus 📍4.0.1 FHIR Std.
    Endpoint.connectionType Base extensible Endpoint Connection Type - AU Extended 📦6.0.1-ci-build AU Base Implementation Guide vnull
    Endpoint.payloadType Base preferred Endpoint Payload Type - AU Extended 📦6.0.1-ci-build AU Base Implementation Guide vnull
    Endpoint.payloadMimeType Base required MimeType 📍4.0.1 FHIR Std.

    Constraints

    Id Grade Path(s) Description Expression
    dom-2 error Endpoint If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
    dom-3 error Endpoint 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 Endpoint 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 Endpoint If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
    dom-6 best practice Endpoint 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()

    This structure is derived from AUBaseEndpoint

    Summary

    Must-Support: 5 elements

    Maturity: 0

    Key Elements View

    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Endpoint 0..* AUBaseEndpoint An endpoint in an Australian healthcare context
    ... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
    ... Slices for extension Content/Rules for all slices
    .... extension:environmentType 0..* CodeableConcept R5: The type of environment(s) exposed at this endpoint (new)
    URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Endpoint.environmentType
    Binding: R5EndpointEnvironmentForR4 (0.1.0) (extensible)
    Constraints: ext-1
    ... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
    ... connectionType SOΣ 1..1 Coding Protocol/Profile/Standard to be used with this endpoint connection
    Binding: Endpoint Connection Type - AU Extended (extensible)
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... name SOΣ 0..1 string A name that this endpoint can be identified by
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... payloadType SOΣ 1..* CodeableConcept The type of content that may be used at this endpoint (e.g. XDS Discharge summaries)
    Binding: Endpoint Payload Type - AU Extended (preferred)
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... address SOΣ 1..1 url The technical base address for connecting to this endpoint
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester

    doco Documentation for this format

    Terminology Bindings

    Path Status Usage ValueSet Version Source
    Endpoint.status Base required EndpointStatus 📍4.0.1 FHIR Std.
    Endpoint.connectionType Base extensible Endpoint Connection Type - AU Extended 📦6.0.1-ci-build AU Base Implementation Guide vnull
    Endpoint.payloadType Base preferred Endpoint Payload Type - AU Extended 📦6.0.1-ci-build AU Base Implementation Guide vnull

    Constraints

    Id Grade Path(s) Description Expression
    dom-2 error Endpoint If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
    dom-3 error Endpoint 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 Endpoint 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 Endpoint If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
    dom-6 best practice Endpoint 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 Endpoint.extension:environmentType, Endpoint.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()

    Differential View

    This structure is derived from AUBaseEndpoint

    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Endpoint 0..* AUBaseEndpoint An endpoint in an Australian healthcare context
    ... status SO 1..1 code active | suspended | error | off | entered-in-error | test
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... connectionType SO 1..1 Coding Protocol/Profile/Standard to be used with this endpoint connection
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... name SO 0..1 string A name that this endpoint can be identified by
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... address SO 1..1 url The technical base address for connecting to this endpoint
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester

    doco Documentation for this format

    Snapshot View

    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Endpoint 0..* AUBaseEndpoint An endpoint in an Australian healthcare context
    ... 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
    This profile does not constrain the narrative in regard to content, language, or traceability to data elements
    ... contained 0..* Resource Contained, inline Resources
    ... Slices for extension 0..* Extension Extension
    Slice: Unordered, Open by value:url
    .... extension:environmentType 0..* CodeableConcept R5: The type of environment(s) exposed at this endpoint (new)
    URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Endpoint.environmentType
    Binding: R5EndpointEnvironmentForR4 (0.1.0) (extensible)
    Constraints: ext-1
    ... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
    ... identifier Σ 0..* Identifier Identifies this endpoint across multiple systems
    ... status ?!SOΣ 1..1 code active | suspended | error | off | entered-in-error | test
    Binding: EndpointStatus (required): The status of the endpoint.
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... connectionType SOΣ 1..1 Coding Protocol/Profile/Standard to be used with this endpoint connection
    Binding: Endpoint Connection Type - AU Extended (extensible)
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... name SOΣ 0..1 string A name that this endpoint can be identified by
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... managingOrganization Σ 0..1 Reference(Organization) Organization that manages this endpoint (might not be the organization that exposes the endpoint)
    ... contact 0..* ContactPoint Contact details for source (e.g. troubleshooting)
    ... period Σ 0..1 Period Interval the endpoint is expected to be operational
    ... payloadType SOΣ 1..* CodeableConcept The type of content that may be used at this endpoint (e.g. XDS Discharge summaries)
    Binding: Endpoint Payload Type - AU Extended (preferred)
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... payloadMimeType Σ 0..* code Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this)
    Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
    ... address SOΣ 1..1 url The technical base address for connecting to this endpoint
    ObligationsActor
    SHALL:populate-if-known AU Core Responder
    SHALL:no-error AU Core Requester
    ... header 0..* string Usage depends on the channel type

    doco Documentation for this format

    Terminology Bindings

    Path Status Usage ValueSet Version Source
    Endpoint.language Base preferred Common Languages 📍4.0.1 FHIR Std.
    Endpoint.status Base required EndpointStatus 📍4.0.1 FHIR Std.
    Endpoint.connectionType Base extensible Endpoint Connection Type - AU Extended 📦6.0.1-ci-build AU Base Implementation Guide vnull
    Endpoint.payloadType Base preferred Endpoint Payload Type - AU Extended 📦6.0.1-ci-build AU Base Implementation Guide vnull
    Endpoint.payloadMimeType Base required MimeType 📍4.0.1 FHIR Std.

    Constraints

    Id Grade Path(s) Description Expression
    dom-2 error Endpoint If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
    dom-3 error Endpoint 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 Endpoint 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 Endpoint If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
    dom-6 best practice Endpoint 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()

    This structure is derived from AUBaseEndpoint

    Summary

    Must-Support: 5 elements

    Maturity: 0

     

    Other representations of profile: CSV, Excel, Schematron

    Notes:

    Below is an overview of the mandatory and optional search parameters and combined search parameters. See the AU Core CapabilityStatements for a complete list of supported RESTful interactions for this IG.

    FHIR search operations are described here and the syntax used to describe AU Core interactions is defined here.

    Any search parameter defined in FHIR may be 'allowed' by the system unless explicitly marked as "SHALL NOT". A few items are marked as MAY in this implementation guide to highlight their potential relevance.

    Parameter(s) Conformance Type(s) Requirements (when used alone or in combination)
    _id SHOULD token
    connection-type MAY token The requester SHALL provide at least a code value and MAY provide both the system and code values. The responder SHALL support both.
    name MAY string
    payload-type MAY token The requester SHALL provide at least a code value and MAY provide both the system and code values. The responder SHALL support both.
    status MAY token The requester SHALL provide at least a code value and MAY provide both the system and code values. The responder SHALL support both.

    Optional Search Parameters

    The following search parameters and search parameter combinations SHOULD be supported:

    1. SHOULD support searching using the _id search parameter:

      GET [base]/Endpoint?_id=[id]

      Example:

      1. GET [base]/Endpoint?_id=2234547

      Implementation Notes: Fetches a bundle with the requested Endpoint, instead of just the resource itself, and allows for the inclusion of additional search parameters such as _include, _revinclude, or _lastUpdated (how to search by id of the resource)