Skip to main content

%Standards.AU.eHealth.PCEHR.PCEHRHeaders

class %Standards.AU.eHealth.PCEHR.PCEHRHeaders extends %Library.RegisteredObject

%Standards.AU.eHealth.PCEHR.PCEHRHeaders supports adding, signing and validating headers that are defined as part of Australia Government's Department of Health and Ageing (Federal Agency) NEHTA standards for the PCEHR B2B Gateway services. Standards for the PCEHR Core System are accessible here: https://vendors.nehta.gov.au

See AddRequestHeaders and AddResponseHeaders for details of how to add and sign headers.
See ValidateHeaders for details of how to validate headers.

Property Inventory

Method Inventory

Parameters

parameter ELEMENTQUALIFIED = 1;
parameter NAMESPACE = http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0;
parameter XMLFORMAT = literal;
parameter XMLNAME = PCEHRHeader;
parameter XMLSEQUENCE = 1;

Properties

property PCEHRHeader as %Standards.AU.eHealth.PCEHR.PCEHRHeaderType (XMLNAME = "PCEHRHeader") [ Required ];
Property methods: PCEHRHeaderGet(), PCEHRHeaderGetSwizzled(), PCEHRHeaderIsValid(), PCEHRHeaderNewObject(), PCEHRHeaderSet()
signature SOAP header will be created for request and response and will sign other headers. signature SOAP header will reference header after validating received request or response.
Property methods: signatureGet(), signatureGetSwizzled(), signatureIsValid(), signatureNewObject(), signatureSet()
timestamp SOAP header will be created request. timestamp SOAP header will reference header after validating received request.
Property methods: timestampGet(), timestampGetSwizzled(), timestampIsValid(), timestampNewObject(), timestampSet()

Methods

method AddRequestHeaders(service As %SOAP.WebBase, credentials As %SYS.X509Credentials, interval As %Integer)
Add request headers.
  • SOAP addressing headers will be created and added.
  • product header will be as supplied by caller by setting product property.
  • user header will be as supplied by caller by setting product property.
  • timestamp and signature headers will be created by this method.
AddRequestHeaders interface:
  • The service argument is required and is the web client or service for which to add the headers.
  • The credentials argument is the X.509 credentials object used for signing. See %SYS.X509Credentials class documentation for details.
  • The optional interval argument is used to create the timestamp header, if the optional expires field is desired.
method AddResponseHeaders(service As %SOAP.WebBase, credentials As %SYS.X509Credentials)
Add response headers.
  • SOAP addressing headers will be created and added.
  • product header will be as supplied by caller by setting product property.
  • signature header will be created by this method.
AddResponseHeaders interface:
  • The service argument is required and is the web client or service for which to add the headers.
  • The credentials argument is the X.509 credentials object used for signing. See %SYS.X509Credentials class documentation for details.
method ValidateHeaders(service As %SOAP.WebBase) as %Status
Validate the signature and other PCEHRHeader required headers.
If called from a web service, a fault is issued in case of error and this method does not return.
If called from a web client, a %Status is returned in case of error.
In order to valdate the headers the web service or client must be told to import the headers.
Web service needs request headers defined in SOAPHEADERS parameter

Parameter SOAPHEADERS =    "signature:%Standards.AU.eHealth.PCEHR.SignatureContainerType,User:%Standards.AU.eHealth.PCEHR.UserType,ihiNumber:%Standards.AU.eHealth.PCEHR.ihiNumber,productType:%Standards.AU.eHealth.PCEHR.ProductType,clientSystemType:%Standards.AU.eHealth.PCEHR.clientsystemType,accessingOrganisation:%Standards.AU.eHealth.PCEHR.accessingOrganisation,timestamp:%Standards.AU.eHealth.PCEHR.TimestampType"
Web client needs response headers defined in SOAPHEADERS parameter
Parameter SOAPHEADERS =    "signature:%Standards.AU.eHealth.PCEHR.SignatureContainerType"

Inherited Members

Inherited Methods

FeedbackOpens in a new tab