In a previous post, I discussed a product called
BRIDGEWERX, which uses BizTalk server as its COTS middleware engine. In that post is a diagram of the BRIDGEWERX logical component architecture in which you may have noticed a term called dynamic interrogation.
One of the coolest features about BizTalk is that you can dynamically interrogate an application you wish to communicate with on a network and query it to return all of its public (XML) message schemas that can be exchanged with this application. BizTalk uses an adapter that knows how to communicate with BizTalk on one end and the native interface of the application you want to communicate with on the other end. Currently there are dozens of third-party adapters available for BizTalk that use this standard interface mechanism, plus several adapters that come out of the box with BizTalk.
For example, in BizTalk, through the Visual Studio IDE at design time, I can install a BizTalk adapter that can communicate with SAP. Through a properties