...
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<exchangeInfo xmlns="urn:gov:hhs:fha:nhinc:exchange" xmlns:ns2="urn:gov:hhs:fha:nhinc:exchange:directory">
<refreshInterval>1440</refreshInterval>
<maxNumberOfBackups>1</maxNumberOfBackups>
<defaultExchange>Exchange 1</defaultExchange>
<exchanges>
<exchange type="uddi">
<name>Exchange 1</name>
<url>https://YourUDDIExchangeUrl/</url>
<disabled>true</disabled>
<lastUpdated></lastUpdated>
<organizationList>
<organization>
<ns2:name>Gateway 1</ns2:name>
<ns2:hcid>urn:oid:1.1</ns2:hcid>
<ns2:endpointList>
<ns2:endpoint>
<ns2:name>QueryForDocuments</ns2:name>
<ns2:endpointConfigurationList>
<ns2:endpointConfiguration>
<ns2:url>https://localhost:8181/Gateway/DocumentQuery/2_0/NhinService/RespondingGateway_Query_Service/DocQuery</ns2:url>
<ns2:version>2.0</ns2:version>
</ns2:endpointConfiguration>
<ns2:endpointConfiguration>
<ns2:url>https://localhost:8181/Gateway/DocumentQuery/3_0/NhinService/RespondingGateway_Query_Service/DocQuery</ns2:url>
<ns2:version>3.0</ns2:version>
</ns2:endpointConfiguration>
</ns2:endpointConfigurationList>
</ns2:endpoint>
</ns2:endpointList>
</organization>
</organizationList>
</exchange>
<exchange type="fhir">
<name>Exchange 2</name>
<url>https://YourFhirDirectoryServer/Organization/?_format=json</url>
<disabled>true</disabled>
<lastUpdated></lastUpdated>
</exchange>
</exchanges>
</exchangeInfo>
|
...
When a request is triggered, CONNECT will scan through the override entries first in locating endpoints
...
language | xml |
---|---|
title | Sample exchangeInfo.xml with overrides Exchange Type |
collapse | true |
...
. If an entry exists that matches the HCID, service type and spec version*, the corresponding service URL (if defined) will be used as the target endpoint. If no match is made or no service URL is defined, CONNECT will continue with normal endpoint lookup processing. The following is a summary of the override process from a code perspective:
- HCID, service type and spec version must match exactly for override to occur
- If an HCID is matched but there is no exact match based on service type or spec version, a new endpoint will be "created" as long as a service URL is defined
- If there is no exact match based on HCID, nothing will be done
Scenario | Result |
---|---|
HCID match, Service type match, spec version match | Existing endpoint is overridden with the service URL provided (no processing if service URL is not defined) |
HCID match, Service type match, spec version NO match | New endpoint is created IF spec version AND service URL is provided Nothing to process if spec version and/or service URL is not provided |
HCID match, Service type NO match | New endpoint is created IF spec version AND service URL is provided Nothing to process if spec version and/or service URL is not provided |
HCID NO match | Nothing to process |
*spec version maps to the <version> element in the exchangeInfo.xml and not the <useSpecVersion> element from <nhinTargetCommunities>
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <exchangeInfo xmlns="urn:gov:hhs:fha:nhinc:exchange" xmlns:ns2="urn:gov:hhs:fha:nhinc:exchange:directory"> <refreshInterval>1440</refreshInterval> <maxNumberOfBackups>0</maxNumberOfBackups> <defaultExchange>Exchange 1</defaultExchange> <exchanges> <exchange type="uddi"> .. </exchange> <exchange type="overrides"> <url>https://testurl/uddi/list</url> <organizationList> <ns2:endpointConfigurationList> <organization> <ns2:endpointConfiguration>name>Gateway 2</ns2:name> <ns2:url>https://<<server-url:port>>/Gateway/DocumentQuery/2_0/NhinService/RespondingGateway_Query_Service/DocQuery</ns2:url>hcid>urn:oid:2.2</ns2:hcid> <ns2:endpointList> <ns2:version></ns2:version>endpoint> <<ns2:name>QueryForDocuments</ns2:endpointConfiguration> name> <ns2:endpointConfiguration>endpointConfigurationList> <ns2:url>https<ns2:endpointConfiguration> <ns2:url>https://<<server-url:port>>/Gateway/DocumentQuery/32_0/NhinService/RespondingGateway_Query_Service/DocQuery</ns2:url> <ns2:version></ns2:version> </ns2:endpointConfiguration> </ns2:endpointConfigurationList> <ns2:endpointConfiguration> </ns2:endpoint> <ns2:endpoint> :url>https://<<server-url:port>>/Gateway/DocumentQuery/3_0/NhinService/RespondingGateway_Query_Service/DocQuery</ns2:url> <ns2:name>RetrieveDocuments</ns2:name> <ns2:endpointConfigurationList> </ns2:endpointConfiguration> <ns2:endpointConfiguration> </ns2:endpointConfigurationList> <ns2:url>https://<<server-url:port>>/Gateway/DocumentRetrieve/2_0/NhinService/RespondingGateway_Retrieve_Service/DocRetrieve</ns2:url></ns2:endpoint> <ns2:endpoint> <ns2:version>2.0<name>RetrieveDocuments</ns2:version>name> </ns2:endpointConfiguration><ns2:endpointConfigurationList> <ns2:endpointConfiguration> <ns2:url>https://<<server-url:port>>/Gateway/DocumentRetrieve/32_0/NhinService/RespondingGateway_Retrieve_Service/DocRetrieve</ns2:url> <ns2:version>3version>2.0</ns2:version> </ns2:endpointConfiguration> </ns2:endpointConfigurationList><ns2:endpointConfiguration> < <ns2:url>https://<<server-url:port>>/Gateway/DocumentRetrieve/3_0/NhinService/RespondingGateway_Retrieve_Service/DocRetrieve</ns2:endpoint>url> <ns2:endpoint>version>3.0</ns2:version> <ns2:name>PatientDiscovery<</ns2:name>endpointConfiguration> <ns2</ns2:endpointConfigurationList> <ns2:endpointConfiguration> </ns2:endpoint> <ns2:url>https://<<server-url:port>>/Gateway/PatientDiscovery/1_0/NhinService/NhinPatientDiscovery</ns2:url> endpoint> <ns2:version>1.0<name>PatientDiscovery</ns2:version>name> </ns2:endpointConfiguration><ns2:endpointConfigurationList> <ns2:endpointConfiguration> <ns2:url>https://<<server-url:port>>/Gateway/PatientDiscovery/1_0/NhinService/NhinPatientDiscovery</ns2:url> <ns2:version>2version>1.0</ns2:version> </ns2:endpointConfiguration> </ns2:endpointConfigurationList> <ns2:endpointConfiguration> </ns2:endpoint> <ns2:url>https://<<server-url:port>>/Gateway/PatientDiscovery/1_0/NhinService/NhinPatientDiscovery</ns2:url> <ns2:endpoint> <ns2:name>DocSubmission<version>2.0</ns2:name>version> <ns2:endpointConfigurationList> </ns2:endpointConfiguration> <ns2:endpointConfiguration></ns2:endpointConfigurationList> </ns2:endpoint> <ns2:url>https://<<server-url:port>>/Gateway/DocumentSubmission/1_1/DocumentRepositoryXDR_Service</ns2:url> <ns2:endpoint> <ns2:version>1.1<name>DocSubmission</ns2:version>name> </ns2:endpointConfiguration><ns2:endpointConfigurationList> <ns2:endpointConfiguration> <ns2:url>https://<<server-url:port>>/Gateway/DocumentSubmission/21_01/DocumentRepositoryXDR_Service</ns2:url> <ns2:version>2version>1.0<1</ns2:version> </ns2:endpointConfiguration> </ns2:endpointConfigurationList> <ns2:endpointConfiguration> </ns2:endpoint> <<ns2:url>https://<<server-url:port>>/Gateway/DocumentSubmission/2_0/DocumentRepositoryXDR_Service</ns2:endpointList>url> <ns2:targetRegion>US-NY</ns2:targetRegion> <ns2:targetRegion>US-VA<version>2.0</ns2:targetRegion>version> </organization> </ns2:endpointConfiguration> </organizationList>ns2:endpointConfigurationList> </exchange>ns2:endpoint> </exchanges> </exchangeInfo> |
. If an entry exists that matches the HCID, service type and spec version*, the corresponding service URL (if defined) will be used as the target endpoint. If no match is made or no service URL is defined, CONNECT will continue with normal endpoint lookup processing. The following is a summary of the override process from a code perspective:
- HCID, service type and spec version must match exactly for override to occur
- If an HCID is matched but there is no exact match based on service type or spec version, a new endpoint will be "created" as long as a service URL is defined
- If there is no exact match based on HCID, nothing will be done
...
New endpoint is created IF spec version AND service URL is provided
Nothing to process if spec version and/or service URL is not provided
...
New endpoint is created IF spec version AND service URL is provided
Nothing to process if spec version and/or service URL is not provided
...
ns2:endpointList>
<ns2:targetRegion>US-NY</ns2:targetRegion>
<ns2:targetRegion>US-VA</ns2:targetRegion>
</organization>
</organizationList>
</exchange>
</exchanges>
</exchangeInfo> |
Connection Manager to Exchange Manager conversion
...