- From: <noah_mendelsohn@us.ibm.com>
- Date: Fri, 4 Jun 2004 17:00:31 -0400
- To: "Jonathan Marsh" <jmarsh@microsoft.com>
- Cc: www-ws-desc@w3.org, xml-dist-app@w3.org
Speaking only for myself and not the XMLP WG, my feeling is that XOP/MTOM
are neutral on this question. They explicitly defer to other layers the
decision as to which elements should be optimized, what controls should be
used to make such determination etc., with the one critical caveat that
(of course) the data to be optimized must be in a form which is a
canonical lexical representation of xsd:base64Decimal. Note that, because
XOP/MTOM/SOAP are oblivious to schema validation, I don't think we even
prohibit optimization of an element such as:
<e xsi:type="xsd:string">...legal base64Binary canonical lexical
rep here...</e>
though certain such use is not particularly intended or encouraged. In
short, my tentative view is that the WSDL workgroup should evaluate the
needs of its users, and should provide whatever controls if any are deemed
appropriate.
I would also note some personal preference for making any indications a
hint rather than a requirement. Insofar as all of this is intended as an
optimization, I would think that we ultimately want to leave it to the
implementation to decide whether on balance a given optimization is
desirable. Consider a tag meant to hold an image. There is a range of
overhead in code, data structures, and serialized bytes for creating a
minmimal XOP part and related link. If a particular image happens to be
smaller than most, is it inappropriate to allow an implementation to
decline to optimize it, even if the WSDL suggests optimziation? In
general, I'm a bit concerned about going down a slippery slope of
increasing complexity in defining controls over such optimizations.
Perhaps the right middle ground is to provide a hook that designates
elements that are guaranteed to be in base64 canonical form, and that are
suggested as optimization candidates?
Again, I have no strong personal feelings, except that I believe XOP and
MTOM (as opposed to WSDL) should remain neutral as to how elements to be
optimized are designated.
--------------------------------------
Noah Mendelsohn
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------
"Jonathan Marsh" <jmarsh@microsoft.com>
Sent by: xml-dist-app-request@w3.org
06/04/2004 02:27 PM
To: <xml-dist-app@w3.org>
cc: <www-ws-desc@w3.org>, (bcc: Noah Mendelsohn/Cambridge/IBM)
Subject: Describing which blobs are to be optimized.
The WS Description WG is working through an issue (#207 [1]), which is
XOP-related. As we communicated to you earlier [2], the ability of a
service to accept and transmit XOP can be indicated by indicating the
HTTP Transmission Optimization Feature is in use through the WSDL
feature syntax. This syntax also allows the MTOM feature to be
"required", which we interpret as, the service must be sent a XOP
envelope and media type, though XOP itself doesn't constrain which parts
of the XML within that envelope have been optimized (it could be none).
A question arises ([3] continuing on [4]) that if XOP is required,
whether it further makes sense to say precisely which parts of the
message are to be optimized. As we understand it, this allows a service
to place additional restrictions on the use of XOP beyond what the XOP
spec describes, but not leaving it completely up to the application
layer. These additional restrictions could be along the lines of
"anything marked with an expectedMediaType attribute must be optimized",
to a fine level of granularity through an xop:optimize="true" attribute
on the schema.
The working group has a preference (straw poll 7 to 4 [5]) to indicate
in some fashion which parts must be optimized. However, since you own
the HTTP Transmission Optimization Feature, we wanted to ask you two
questions:
1) Do you feel that such descriptive hints would be useful or is it
contrary to the expected usage patterns of XOP?
2) If it is useful, would you be willing to describe these hints,
including introducing syntax, in the MTOM or XOP specs? (Splitting a
feature and it's descriptive hints across multiple specs seems
suboptimal to us.)
[1] http://www.w3.org/2002/ws/desc/2/06/issues.html#x207
[2] http://lists.w3.org/Archives/Public/www-ws-desc/2004May/0077.html
[3] http://lists.w3.org/Archives/Public/www-ws-desc/2004May/0089.html
[4] http://lists.w3.org/Archives/Public/www-ws-desc/2004Jun/0000.html
[5] http://lists.w3.org/Archives/Public/www-ws-desc/2004Jun/0019.html
Received on Friday, 4 June 2004 17:03:46 UTC