CAP Meeting Minutes, reported by Pat Egen. WE announced that an upcoming interop test was in the works. It was noted that it will be scheduled for sometime in February (before the March meeting). The chair introduced Bob Mahoney from MIT as the new Co-Chair. There was next a discussion on the Guide to Implementors. Bob asked if anyone read the doc and a few people noted they had done so. He went over the purpose of the document and asked for more feedback, especially from developers. What is missing. This document is in the early versions. Do we need to make a case for the Shoulds. He stated the next steps are to add more feedback. A suggestion was that we really talk about "shoulds". Next we did a CAP draft update. The draft has grammatical errors that we will fix in 3 weeks. There was a discussion about substantial updates. The State diagram has been updated. Added were two commands. Another major addition was SLP - service level protocol. It's not done but major progress has been made. Capability has gone back to the way it was in the original draft. It's a separate command. The copy and paste is incorrect. Other minor changes were made. Schedulable hours may be an issue we need to drop out. Text needs to be worked out. Examples are inconsistent - we need to clean them up and make them consistent and we need better details. What's left. Some schema work needs to be completed and we need to nail vcommand and vcar. We got several comments on calendar wrappers. Someone (?) will send big example to the list. The query subset needs more work. It's modeled after SQL. Queries are non-trivial so we chose sql-like, rather than force implementors to force SQL implementation. We came up with a subset. Need to guarantee that queries look a certain way. Need to put together a small set of queries. It was suggested that if someone has an SQL engine could they use it. Syntax is ical - structure is SQL. There was a broad discussion about putting SQL in place. There still needs to be more work on the definition of Users - there are some definitions that need to be changed/added. Add some examples and have done by 3 weeks. Issues found (Chris Newman): Idle timeout in protocol. Need to add no-op command. Forcing connection to remain open. If you are running under tls connection may be expensive. Authenticate command - need to be able to return data when you have success. Digest command. Need to put it in. DES Level 7.1.3 security. Are we requiring. Need to look at this item. Either have no security or require Triple DES. Error codes from Authenticate that may be useful - he will provide them (he = ??) Error text should be on all the examples - use short numonic. Text will be optional.. As long as it is UTF8, it will be the local of the server. May need to state what the default language is on the server. Command = sys text (make it logout or similar to other protocols). Some commands have a terminating "." - need to find something that the parser to handle it. We were always going to terminate everything with a dot. An acceptable thing would be you have a terminating DOT. CRLF.. The create method may have a layoring violation. You use senddata to do a create. Multiple respond codes for different errors. This is a layoring violation. Have something on the senddata state how many of error responses. Other issues: Pipelineing - we started out tagging commands and then we talked about pipe-lining commands. It may be going away. Command ID is a remmnant of this. Do we still need this or is everyone happy with no pipeline. The IMAP has pipeline from the beginning. All the servers will run multiple scans simultaneously. So Chris says that is not useful. The ability for the server to return data unrelated to the command in process is helpful. It's not like "unsolicited". We deferred notification. IMAP is not notification - it's polling. Look at IMPP issues to see what not to do. Unbounded recurrent sets - what should the options be for returning recurrent sets. What should be returned? One case - a server will expand to a bounded set and if you ask for vevent it is to get back every instance. Another one would be to get back the original using rrule and leave it up to the client. Or use the specific recurrence id. Any thoughts? A general discussion about recurrence. One way is give me the rule and the other is give me the instances. Smaller clients is an example of not needing the rules. A comment from the audience says it must be possible for the client to get it both ways. Microsoft's implementation experience is to do the expansion by default. Lisa asked for any implementation experience with CAP. Doug says yes. Three separate implementations. Bob talked about extensions - for example, SKI. It should be in a separate group as an extension iCalendar. Events are their focus. I will resend it to the list. The meeting was adjorned. After the meeting was over, I and one of the editors approached the AD to ask for permission to hold one more interim meeting to finalize the remaining items for the draft. Most of the work will be done prior to the meeting and we will use the meeting to complete the text and grammatical edits. Permission was granted and I will post this to the list and to the Announce list. Minutes taken and submitted by Pat Egen.