[507] | 1 | <?xml version="1.0" encoding="UTF-8"?>
|
---|
| 2 | <process
|
---|
| 3 | name="NhincComponentInternalSubDiscovery201302Orch"
|
---|
| 4 | targetNamespace="urn:gov:hhs:fha:nhinc:gateway:nhincinternalorchbpel:nhinccomponentinternalsubdiscovery201302"
|
---|
| 5 | xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
|
---|
| 6 | xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
---|
| 7 | xmlns:sxt="http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/Trace"
|
---|
| 8 | xmlns:sxed="http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/Editor"
|
---|
| 9 | xmlns:sxat="http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/Attachment"
|
---|
| 10 | xmlns:sxeh="http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/ErrorHandling"
|
---|
| 11 | xmlns:tns="urn:gov:hhs:fha:nhinc:gateway:nhincinternalorchbpel:nhinccomponentinternalsubdiscovery201302"
|
---|
| 12 | xmlns:hl7="urn:hl7-org:v3"
|
---|
| 13 | xmlns:ncpc="urn:gov:hhs:fha:nhinc:common:patientcorrelationfacade"
|
---|
| 14 | xmlns:nccommon="urn:gov:hhs:fha:nhinc:common:nhinccommon"
|
---|
| 15 | xmlns:conninfo="urn:gov:hhs:fha:nhinc:common:connectionmanagerinfo"
|
---|
| 16 | xmlns:evtcmn="urn:gov:hhs:fha:nhinc:common:eventcommon"
|
---|
| 17 | xmlns:nccommonadapter="urn:gov:hhs:fha:nhinc:common:nhinccommonadapter"
|
---|
| 18 | xmlns:xacml="urn:oasis:names:tc:xacml:2.0:context:schema:os"
|
---|
| 19 | xmlns:propacc="urn:gov:hhs:fha:nhinc:common:propertyaccess" xmlns:ns0="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
|
---|
| 20 | <import namespace="urn:gov:hhs:fha:nhinc:nhinccomponentinternalsubdiscovery201302orch" location="Interfaces/wsdl/NhincComponentInternalSubDiscovery201302Orch.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
|
---|
| 21 | <import namespace="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" location="Interfaces/wsdl/NhincComponentSubDiscTransforms.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
|
---|
| 22 | <import namespace="urn:gov:hhs:fha:nhinc:componentpatientcorrelationfacade" location="Interfaces/wsdl/NhincComponentPatientCorrelationFacade.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
|
---|
| 23 | <import namespace="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" location="Interfaces/wsdl/NhincComponentConnectionManager.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
|
---|
| 24 | <import namespace="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" location="Interfaces/wsdl/NhincComponentInternalPolicyEngineFacade.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
|
---|
| 25 | <import namespace="urn:gov:hhs:fha:nhinc:adaptermpi" location="Interfaces/wsdl/AdapterMpi.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
|
---|
| 26 | <import namespace="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" location="Interfaces/wsdl/NhincComponentPropAccessor.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
|
---|
| 27 | <partnerLinks>
|
---|
| 28 | <partnerLink name="PolicyEngineFacadePL" xmlns:tns="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" partnerLinkType="tns:NhincComponentInternalPolicyEngineFacade" partnerRole="NhincComponentInternalPolicyEngineFacadePortTypeRole"/>
|
---|
| 29 | <partnerLink name="PropertyAccessorPL" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" partnerLinkType="tns:NhincComponentPropAccessor" partnerRole="NhincComponentPropAccessorPortTypeRole"/>
|
---|
| 30 | <partnerLink name="MpiPL" xmlns:tns="urn:gov:hhs:fha:nhinc:adaptermpi" partnerLinkType="tns:AdapterMpiService" partnerRole="AdapterMpiPortTypeRole"/>
|
---|
| 31 | <partnerLink name="SubDiscDataTransformsPL" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" partnerLinkType="tns:NhincComponentSubDiscTransforms" partnerRole="NhincComponentSubDiscTransformsPortTypeRole"/>
|
---|
| 32 | <partnerLink name="ConnectionMgrPL" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" partnerLinkType="tns:NhincComponentConnectionManager" partnerRole="NhincComponentConnectionManagerPortTypeRole"/>
|
---|
| 33 | <partnerLink name="PatientCorrelationPL" xmlns:tns="urn:gov:hhs:fha:nhinc:componentpatientcorrelationfacade" partnerLinkType="tns:PatientCorrelationFacadePartnerLinkType" partnerRole="PatientCorrelationPortTypeRole"/>
|
---|
| 34 | <partnerLink name="NhincComponentInternalSubDiscOrchPL" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternalsubdiscovery201302orch" partnerLinkType="tns:NhincComponentInternalSubDiscovery201302Orch" myRole="NhincComponentInternalSubDiscovery201302OrchPortTypeRole"/>
|
---|
| 35 | </partnerLinks>
|
---|
| 36 | <variables>
|
---|
| 37 | <variable name="AnnounceRevisedPatientOut" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternalsubdiscovery201302orch" messageType="tns:AnnounceRevisedPatientResponseMessage"/>
|
---|
| 38 | <variable name="AnnounceRevisedPatientIn" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternalsubdiscovery201302orch" messageType="tns:AnnounceRevisedPatientRequestMessage"/>
|
---|
| 39 | </variables>
|
---|
| 40 | <sequence>
|
---|
| 41 | <receive name="ReceiveNhincComponentInternalSubDiscOrch" createInstance="yes" partnerLink="NhincComponentInternalSubDiscOrchPL" operation="AnnounceRevisedPatient" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternalsubdiscovery201302orch" portType="tns:NhincComponentInternalSubDiscovery201302OrchPortType" variable="AnnounceRevisedPatientIn"/>
|
---|
| 42 | <scope name="NhincComponentInternalSubDiscOrchScope">
|
---|
| 43 | <variables>
|
---|
| 44 | <variable name="FindCandidatesOut" xmlns:tns="urn:gov:hhs:fha:nhinc:adaptermpi" messageType="tns:FindCandidatesResponse"/>
|
---|
| 45 | <variable name="FindCandidatesIn" xmlns:tns="urn:gov:hhs:fha:nhinc:adaptermpi" messageType="tns:FindCandidatesRequest"/>
|
---|
| 46 | <variable name="GetLocalHcidPropOut" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" messageType="tns:GetPropertyResponseMessage"/>
|
---|
| 47 | <variable name="GetLocalHcidPropIn" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" messageType="tns:GetPropertyRequestMessage"/>
|
---|
| 48 | <variable name="GetMpiEndPtOut" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" messageType="tns:GetConnectionInfoEndpointByServiceNameResponseMessage"/>
|
---|
| 49 | <variable name="GetMpiEndPtIn" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" messageType="tns:GetConnectionInfoEndpointByServiceNameRequestMessage"/>
|
---|
| 50 | <variable name="Create201305Out" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" messageType="tns:Create201305ResponseMessage"/>
|
---|
| 51 | <variable name="Create201305In" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" messageType="tns:Create201305RequestMessage"/>
|
---|
| 52 | <variable name="CheckPolicySubjectRevisedOut" xmlns:tns="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" messageType="tns:CheckPolicyResponseMessage"/>
|
---|
| 53 | <variable name="CheckPolicySubjectRevisedIn" xmlns:tns="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" messageType="tns:CheckPolicySubjectRevisedRequestMessage"/>
|
---|
| 54 | <variable name="StoreAAToHCIDOut" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" messageType="tns:StoreAssigningAuthorityToHomeCommunityMappingResponseMessage"/>
|
---|
| 55 | <variable name="StoreAAToHCIDIn" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" messageType="tns:StoreAssigningAuthorityToHomeCommunityMappingRequestMessage"/>
|
---|
| 56 | <variable name="localPatId" type="xsd:string"/>
|
---|
| 57 | <variable name="localAssignAuthId" type="xsd:string"/>
|
---|
| 58 | <variable name="CreateAckOut" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" messageType="tns:CreateAckResponseMessage"/>
|
---|
| 59 | <variable name="CreateAckIn" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" messageType="tns:CreateAckRequestMessage"/>
|
---|
| 60 | <variable name="AddPatientCorrelationOut" xmlns:tns="urn:gov:hhs:fha:nhinc:componentpatientcorrelationfacade" messageType="tns:AddPatientCorrelationResponseMessage"/>
|
---|
| 61 | <variable name="AddPatientCorrelationIn" xmlns:tns="urn:gov:hhs:fha:nhinc:componentpatientcorrelationfacade" messageType="tns:AddPatientCorrelationRequestMessage"/>
|
---|
| 62 | </variables>
|
---|
| 63 | <faultHandlers>
|
---|
| 64 | <catch faultName="sxeh:systemFault" faultVariable="systemFaultVar" faultMessageType="sxeh:faultMessage">
|
---|
| 65 | <sequence name="SystemFaultSeq">
|
---|
| 66 | <assign name="AssignFaultAckDte">
|
---|
| 67 | <sxt:trace>
|
---|
| 68 | <sxt:log level="info" location="onStart">
|
---|
| 69 | <from>'NhinComponentInternalSubDiscovery201302Orch.bpel - A system fault was encounterd processing a 201302 message. Fault detials follow...'</from>
|
---|
| 70 | </sxt:log>
|
---|
| 71 | <sxt:log level="warning" location="onStart">
|
---|
| 72 | <from variable="systemFaultVar"/>
|
---|
| 73 | </sxt:log>
|
---|
| 74 | </sxt:trace>
|
---|
| 75 | <copy>
|
---|
| 76 | <from>$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:id</from>
|
---|
| 77 | <to>$CreateAckIn.CreateAckRequest/hl7:origMsgId</to>
|
---|
| 78 | </copy>
|
---|
| 79 | <copy>
|
---|
| 80 | <from>'Error - Internal Gateway Error'</from>
|
---|
| 81 | <to>$CreateAckIn.CreateAckRequest/hl7:msgText</to>
|
---|
| 82 | </copy>
|
---|
| 83 | <copy>
|
---|
| 84 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:receiver/hl7:device/hl7:id/@root)</from>
|
---|
| 85 | <to>$CreateAckIn.CreateAckRequest/hl7:senderOID</to>
|
---|
| 86 | </copy>
|
---|
| 87 | <copy>
|
---|
| 88 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:sender/hl7:device/hl7:id/@root)</from>
|
---|
| 89 | <to>$CreateAckIn.CreateAckRequest/hl7:receiverOID</to>
|
---|
| 90 | </copy>
|
---|
| 91 | </assign>
|
---|
| 92 | <invoke name="InvokeFaultAckDte" partnerLink="SubDiscDataTransformsPL" operation="CreateAck" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" portType="tns:NhincComponentSubDiscTransformsPortType" inputVariable="CreateAckIn" outputVariable="CreateAckOut"/>
|
---|
| 93 | <assign name="AssignFaultInfo">
|
---|
| 94 | <copy>
|
---|
| 95 | <from variable="CreateAckOut" part="CreateAckResponse"/>
|
---|
| 96 | <to variable="AnnounceRevisedPatientOut" part="AnnounceRevisedPatientResponse"/>
|
---|
| 97 | </copy>
|
---|
| 98 | </assign>
|
---|
| 99 | <reply name="ReplyNhincComponentInternalSubDiscOrchFault" partnerLink="NhincComponentInternalSubDiscOrchPL" operation="AnnounceRevisedPatient" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternalsubdiscovery201302orch" portType="tns:NhincComponentInternalSubDiscovery201302OrchPortType" variable="AnnounceRevisedPatientOut"/>
|
---|
| 100 | <exit name="ExitAfterFaultReturn"/>
|
---|
| 101 | </sequence>
|
---|
| 102 | </catch>
|
---|
| 103 | </faultHandlers>
|
---|
| 104 | <sequence name="NhincComponentInternalSubDiscOrchSequence">
|
---|
| 105 | <!-- <assign name="AssignPolicyEngineInput">
|
---|
| 106 | <copy>
|
---|
| 107 | <from variable="AnnounceRevisedPatientIn" part="AnnounceRevisedPatientRequest"/>
|
---|
| 108 | <to>$CheckPolicySubjectRevisedIn.CheckPolicySubjectRevisedRequest/evtcmn:message</to>
|
---|
| 109 | </copy>
|
---|
| 110 | <copy>
|
---|
| 111 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:sender/hl7:device/hl7:id/@root)</from>
|
---|
| 112 | <to>$CheckPolicySubjectRevisedIn.CheckPolicySubjectRevisedRequest/evtcmn:sendingHomeCommunity/nccommon:homeCommunityId</to>
|
---|
| 113 | </copy>
|
---|
| 114 | <copy>
|
---|
| 115 | <from>'Inbound'</from>
|
---|
| 116 | <to>$CheckPolicySubjectRevisedIn.CheckPolicySubjectRevisedRequest/evtcmn:direction</to>
|
---|
| 117 | </copy>
|
---|
| 118 | </assign>
|
---|
| 119 | <invoke name="InvokePolicyEngine" partnerLink="PolicyEngineFacadePL" operation="CheckPolicySubjectRevised" xmlns:tns="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" portType="tns:NhincComponentInternalPolicyEngineFacadePortType" inputVariable="CheckPolicySubjectRevisedIn" outputVariable="CheckPolicySubjectRevisedOut"/>
|
---|
| 120 | <if name="IfPolicyValid">
|
---|
| 121 | <condition>'Permit' = $CheckPolicySubjectRevisedOut.CheckPolicyResponse/nccommonadapter:response/xacml:Result/xacml:Decision</condition>
|
---|
| 122 | -->
|
---|
| 123 | <sequence name="ValidPolicySeq">
|
---|
| 124 | <!-- For now assume 1 id per asOtherIds and that only SSN
|
---|
| 125 | and remote Patient Id would be included.
|
---|
| 126 | Will need to revisit, may want to replace
|
---|
| 127 | with a call to the MPI instead -->
|
---|
| 128 | <assign name="AssignStoreAAToHcid">
|
---|
| 129 | <copy>
|
---|
| 130 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:id/@root)</from>
|
---|
| 131 | <to>$StoreAAToHCIDIn.StoreAssigningAuthorityToHomeCommunityMappingRequest/conninfo:AssigningAuthority/nccommon:assigningAuthorityId</to>
|
---|
| 132 | </copy>
|
---|
| 133 | <copy>
|
---|
| 134 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:sender/hl7:device/hl7:id/@root)</from>
|
---|
| 135 | <to>$StoreAAToHCIDIn.StoreAssigningAuthorityToHomeCommunityMappingRequest/conninfo:HomeCommunity/nccommon:homeCommunityId</to>
|
---|
| 136 | </copy>
|
---|
| 137 | </assign>
|
---|
| 138 | <invoke name="InvokeStoreAAToHcid" partnerLink="ConnectionMgrPL" operation="StoreAssigningAuthorityToHomeCommunityMapping" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" portType="tns:NhincComponentConnectionManagerPortType" inputVariable="StoreAAToHCIDIn" outputVariable="StoreAAToHCIDOut"/>
|
---|
| 139 | <assign name="AssignGetLocalHcid">
|
---|
| 140 | <copy>
|
---|
| 141 | <from>'gateway'</from>
|
---|
| 142 | <to>$GetLocalHcidPropIn.GetPropertyRequest/propacc:propertyFile</to>
|
---|
| 143 | </copy>
|
---|
| 144 | <copy>
|
---|
| 145 | <from>'localHomeCommunityId'</from>
|
---|
| 146 | <to>$GetLocalHcidPropIn.GetPropertyRequest/propacc:propertyName</to>
|
---|
| 147 | </copy>
|
---|
| 148 | </assign>
|
---|
| 149 | <invoke name="InvokeGetLocalHcid" partnerLink="PropertyAccessorPL" operation="GetProperty" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" portType="tns:NhincComponentPropAccessorPortType" inputVariable="GetLocalHcidPropIn" outputVariable="GetLocalHcidPropOut"/>
|
---|
| 150 | <assign name="AssignCreate201305">
|
---|
| 151 | <copy>
|
---|
| 152 | <from>$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:id</from>
|
---|
| 153 | <to>$Create201305In.Create201305Request/hl7:PRPA201301Patient/hl7:id</to>
|
---|
| 154 | </copy>
|
---|
| 155 | <copy>
|
---|
| 156 | <from>$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:name</from>
|
---|
| 157 | <to>$Create201305In.Create201305Request/hl7:PRPA201301Patient/hl7:patientPerson/hl7:name</to>
|
---|
| 158 | </copy>
|
---|
| 159 | <copy>
|
---|
| 160 | <from>$GetLocalHcidPropOut.GetPropertyResponse/propacc:propertyValue</from>
|
---|
| 161 | <to>$Create201305In.Create201305Request/hl7:senderOID</to>
|
---|
| 162 | </copy>
|
---|
| 163 | <copy>
|
---|
| 164 | <from>$GetLocalHcidPropOut.GetPropertyResponse/propacc:propertyValue</from>
|
---|
| 165 | <to>$Create201305In.Create201305Request/hl7:receiverOID</to>
|
---|
| 166 | </copy>
|
---|
| 167 | </assign>
|
---|
| 168 | <invoke name="InvokeCreate201305" partnerLink="SubDiscDataTransformsPL" operation="Create201305" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" portType="tns:NhincComponentSubDiscTransformsPortType" inputVariable="Create201305In" outputVariable="Create201305Out"/>
|
---|
| 169 | <assign name="AssignGetMpiEndPt">
|
---|
| 170 | <copy>
|
---|
| 171 | <from>$GetLocalHcidPropOut.GetPropertyResponse/propacc:propertyValue</from>
|
---|
| 172 | <to>$GetMpiEndPtIn.GetConnectionInfoEndpointByServiceNameRequest/conninfo:homeCommunityWithServiceName/conninfo:homeCommunity/nccommon:homeCommunityId</to>
|
---|
| 173 | </copy>
|
---|
| 174 | <copy>
|
---|
| 175 | <from>'mpi'</from>
|
---|
| 176 | <to>$GetMpiEndPtIn.GetConnectionInfoEndpointByServiceNameRequest/conninfo:homeCommunityWithServiceName/conninfo:serviceName</to>
|
---|
| 177 | </copy>
|
---|
| 178 | </assign>
|
---|
| 179 | <invoke name="InvokeGetMpiEndPt" partnerLink="ConnectionMgrPL" operation="GetConnectionInfoEndpointByServiceName" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" portType="tns:NhincComponentConnectionManagerPortType" inputVariable="GetMpiEndPtIn" outputVariable="GetMpiEndPtOut"/>
|
---|
| 180 | <assign name="AssignMpi">
|
---|
| 181 | <copy>
|
---|
| 182 | <from>$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:assertion</from>
|
---|
| 183 | <to>$FindCandidatesIn.FindCandidatesRequest/hl7:assertion</to>
|
---|
| 184 | </copy>
|
---|
| 185 | <copy>
|
---|
| 186 | <from variable="Create201305Out" part="Create201305Response"/>
|
---|
| 187 | <to>$FindCandidatesIn.FindCandidatesRequest/hl7:PRPA_IN201305UV</to>
|
---|
| 188 | </copy>
|
---|
| 189 | <copy>
|
---|
| 190 | <from>ns0:doXslTransform('urn:stylesheets:wrap2serviceref.xsl', $GetMpiEndPtOut.ConnectionInfoEndpoint/conninfo:serviceConnectionInfoEndpoints/conninfo:serviceConnectionInfoEndpoint/nccommon:EPR/nccommon:EndpointReference)</from>
|
---|
| 191 | <to partnerLink="MpiPL"/>
|
---|
| 192 | </copy>
|
---|
| 193 | </assign>
|
---|
| 194 | <invoke name="InvokeMpi" partnerLink="MpiPL" operation="FindCandidates" xmlns:tns="urn:gov:hhs:fha:nhinc:adaptermpi" portType="tns:AdapterMpiPortType" inputVariable="FindCandidatesIn" outputVariable="FindCandidatesOut"/>
|
---|
| 195 | <if name="IfPatientFound">
|
---|
| 196 | <condition>$Create201305Out.Create201305Response/hl7:controlActProcess != 0</condition>
|
---|
| 197 | <forEach name="ForEachOtherId" parallel="no" counterName="OtherIdCtr">
|
---|
| 198 | <startCounterValue>1</startCounterValue>
|
---|
| 199 | <finalCounterValue>count($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:asOtherIDs)</finalCounterValue>
|
---|
| 200 | <scope name="localPatIdSearchScope">
|
---|
| 201 | <if name="IfMatch">
|
---|
| 202 | <condition>$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:asOtherIDs/hl7:id/@root = $FindCandidatesOut.FindCandidatesResponse/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:id/@root and $AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:asOtherIDs/hl7:id/@extension = $FindCandidatesOut.FindCandidatesResponse/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:id/@extension</condition>
|
---|
| 203 | <sequence name="PatientIdMatchSeq">
|
---|
| 204 | <assign name="AssignLocalPatId">
|
---|
| 205 | <copy>
|
---|
| 206 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:asOtherIDs[$OtherIdCtr]/hl7:id/@root)
|
---|
| 207 | <sxed:editor>
|
---|
| 208 | <sxed:predicate path="$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:asOtherIDs[$OtherIdCtr]" source="from"/>
|
---|
| 209 | </sxed:editor>
|
---|
| 210 | </from>
|
---|
| 211 | <to variable="localAssignAuthId"/>
|
---|
| 212 | </copy>
|
---|
| 213 | <copy>
|
---|
| 214 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:asOtherIDs[$OtherIdCtr]/hl7:id/@extension)
|
---|
| 215 | <sxed:editor>
|
---|
| 216 | <sxed:predicate path="$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:asOtherIDs[$OtherIdCtr]" source="from"/>
|
---|
| 217 | </sxed:editor>
|
---|
| 218 | </from>
|
---|
| 219 | <to variable="localPatId"/>
|
---|
| 220 | </copy>
|
---|
| 221 | </assign>
|
---|
| 222 | <assign name="AssignPatientCorrelation">
|
---|
| 223 | <copy>
|
---|
| 224 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:asOtherIDs/hl7:id/@root)</from>
|
---|
| 225 | <to>$AddPatientCorrelationIn.AddPatientCorrelationRequest/ncpc:QualifiedPatientIdentifier[1]/nccommon:AssigningAuthorityIdentifier</to>
|
---|
| 226 | </copy>
|
---|
| 227 | <copy>
|
---|
| 228 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:patientPerson/hl7:asOtherIDs/hl7:id/@extension)</from>
|
---|
| 229 | <to>$AddPatientCorrelationIn.AddPatientCorrelationRequest/ncpc:QualifiedPatientIdentifier[1]/nccommon:SubjectIdentifier</to>
|
---|
| 230 | </copy>
|
---|
| 231 | <copy>
|
---|
| 232 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:id/@root)</from>
|
---|
| 233 | <to>$AddPatientCorrelationIn.AddPatientCorrelationRequest/ncpc:QualifiedPatientIdentifier[2]/nccommon:AssigningAuthorityIdentifier</to>
|
---|
| 234 | </copy>
|
---|
| 235 | <copy>
|
---|
| 236 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:controlActProcess/hl7:subject/hl7:registrationEvent/hl7:subject1/hl7:patient/hl7:id/@extension)</from>
|
---|
| 237 | <to>$AddPatientCorrelationIn.AddPatientCorrelationRequest/ncpc:QualifiedPatientIdentifier[2]/nccommon:SubjectIdentifier</to>
|
---|
| 238 | </copy>
|
---|
| 239 | <copy>
|
---|
| 240 | <from variable="localPatId"/>
|
---|
| 241 | <to>$AddPatientCorrelationIn.AddPatientCorrelationRequest/ncpc:QualifiedPatientIdentifier[1]/nccommon:SubjectIdentifier
|
---|
| 242 | <sxed:editor>
|
---|
| 243 | <sxed:predicate path="$AddPatientCorrelationIn.AddPatientCorrelationRequest/ncpc:QualifiedPatientIdentifierPair/ncpc:QualifiedPatientIdentifier[1]" source="to"/>
|
---|
| 244 | </sxed:editor>
|
---|
| 245 | </to>
|
---|
| 246 | </copy>
|
---|
| 247 | <copy>
|
---|
| 248 | <from variable="localAssignAuthId"/>
|
---|
| 249 | <to>$AddPatientCorrelationIn.AddPatientCorrelationRequest/ncpc:QualifiedPatientIdentifier[1]/nccommon:AssigningAuthorityIdentifier
|
---|
| 250 | <sxed:editor>
|
---|
| 251 | <sxed:predicate path="$AddPatientCorrelationIn.AddPatientCorrelationRequest/ncpc:QualifiedPatientIdentifierPair/ncpc:QualifiedPatientIdentifier[1]" source="to"/>
|
---|
| 252 | </sxed:editor>
|
---|
| 253 | </to>
|
---|
| 254 | </copy>
|
---|
| 255 | </assign>
|
---|
| 256 | <invoke name="InvokePatientCorrelation" partnerLink="PatientCorrelationPL" operation="AddPatientCorrelation" xmlns:tns="urn:gov:hhs:fha:nhinc:componentpatientcorrelationfacade" portType="tns:PatientCorrelationFacadePortType" inputVariable="AddPatientCorrelationIn" outputVariable="AddPatientCorrelationOut"/>
|
---|
| 257 | <assign name="AssignSuccessAckDte">
|
---|
| 258 | <copy>
|
---|
| 259 | <from>$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:id</from>
|
---|
| 260 | <to>$CreateAckIn.CreateAckRequest/hl7:origMsgId</to>
|
---|
| 261 | </copy>
|
---|
| 262 | <copy>
|
---|
| 263 | <from>'Success'</from>
|
---|
| 264 | <to>$CreateAckIn.CreateAckRequest/hl7:msgText</to>
|
---|
| 265 | </copy>
|
---|
| 266 | <copy>
|
---|
| 267 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:receiver/hl7:device/hl7:id/@root)</from>
|
---|
| 268 | <to>$CreateAckIn.CreateAckRequest/hl7:senderOID</to>
|
---|
| 269 | </copy>
|
---|
| 270 | <copy>
|
---|
| 271 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:sender/hl7:device/hl7:id/@root)</from>
|
---|
| 272 | <to>$CreateAckIn.CreateAckRequest/hl7:receiverOID</to>
|
---|
| 273 | </copy>
|
---|
| 274 | </assign>
|
---|
| 275 | <invoke name="InvokeSuccessAckDte" partnerLink="SubDiscDataTransformsPL" operation="CreateAck" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" portType="tns:NhincComponentSubDiscTransformsPortType" inputVariable="CreateAckIn" outputVariable="CreateAckOut"/>
|
---|
| 276 | </sequence>
|
---|
| 277 | <else>
|
---|
| 278 | <sequence name="PatientIdsDoNotMatchSeq">
|
---|
| 279 | <assign name="AssignCreatePatIdsNoMatchAck">
|
---|
| 280 | <copy>
|
---|
| 281 | <from>'Patient Not Found'</from>
|
---|
| 282 | <to>$CreateAckIn.CreateAckRequest/hl7:msgText</to>
|
---|
| 283 | </copy>
|
---|
| 284 | <copy>
|
---|
| 285 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:receiver/hl7:device/hl7:id/@root)</from>
|
---|
| 286 | <to>$CreateAckIn.CreateAckRequest/hl7:senderOID</to>
|
---|
| 287 | </copy>
|
---|
| 288 | <copy>
|
---|
| 289 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:sender/hl7:device/hl7:id/@root)</from>
|
---|
| 290 | <to>$CreateAckIn.CreateAckRequest/hl7:receiverOID</to>
|
---|
| 291 | </copy>
|
---|
| 292 | <copy>
|
---|
| 293 | <from>$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:id</from>
|
---|
| 294 | <to>$CreateAckIn.CreateAckRequest/hl7:origMsgId</to>
|
---|
| 295 | </copy>
|
---|
| 296 | </assign>
|
---|
| 297 | <invoke name="InvokeCreatePatIdsNoMatchAck" partnerLink="SubDiscDataTransformsPL" operation="CreateAck" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" portType="tns:NhincComponentSubDiscTransformsPortType" inputVariable="CreateAckIn" outputVariable="CreateAckOut"/>
|
---|
| 298 | </sequence>
|
---|
| 299 | </else>
|
---|
| 300 | </if>
|
---|
| 301 | </scope>
|
---|
| 302 | </forEach>
|
---|
| 303 | <else>
|
---|
| 304 | <sequence name="PatientNotFoundSeq">
|
---|
| 305 | <assign name="AssignCreatePatientNotFoundAck">
|
---|
| 306 | <copy>
|
---|
| 307 | <from>$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:id</from>
|
---|
| 308 | <to>$CreateAckIn.CreateAckRequest/hl7:origMsgId</to>
|
---|
| 309 | </copy>
|
---|
| 310 | <copy>
|
---|
| 311 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:receiver/hl7:device/hl7:id/@root)</from>
|
---|
| 312 | <to>$CreateAckIn.CreateAckRequest/hl7:senderOID</to>
|
---|
| 313 | </copy>
|
---|
| 314 | <copy>
|
---|
| 315 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:sender/hl7:device/hl7:id/@root)</from>
|
---|
| 316 | <to>$CreateAckIn.CreateAckRequest/hl7:receiverOID</to>
|
---|
| 317 | </copy>
|
---|
| 318 | <copy>
|
---|
| 319 | <from>'Patient Not Found'</from>
|
---|
| 320 | <to>$CreateAckIn.CreateAckRequest/hl7:msgText</to>
|
---|
| 321 | </copy>
|
---|
| 322 | </assign>
|
---|
| 323 | <invoke name="InvokeCreatePatientNotFoundAck" partnerLink="SubDiscDataTransformsPL" operation="CreateAck" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" portType="tns:NhincComponentSubDiscTransformsPortType" inputVariable="CreateAckIn" outputVariable="CreateAckOut"/>
|
---|
| 324 | </sequence>
|
---|
| 325 | </else>
|
---|
| 326 | </if>
|
---|
| 327 | </sequence>
|
---|
| 328 |
|
---|
| 329 | <!-- <else>
|
---|
| 330 | <sequence name="InvalidPolicySeq">
|
---|
| 331 | <assign name="AssignPolicyInvalidAckDte">
|
---|
| 332 | <copy>
|
---|
| 333 | <from>$AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:id</from>
|
---|
| 334 | <to>$CreateAckIn.CreateAckRequest/hl7:origMsgId</to>
|
---|
| 335 | </copy>
|
---|
| 336 | <copy>
|
---|
| 337 | <from>'Error - Policy Check Failed'</from>
|
---|
| 338 | <to>$CreateAckIn.CreateAckRequest/hl7:msgText</to>
|
---|
| 339 | </copy>
|
---|
| 340 | <copy>
|
---|
| 341 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:receiver/hl7:device/hl7:id/@root)</from>
|
---|
| 342 | <to>$CreateAckIn.CreateAckRequest/hl7:senderOID</to>
|
---|
| 343 | </copy>
|
---|
| 344 | <copy>
|
---|
| 345 | <from>string($AnnounceRevisedPatientIn.AnnounceRevisedPatientRequest/hl7:PRPA_IN201302UV/hl7:sender/hl7:device/hl7:id/@root)</from>
|
---|
| 346 | <to>$CreateAckIn.CreateAckRequest/hl7:receiverOID</to>
|
---|
| 347 | </copy>
|
---|
| 348 | </assign>
|
---|
| 349 | <invoke name="InvokePolicyInvalidAckDte" partnerLink="SubDiscDataTransformsPL" operation="CreateAck" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentsubdisctransforms" portType="tns:NhincComponentSubDiscTransformsPortType" inputVariable="CreateAckIn" outputVariable="CreateAckOut"/>
|
---|
| 350 | </sequence>
|
---|
| 351 | </else>
|
---|
| 352 | </if> -->
|
---|
| 353 | <assign name="AssignResp">
|
---|
| 354 | <copy>
|
---|
| 355 | <from variable="CreateAckOut" part="CreateAckResponse"/>
|
---|
| 356 | <to variable="AnnounceRevisedPatientOut" part="AnnounceRevisedPatientResponse"/>
|
---|
| 357 | </copy>
|
---|
| 358 | </assign>
|
---|
| 359 | </sequence>
|
---|
| 360 | </scope>
|
---|
| 361 | <reply name="ReplyNhincComponentInternalSubDiscOrch" partnerLink="NhincComponentInternalSubDiscOrchPL" operation="AnnounceRevisedPatient" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternalsubdiscovery201302orch" portType="tns:NhincComponentInternalSubDiscovery201302OrchPortType" variable="AnnounceRevisedPatientOut"/>
|
---|
| 362 | </sequence>
|
---|
| 363 | </process>
|
---|