...
Code Block |
---|
title | Example Internal Exchange Info File |
---|
|
<?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">
<defaultExchange>adapter</defaultExchange>
<exchanges>
<exchange type="local">
<name>adapter</name>
<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>ServiceName1</ns2:name>
<ns2:endpointConfigurationList>
<ns2:endpointConfiguration>
<ns2:url>https://localhost:8181/CONNECTGateway/GatewayService/ServiceName1Version2</ns2:url>
<ns2:version>2.0</ns2:version>
</ns2:endpointConfiguration>
<ns2:endpointConfiguration>
<ns2:url>https://localhost:8181/CONNECTGateway/GatewayService/ServiceName1Version1</ns2:url>
<ns2:version>1.0</ns2:version>
</ns2:endpointConfiguration>
</ns2:endpointConfigurationList>
</ns2:endpoint>
<ns2:endpoint>
<ns2:name>Service1AdapterName</ns2:name>
<ns2:endpointConfigurationList>
<ns2:endpointConfiguration>
<ns2:url>https://localhost:8181/CONNECTAdapter/Service1Adapter</ns2:url>
<ns2:version>LEVEL_a0</ns2:version>
</ns2:endpointConfiguration>
</ns2:endpointConfigurationList>
</ns2:endpoint>
</ns2:endpointList>
<ns2:targetRegion>US-NY</ns2:targetRegion>
<ns2:targetRegion>US-VA</ns2:targetRegion>
</organization>
</organizationList>
</exchange>
</exchanges>
</exchangeInfo> |
...
In a given internalExchangeInfo.xml there should only be a single Exchange element, which should also be set as the default. As this file only serves as your internal adapter endpoints, there is no support / functionality centered around having multiple internal exchanges.
Exchange Info
...
.
...
The above snippet can be broken down as follows:
Element | Description |
---|
exchangeInfo |
---|
<defaultExchange>adapter</defaultExchange>
|
---|
defaultExchange | The default Exchange to use for the file. This will always be the first (and only, in the case of Internal Exchange Info files) exchange specified in the Exchanges element |
<exchanges> ... </exchanges>exchanges | This will hold your exchange for internal adapter endpoints. There should only be a single <exchange> element contained here at all times |
.Exchanges
...
Element | Description |
---|
<exchange type="local"> | The The breakdown of the schema is as follows:
root element specifying the type of exchange. Will always be of "local" type, as we do not use UDDI or FHIR lookups for internal endpoints.<name>adapter</name> |
|
---|
name | The name of the exchange. This should exactly match the <defaultExchange> element. In the case of the example: "adapter" |
<disabled>true</disabled>disabled | A required schema element for the Exchange Type. This will always be "true" as internal exchanges do not do refresh on a FHIR or UDDI server. |
<lastUpdated></lastUpdated>lastUpdated | A required schema element for the Exchange Type. This should be left blank, as it is not used for any purpose. |
<organizationList>Element | Description |
---|
<ns2:name>Gateway 1</ns2:name> | The orgalizationList | The list of organizations specified by this exchange. Internal Exchange info files will always have 1 organization with the given HCID. |
Organizations
Code Block |
---|
...
<organization>
<ns2:name>Gateway 1</ns2:name>
<ns2:hcid>urn:oid:1.1</ns2:hcid>
<ns2:endpointList>
<ns2:endpoint>
<ns2:name>ServiceName1</ns2:name>
<ns2:endpointConfigurationList>
<ns2:endpointConfiguration>
<ns2:url>https://localhost:8181/CONNECTGateway/GatewayService/ServiceName1Version2</ns2:url>
<ns2:version>2.0</ns2:version>
</ns2:endpointConfiguration>
<ns2:endpointConfiguration>
<ns2:url>https://localhost:8181/CONNECTGateway/GatewayService/ServiceName1Version1</ns2:url>
<ns2:version>1.0</ns2:version>
</ns2:endpointConfiguration>
</ns2:endpointConfigurationList>
</ns2:endpoint>
<ns2:endpoint>
<ns2:name>Service1AdapterName</ns2:name>
<ns2:endpointConfigurationList>
<ns2:endpointConfiguration>
<ns2:url>https://localhost:8181/CONNECTAdapter/Service1Adapter</ns2:url>
<ns2:version>LEVEL_a0</ns2:version>
</ns2:endpointConfiguration>
</ns2:endpointConfigurationList>
</ns2:endpoint>
</ns2:endpointList>
<ns2:targetRegion>US-NY</ns2:targetRegion>
<ns2:targetRegion>US-VA</ns2:targetRegion>
</organization>
... |
organization |
|
---|
ns2:name | The name of the organization. In the case of the example: "Gateway 1" |
<ns2:hcid>urn:oid:1.1</hcid>hcid | The HCID of the given internal organization. This should match the same HCID in your adapter.properties file as well. |
<ns2endpointList>Root element of a given endpoint. Houses information on the given serviceendpointList | The list of services that this organization may have. |
<ns2:endpoint> | ns2:endpoint |
|
---|
ns2:name | The service name to be looked up by CONNECT. The service names must match the service name lookup of CONNECT in order to function as these are not arbitrarily named. For example, the Document Submission secured adapter is "adapterxdrsecured". |
The <endpointConfigurationList> element holds |
ns2:endpointConfigurationList | Holds a list of endpoints for that service |
, as well as the endpoint URL and spec version. CONNECT uses numerical numbers for all proxy layers and |
ns2:endpointConfiguration |
|
---|
ns2:url | The URL of the given endpoint to be used by CONNECt |
ns2:version | the Spec Version of this endpoint. Most service layers are numerically named, whereas adapter layers are often "LEVEL_a0" |
for adapter layers