Hi Dale,

thanks for all your comments and for putting your time on analyzing
these issues. Let's agree on how to resolve the open issues, which you
list below in your summary:

There is an open discussion point on the precise semantics of 'required' -- in the SIP context, it is probably more convenient to mean "required for processing of the containing body part", but in
the e-mail gateway context, it is used to mean "required for the
overall message to be processed".  (The two are equivalent for
non-nested multiparts.)

yes, the current I-D specifies the latter; what has been called "global"
in the email threads. The idea was to be consistent with email. However,
I agree with the conclusions of the email discussions. That is, using
the "local" approach probably makes more sense in a SIP context.

So, if nobody objects, I suggest we specify the following:

multipart/mixed:

o the handling of a multipart/mixed is 'required' if its processing as a
whole is required.

o the handling parameter of a given component inside the multipart/mixed
is set regardless of the handling parameter of the multipart/mixed.

  This rules means that we can have an optional multipart/mixed that has
  required parts in it. *If* and only if the processor decides to
  process the multipart/mixed, then it needs to process the required
  parts.

  It can also happen that we have a required multipart/mixed with all
  its components being optional. This is not a big deal. The only thing
  that could happen is that the processor decides to process the
  multipart/mixed and then it decides not to process any of its parts.
  This of course relates to Paul's point on what it takes to process a
  body part.


multipart/alternative:

o the handling of a multipart/alternative is 'required' if its
processing as a whole is required.

o the handling parameter of a given component inside the
multipart/alternative is irrelevant. We can still recommend that it is
set to optional.

  This rules means that now the multipart/alternative can contain
  multipart/mixed parts that contain required components. This was not
  possible with the rules in the current I-D.

multipart/related:

o the handling of a multipart/related is 'required' if its processing as
  a whole is required.

o the handling of the root element within a multipart/related should
  probably always be required. However, since we support required
  multipart/mixed bodies with only optional components, I suggest we do
  not bother specifying anything here.


My elaborate algorithm is, IMHO, a direct expression of the rules in the I-D, although I've probably added some "it could only mean this" assumptions which should be made explicit. Whether the algorithm itself is given in the I-D is a presentation issue.

I tend to agree with others in that I prefer a declarative
specification. My suggestion would be not to include the algorithm in
the draft.

If the algorithm it too complex to implement, we must simplify the I-D.

I think we should make some statement that multipart/related should not be used unless it is "protected" by some extension-requirement that ensures the recipient can process multipart/related.

the draft already states that. In any case, in one of your previous
emails, you suggested to strengthen the text. I suggest we do this:

OLD:
   Authors wishing
   to make use of 'multipart/related' bodies should keep in mind that
   UAs that do not understand 'multipart/related' will treat it as
   'multipart/mixed'.


NEW:
   Authors wishing
   to make use of 'multipart/related' bodies should keep in mind that
   UAs that do not understand 'multipart/related' will treat it as
   'multipart/mixed'. If such treatment by a recipient is not acceptable
   for a particular extension, the authors of such extension would need
   to make sure (e.g., by using an option-tag or by other means) that
   entities receiving the 'multipart/related' body were able to
   correctly process them.


Cheers,

Gonzalo

_______________________________________________
Sip mailing list  https://www.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [EMAIL PROTECTED] for questions on current sip
Use [EMAIL PROTECTED] for new developments on the application of sip

Reply via email to