- From: Mark Jones <jones@research.att.com>
- Date: Thu, 10 May 2001 11:01:13 -0400 (EDT)
- To: dug@us.ibm.com, moreau@crf.canon.fr
- Cc: hugo@w3.org, xml-dist-app@w3.org
> To: "Jean-Jacques Moreau" <moreau@crf.canon.fr> > Cc: xml-dist-app@w3.org, hugo@w3.org > From: "Doug Davis" <dug@us.ibm.com> > Date: Wed, 9 May 2001 17:01:17 -0700 > Subject: Re: Untargetted blocks (was Re: Must understand mustUnderstand proposal) > So "None" headers are meant to be skipped in terms of gathering the list > of headers to process since its not supposed to contain "primary" data > but rather "auxiliary" data that is to be used while processing some other > block in the envelope? Well, I guess they wouldn't be picked up anyway > since we're assuming there won't be any actors named "None". The tokens 'None', 'Next', etc. in the Abstract Model are meant to represent abstract values, not concrete syntax. The actual values would be URI's presumably. > OK, so, why wouldn't someone place this auxilary data in the header that > does actually use it or even in the body (if its used by lots of href's) ? If it is used by multiple headers, then placing it in a particular header raises the issue of ensuring that it survives long enough for the other headers that are sharing it. Placing it in the body is (roughly) semantically equivalent to putting it in a header targeted at the final destination. This again suffers from the issue that the final destination actually may not be one of the processors that happens to know/care about this information. The body also appears to be a worse choice from the standpoint of such 'None' blocks being introduced by an intermediary for multiple use downstream -- the SOAP extensibility model uses the header blocks, not the body. > Using headers as placeholders, while probably not disallowed by > the SOAP spec, seems a bit odd to me - but ok - thanks for the > clarification. Semantically, there is information and there are processing directives in XMLP/SOAP messages. There are cases where multiple processing directives want to share the same information. The processing directives are represented by blocks that are implicitly or explicitly targeted at some processor. The informational blocks can be clearly called out as such by using 'None'. I would argue that eventually we will also want control structure or manifest types of blocks that coordinate the processing directives. There may be various dependencies (e.g., some blocks must be or must not be processed before others). These "manifest" blocks would reference targeted headers, throwing faults if violations were detected. This is related to the kind of issues that Noah has been raising and the mustHappen exercise that Gudge has been doing. > -Dug --mark Mark A. Jones AT&T Labs - Research Shannon Laboratory Room A201 180 Park Ave. Florham Park, NJ 07932-0971 email: jones@research.att.com phone: (973) 360-8326 fax: (973) 360-8970
Received on Thursday, 10 May 2001 11:01:23 UTC