- From: Hugo Haas <hugo@w3.org>
- Date: Thu, 19 Jul 2001 14:42:38 -0400
- To: "XML Distributed Applications List (E-mail)" <xml-dist-app@w3.org>
Thanks Highland Mary. Here are a few comments (note that figure 1 is still missing, so I did without it). * Mountain, Highland M <highland.m.mountain@intel.com> [2001-07-19 09:03-0700] [..] >1 SMTP Binding Proposal > >1.1.1 Related Documents > > > The Simple Mail Transport Protocol (SMTP) is specified through a > series of RFC documents. Readers of this Transport Binding proposal > should refer primarily to the following documents: [..] RFC821[18] is the specification of the protocol itself. SMTP transfers mail data, which is described in RFC822[12]: >[12]RFC822 STANDARD FOR THE FORMAT OF ARPA INTERNET TEXT MESSAGES [..] >1.1.2 SOAP SMTP Requests > > (Sending an Email Message) > >1.1.2.1 Addressing and Dates > > All email header addresses MUST be RFC 822 compliant email addresses. > > The date header field MUST be RFC 822 compliant date. I think that this is the discussion we just had on the telcon: how much of other specifications should there be in the definition of a binding. Saying that the serialization uses RFC822 should be enough IMHO. [..] >1.1.3.1 Alternatives > > > SOAP Node Processing Distinct from SMTP Delivery Status > > Email Delivery Status is separate from SOAP layer message processing. > Resulting SOAP responses to the contained SOAP data will be processed > through a new email message with no link to the original requesting > email at the SMTP level. > > > SOAP Node Processing Bound to SMTP Delivery Status > > Email Delivery Status is tied and bound to SOAP message-processing > request and the MUA's processing of MDN's is held until the SOAP node > completes processing of the SOAP envelope received. The resulting MDN > will carry information of the success or failure of the SOAP request. > > > Questions for discussion: > > Shall the MUA be tied to the SOAP node regarding MDN processing? There is a similarity here with the 200 OK status code of HTTP. When and on what evidence can the underlying protocol say "ok"? I think that it really depends on what the MUA wants to report. "dispatched" is "ok, I have forwarded that to the SOAP layer". The "processed" status needs a tighter interaction indeed, with the SOAP layer reporting back to the binding that it's done. I was having a look at the abstract model[19] and I am still struggling to see how, in the case of a one-way message, the binding can be notified of the end of the processing. I will have to get back to that. > Shall we use MDN's to notify sender of successful processing of SOAP > data, or shall we have a distinct break between email delivery success > and failure and SOAP message processing success and failure? [..] In my (layered) view, these are two separate things: "dispatched" means that the SOAP layer has been handed the message. "processed" that the SOAP layer did something about it. Do you intend to make this reporting mandatory? I originally had in mind a very simple SMTP binding which was: - stick the message in an RFC822-compliant format. - identify the endpoint with mailto: URI. - send a one-way message. [..] >2.1.1 Notes to SOAP Application Developers > > > Application developers can use the Internet email infrastructure to > move data as either email text or attachments. It is the application > developer's responsibility to parse through the email contents and > pass it to the appropriate software module for processing, potentially > creating a proprietary data exchange format. If the data cargo is > passed as an attachment, verifications have to be made to ensure that > the attachment is of the correct type. There is also the complication > of partial email messages. These occur when an email message is > larger than an email infrastructure allows. The original message is > split up and numbered for reassembly. There is no guarantee that the > partial email messages will be delivered in the proper order. This > creates the need to place the partial messages back in the correct > order and then piece them all together once they arrive. Delays in > email delivery will further complicate development, creating the need > for predefined timeout periods. Am I wrong when I read that as: "The SOAP stuff could be anywhere in the message"? As Chris did in his HTTP binding[20], the message body should be the SOAP message, specified through the Content-Type as defined by RFC2045: Content-Type: application/soap+xml (or whatever is chosen) It could also be specified that other encapsulation mechanisms could be used (e.g. a mime/multipart package). > While SMTP is not a guaranteed delivery protocol, Delivery > Notification mechanisms exist, but also are not guaranteed. Email > users have grown accustom to requesting Delivery Receipts and Read > Receipts for the email messages they send. The underlying protocol > mechanisms are called Delivery Status Notifications (DSN's) and > Message Disposition Notifications (MDN's). These notifications take > the form of email messages sent to the email address specified in the > mail header. Applications, as well as email end users, can use these > mechanisms to provide a status of an email transmission. The > application developer must fully understand the capabilities and > limitations of these Delivery Notifications or risk assuming a data > delivery when none occurred. > > Delivery Status Notifications (DSN's) acknowledge the delivery of an > email message to a destination mailbox on a mail server or MTA. DSN's > are provided through Extended SMTP servers, which have been partially > deployed throughout the industry at the date of this writing. Due to > the partial deployment of ESMTP, a DSN request may be inconclusive if > a non-ESMTP server is found along the email delivery path. DSN's only > notify the sender that the email message has been delivered to the > appropriate mailbox, not that the intended recipient (or application) > has opened the message and processed it. ESMTP servers are mandated > by the protocol to honor DSN requests. I think that this discussion of DSN should be left out, telling people that they can augment the SMTP binding for (more) reliable delivery by using extensions such as DSN. > Message Disposition Notifications (MDN's) acknowledge to the sender > that the intended recipient has received and opened a particular email > message. SMTP, being first and foremost an email protocol, protects > an end user's right to privacy by allowing a mailbox user, at the MUA, > to ignore requests for read/processed return receipts. Put in common > language, a user not wanting others to know when he has opened an > email message, can elect to ignore such request. Application > developers need to understand this potential disregard of MDN requests > while developing SMTP data transmissions. Decisions will have to be > made to handle a no MDN response situation, because it could mean that > MDN replies have been disabled, or it could mean that the email system > did not complete the delivery to the end destination. Again, I think that MDN should be an unspecified extension. One think that should be mentioned is that RFC822 does provide message correlation out of the box. Section 4.6.1 defines the Message-Id header field, and section 4.6.2 defines its counterpart, the In-Reply-To header field. It also provides some sort of "conversational correlation" (i.e. references to several related messages) with the References header field. 12. http://www.ietf.org/rfc/rfc0822.txt?number=822 13. http://www.ietf.org/rfc/rfc2045.txt?number=2045 14. http://www.ietf.org/rfc/rfc2046.txt?number=2046 15. http://www.ietf.org/rfc/rfc1894.txt?number=1894 16. http://www.ietf.org/rfc/rfc2852.txt?number=2852 17. http://www.ietf.org/rfc/rfc2298.txt?number=2298 18. http://www.ietf.org/rfc/rfc0821.txt 19. http://www.w3.org/TR/xmlp-am/#Sec5.1.3 20. http://lists.w3.org/Archives/Public/xml-dist-app/2001Jul/att-0161/01-xmlp-soap-1_2-sect6.html -- Hugo Haas - W3C mailto:hugo@w3.org - http://www.w3.org/People/Hugo/ - tel:+1-617-452-2092
Received on Thursday, 19 July 2001 14:42:38 UTC