Browse Prior Art Database

A System And Method For The Efficient Transfer Of Binary Data Within An XML Document.

IP.com Disclosure Number: IPCOM000189157D
Original Publication Date: 2009-Oct-29
Included in the Prior Art Database: 2009-Oct-29
Document File: 3 page(s) / 66K

Publishing Venue

IBM

Abstract

This publication identifies a method for the efficient storage of XML-based structures, the efficient handling of binary data within an XML document, and a mechanism for the exchange of XML-based documents while avoiding the CPU-intensive overhead associated with document serialization and parsing.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 45% of the total text.

Page 1 of 3

A System And Method For The Efficient Transfer Of Binary Data Within An XML Document.

Disclosed is a system that provides a mechanism for efficiently storing XML-based structures in order to minimize the amount of physical storage needed. It further provides a mechanism for the efficient handling of binary data within an XML document without the need for text encoding. And finally, this invention provides a mechanism for the exchange of XML-based documents while avoiding the CPU-intensive overhead associated with document serialization and parsing.

     Industry standards such as SOAP with Attachments (SwA), XML-binary Optimized Packaging (XOP), and SOAP Message Transmission Optimization Mechanism (MTOM) attempt to solve the issue of text encoding binary data contained within an XML document, especially in the context of XML used in conjunction with SOAP. However, all of these implementations still require the rest of the data to be serialized into a valid XML document, including markup. This creates a message format that uses excessive amounts of storage and CPU cycles to process.

     In the embodiment of this disclosure, an application server provides an infrastructure to allow a user application to easily consume a SOAP-based Web service that resides on a different system. Through the use of an application programming interface (API) call, the application initializes a SOAP consumer handle that acts as a system token, providing access to a specified Web service. This Web service must have been previously defined to the application server environment through a consumer Web service deployment descriptor. The application builds a parameter structure that represents the data to be passed to the Web service, and then calls another API to invoke that service. The application server performs validations on the SOAP consumer handle and any options that were specified by the application as part of the invocation, and then passes the parameter data and any relevant options set by the application to a Web service stub. The Web service stub is responsible for taking the parameter data passed by the application and constructing an XML infoset (i.e., a valid SOAP request message that represents the Web service invocation request). The application server provides a set of XML APIs that allow the application to easily create this XML infoset (e.g., "insertElement", "appendElement"). As elements, attributes, and other content are added to the XML infoset, a set of discontiguous nodes begins to be created that represent what will become the final XML document. See Figure 1.

Figure 1

If the data being added to the XML infoset is binary, not text based, additional

1

[This page contains 1 picture or other non-text object]

Page 2 of 3

APIs may be used by the application to indicate this (e.g., "insertBinaryElement", "appendBinaryElement")....