Skip to main content

HS.IHE.XDSb.DocumentSource.Operations

class HS.IHE.XDSb.DocumentSource.Operations extends HS.IHE.XDSb.DocumentSource.Abstract, HS.Util.SOAPClient.Operations

IHE XDSb Document Source Actor Given a CDA stream extract relevant data and build ProvideAndRegister transaction

Property Inventory

Method Inventory

Parameters

parameter INVOCATION = Queue;
Inherited description: 2 modes: Queue, InProc
parameter SETTINGS = XDSbRepositoryServiceName:Basic:selector?Select=1&context={HS.Util.ContextSearch/ServiceNameItems},XDSbRegistryServiceName:Basic:selector?Select=1&context={HS.Util.ContextSearch/ServiceNameItems},PIXv3ConsumerOperations,MPIOperations,DocumentTransform,XDSbConsumerOperations,DocumentsInline,AddNewPatients;
Inherited description: List of properties can be set as settings in the configuration file format is a comma separated list of property names

Properties

property DocumentTransform as %String (MAXLEN = 255) [ InitialExpression = "IHE/XDSb/Version1/DocumentToProvideAndRegister.xsl" ];
See %HSHOME%/csp/xslt/IHE/XDSb/Version1/DocumentToProvideAndRegister.xsl for an example
Property methods: DocumentTransformDisplayToLogical(), DocumentTransformGet(), DocumentTransformIsValid(), DocumentTransformLogicalToDisplay(), DocumentTransformLogicalToOdbc(), DocumentTransformNormalize(), DocumentTransformSet()
property PIXv3ConsumerOperations as %String [ InitialExpression = "HS.IHE.PIXv3.Consumer.Operations" ];
The PIXv3 Consumer operation - if the patientId is not defined in the request use the sourceId and query the pix manager
Property methods: PIXv3ConsumerOperationsDisplayToLogical(), PIXv3ConsumerOperationsGet(), PIXv3ConsumerOperationsIsValid(), PIXv3ConsumerOperationsLogicalToDisplay(), PIXv3ConsumerOperationsLogicalToOdbc(), PIXv3ConsumerOperationsNormalize(), PIXv3ConsumerOperationsSet()
property XDSbConsumerOperations as %String [ InitialExpression = "HS.IHE.XDSb.Consumer.Operations" ];
The XDSb Consumer operation - if the document(s) is replacing an other document locate the existing document using a query with the ReplacementContext
Property methods: XDSbConsumerOperationsDisplayToLogical(), XDSbConsumerOperationsGet(), XDSbConsumerOperationsIsValid(), XDSbConsumerOperationsLogicalToDisplay(), XDSbConsumerOperationsLogicalToOdbc(), XDSbConsumerOperationsNormalize(), XDSbConsumerOperationsSet()
property XDSbRegistryServiceName as %String [ InitialExpression = "XDSb.Registry" ];
The XDS.b Registry actor from the HealthShare Service Registry.
Property methods: XDSbRegistryServiceNameDisplayToLogical(), XDSbRegistryServiceNameGet(), XDSbRegistryServiceNameIsValid(), XDSbRegistryServiceNameLogicalToDisplay(), XDSbRegistryServiceNameLogicalToOdbc(), XDSbRegistryServiceNameNormalize(), XDSbRegistryServiceNameSet()
property XDSbRepositoryServiceName as %String [ InitialExpression = "XDSb.Repository" ];
The XDS.b Repository actor from the HealthShare Service Registry.
Property methods: XDSbRepositoryServiceNameDisplayToLogical(), XDSbRepositoryServiceNameGet(), XDSbRepositoryServiceNameIsValid(), XDSbRepositoryServiceNameLogicalToDisplay(), XDSbRepositoryServiceNameLogicalToOdbc(), XDSbRepositoryServiceNameNormalize(), XDSbRepositoryServiceNameSet()

Methods

method AddDemographics(pUpdatedRequest As HS.Message.IHE.XDSb.ProvideAndRegisterRequest, pAddRequest As HS.Message.AddUpdateHubRequest, pDocument As HS.Message.IHE.XDSb.Document, pDocObject As %XML.XPATH.Document) as %Status
method AddDirectHeader(pWebRequest, pRequest) as %Status
method BuildRequest(pInboundRequest As HS.Message.IHE.XDSb.ProvideAndRegisterRequest, pOutboundRequest As HS.Message.XMLMessage, ByRef pUpdatedRequest As HS.Message.IHE.XDSb.ProvideAndRegisterRequest) as %Status
Take the inbound request fetch any missing values and build outbound request
method GetReplacementId(pDocument As HS.Message.IHE.XDSb.Document, pPatientId) as %Status
method OnMessage(pRequest As HS.Message.XMLMessage, Output pResponse As HS.Message.XMLMessage) as %Status
If doing any security related signing the request comes and generated (with a security document as a placeholder), the caller then adds the security document and calls the source again, this time it will be audited and sent to the repository
method XDSbProvideAndRegisterRequest(pRequest As HS.Message.IHE.XDSb.ProvideAndRegisterRequest, Output pResponse As HS.Message.XMLMessage, pWebRequest As %SOAP.WebRequest = ##class(%SOAP.WebRequest).%New()) as %Status
The provide request can set GenerateProvideAndRegisterOnly=1 which will make the response.contentstream have the value which would be sent to the repository this enables using the P&R request for signatures.
method XDSbRegisterRequest(pRequest As HS.Message.IHE.XDSb.RegisterRequest, Output pResponse As HS.Message.XMLMessage) as %Status

Inherited Members

Inherited Properties

Inherited Methods

Subclasses

FeedbackOpens in a new tab