AIA and SOA are all based on industry standards that have developed over the last 10-15 years. Several of the key standards were Java and XML.
With the advent of the World Wide Web there was a whole new emphasis on sharing information through the Internet. Everywhere developers were trying to come up with common ways to do this using Java.
Service Oriented Architecture (SOA) was an eventual outcome of the idea of building re-usable building blocks of programming code (usually in Java).
These shared blocks of code in the Web World became known as Services and were usually executing on a Web Server. They were originally considered “Web” services but over time that changed to include other languages and non-web environments.
At the same time HTML (HyperText Markup Language) was becoming popular because of the World Wide Web and developers saw the potential to use a variant, called XML (Extended Markup Language) for sharing information between Services.
XML is an easy way to describe sets of information in a language friendly method. XML is nice because you can define anything you want and transmit it as a set of characters. A good piece of XML includes both the data and descriptions of what the data is. That’s different from traditional transactions which only include the data. Here’s an XML example.

As you can see this is a “note” to Lou Ann from Robert. Each data field is delimited by a bracketed field name. If it were an true email it would have definitely many more data elements like email addresses, dates, etc.. But as you can see the XML does a good job of describing what is being sent and then providing the actual data. It’s human readable which is also a nice feature.
Once XML became popular other things were built on top of it using the same concept. One was WSDL(“wisdull”). Web Services Definition Language is an XML document that describes what a Service is and what it does and what it requires. Think of it as a resume’ for a Service.
If you want to talk to a Service you ask for it’s WSDL and then you know all of the important details about it. But what if the Service is not Java or some modern language? What if it was Cobol? No problem.
If you have a Cobol program that accepts input, does some function and provides a result you can make it look like a Service as well. That would require WSIF or Web Services Invocation Framework. This is a Java Applications Programming Interface (API) that allows non-Java formats to work with other Services.
Soon other XML-based solutions came along like SOAP (Simple Object Access Protocol) which is a way to send messages between Services using XML.
The combination of Java and XML was a real change agent for sharing information both inside organizations using their IntrAnet and with partners using the Internet.
Now, let’s see if we can get back closer to the topic of AIA by understanding more about SOA.