On Monday 17 December 2007, Christian Zagrodnick wrote: > a couple of weeks ago there was some discussion about the skin/layer > support for XML-RPC which I implemented without asking (shame on me). > As some time has passed now everybody could have some fresh thoughts > about it.
Since the original implementation and discussion, I had a lot more time to discuss this proposal with Roger (who was heavily in favor of it), think about it, and work on other HTTP-based protocols. Thus, I am now in favor of a solution. It is good that you laid out the implementation details as well. > Let me first summarise: > > * Skin and layers should be seen as typing the request. Well, that's what they actually do. > * There are no general objections against having layers for XML-RPC. I think there were pretty strong objections to layers for XML-RPC and all other non-browser HTTP requests. > * There are objections against using ++skin++ for XML-RPC, ++api++ > would be fine. I think I was against anything typing non-browser related. > Therefore we propose to: > > * Create in zope.publisher.interfaces: > > class IRequestType(zope.interface.interfaces.IInterface): > pass This is good. > * Rename IXMLRPCSkinType to IXMLRPCAPIType(IRequestType) and create a > traverser ++api++ for IXMLRPCApiType. This would not fulfill the use case that Fred brought up in his response to the proposal. I really like his points and his historical considerations. I think, it would be ideal to have one way to specify the request type, maybe through ++type++. If, for legacy reasons, ++skin++ is easier to use, then that's fine with me too. Let's widen our considerations to JSON and REST as well. What do others think? > * Use IRequestType as new base of IBrowserSkinType (instead of IInterface). Okay. > * Do *not* provide any traverser for IRequestType since the traversers > should be close to the “channel†so it is easy to understand what is > happening. If the traverser name is too far fetched we end in confusion > like with skin for xmlrpc. Right, this is very important. The same rule should apply for IBrowserRequest; see the other discussion thread of this mail. Regards, Stephan -- Stephan Richter CBU Physics & Chemistry (B.S.) / Tufts Physics (Ph.D. student) Web2k - Web Software Design, Development and Training _______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )