I think I side with Gudge in this discussion. Marc, perhaps the following
example will clarify the concern. Let's say we adopt Gudge's rule of
1-to-1 between xbinc:Include and parts in the "related" group. What's the
rule for intermediaries? Simple: the content is logically in the
Infoset. Let's assume a header with MTOM content is not removed at the
intermediary. If you go out over a non-MTOM binding, you send the
characters (or whatever your binding does.) If you go over an MTOM
binding, then you MAY continue to carry the binary as a part (or MAY fail
to optimize on the 2nd hop.) The two bindings MAY conspire to optimize
the copying of bytes from the inbound stream to the outbound. Now, let's
assume the header is removed: the rule is very clear, even if the
outbound binding is MTOM, there clearly MUST NOT be a part corresponding
to the received binary. So with Gudge's rule, the SOAP processing model
tells you exactly what to do.
Now consider what happens if we allow parts not referenced by the SOAP
envelope into the "related" package. How do we know what do do with them
at intermediaries? How do we know whether to sign them with a dsig? Etc.,
etc.
I have mixed feelings about whether to allow multiple xbinc:Includes to
reference a single part, but can easily live with our decision of
yesterday to say "only one reference per part". I quite strongly feel
that Gudge is right that the value of MTOM/PASWA is that most all
semantically interesting message content is logically in the envelope
Infoset.
--------------------------------------
Noah Mendelsohn
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.