Dev Tools: What We Can Do and What You'll Have To Do

Renaud Comte made a great observation on my CAML comments (see CAML ? Stay for long time dixit Mike Fitzmaurice).  If CAML is here to stay, how about more than just reference info (which we have) and examples (which we’re going to provide — and if you want to help, contact me)?   Why not tools?

That’s a great idea, but I doubt we’ll have time for it, so: Attention all tool-builders: we are not writing CAML editors in “v3”. If you do it, you’ll have several years’ worth of usability.

Like you, I want a lot of things.  I want a VS-integrated site definition editor.  I want a VS-integrated way for editing/testing/deploying sites.  I want ADO.NET as an alternate way of accessing SharePoint list data.  I know you also want full support of all of ASP.NET 2.0’s features, better event handling, better deployability, multi-lingual support, and many, many other things like per-item security, more granular backup, etc.  We won’t get all of this (but we’ll get some of it).  We’ve got a list that far exceeds our capacity for “v3”.

We do, however, have a stealth project in the works.  We’re going to release initial XML schemas for site definitions shortly (yes, I know this should have been done long, long ago), and we’ll enhance them in stages over the next many months.  We’ll post them to GotDotNet for now, but our plan is to support them in “v3”.  I’m hoping that we can make CAML the next target.

My constant feedback to the development team is that if we have to choose what to do within a limited amount of time and with limited resources, we should always err toward things only we can do.  Providing schema validation for site definitions is one of those things.

CAML’s next on my list of things to ply/wheedle/cajole/bribe/threaten the dev team to create in its “spare time”.  It’s actually a bigger topic than site definitions, and XSDs for it would be a harder job.  It might not happen.  So I have a very specific request:

Short of a complete XSD for CAML, what kind of help can we provide you to be able to create your own CAML tools?