Hi Folks, I realized today that I have been assuming that when one application sends an XML document to another application, the entire XML document is sent.
I know that at the network (IP) layer the XML document might be broken down
into smaller pieces; but at the application layer the entire XML document is
sent and the entire XML document is received. I would like to challenge my assumption. Are there use cases in data exchanges where you want to break up an XML document into parts and send the document in parts, perhaps even send the parts out of order, and the receiving application then stitches the parts back together? Here
is a graphic to illustrate how an XML document might be broken up. And the following graphic shows the order in which the parts might be sent from one application to another: What inspired this question? I am learning about IP. I learned that during transmission an IP packet might be fragmented. To account for this possibility, the IP header contains several data items to enable the recipient to reassemble the
fragments. Back to fragmenting an XML data exchange … have you ever broken apart an XML document when exchanging data? Or, perhaps you deliberately made small XML documents that are intended to be stitched together by the recipient? You might respond that XMPP does this kind of thing. Yes, I realize that. But I think of XMPP as an XML protocol format, not an XML data exchange format.
Not sure that I could articulate the difference between an XML protocol format
and an XML data exchange format. You might respond that XML streaming does this kind of thing. Yes, I realize that as well. But the streamed parts (packets) are always in order, whereas I allow for the case where the parts are not necessarily transmitted in order (just
like IP packets might not arrive in the order they are sent). Thoughts? /Roger |