(.*)\<\/title\>/si', file_get_contents(__FILE__), $result); $pageTitle = trim($result[1]); $pageURL = "http" . ((!empty($_SERVER['HTTPS'])) ? "s" : "") . "://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; ?>

As mentioned in the XML background, XML can be used for the presentation, communication, and storage of data. This webpage provides an overview of the XML processing to accomplish this.

The figure below illustrates transforming the contents of files, messages, or data from one format to another. Note that the input and output options are the same. This is meant to illustrate that the transformation can be from some non-XML format to XML, from XML to some non-XML format, from some non-XML format to another non-XML format, or from one XML vocabulary to another XML vocabulary. Nevertheless, since this website emphasizes the use of XML in service-oriented architectures, some XML format or message that uses XML will most likely be on one end fo the transformation or the other. This is why it is called "XML processing."

XML Processing

There are many ways to accomplish the transformation. You could use custom programming, a tool that generates code, or a specialized scripting language. More information on some options can be found in the XML resources under the related content heading below.

The basic process is to acquire the input, transform the input, and then render the output in the desired format.

The next figure places XML processing in the context of Web Services and a service-oriented architecture (SOA). The large shared box near the top represents a service that provides or consumes SOAP or REST messages. Note that to provide a message, the service will need to take in possibly multiple inputs, transform those inputs, and render a message. Conversely, the service will need to take in a message, transform the XML in the message into possibly multiple outputs, and then render those outputs. The latter is shown at the right of the large shaded box.

XML Processing for Web Services

Adapters are also shown in this figure using the smaller shaded boxes. Each adapter will need to deal with some non-XML format. It will need to use that non-XML format as input and then transform and render it as XML to be used by the service at the top of the figure. Conversely, the adapter will need to take XML as input from the service and then tranform and render it to some non-XML format. More on adapters.

This figure shows the service and adapters as separate entities in the architecture. Of course, the service and the adapters and all the XML processing could be written as one program. It depends on how you structure your architecture.

Related Online Briefing

You may use this material for your work or classes. Reprint Policy. Be sure to check the menu at the left for other articles available on this site.

The Savvy Manager's Guide

Douglas K Barry is also the author of a book that explains Web Services, service-oriented architecture, and Cloud Computing in an easy-to-understand, non-technical manner.

Web Services, Service-Oriented Architectures, and Cloud Computing: The Savvy Manager's Guide

Web Services, Service-Oriented Architectures, and Cloud Computing: The Savvy Manager's Guide (Second Edition)

by with David Dick

This is a guide for the savvy manager who wants to capitalize on the wave of change that is occurring with Web Services, service-oriented architecture, and—more recently—Cloud Computing. The changes wrought by these technologies will require both a basic grasp of the technologies and an effective way to deal with how these changes will affect the people who build and use the systems in our organizations. This book covers both issues. Managers at all levels of all organizations must be aware of both the changes that we are now seeing and ways to deal with issues created by those changes.