doc:// - is that too much to ask?
I’ve just invented a new protocol called docdav. Except it only exists as a vision of a future I’d like to see today and I haven’t actually got as far as the technology. Despite this obvious flaw I think it still has much to offer, so here goes:
The internet hasn’t really affected documents in the way it has many other things. We still think of documents as things we author locally, store on file systems in islands of information and share by email or, shudder, ftp. To be clear, what I mean by a document in this context is:
- A file in an domain-specific/application-specific format, such as a spreadsheet or a mindmap; or
- A file in a format that gives us full control over the layout of the information as well as the content, such as a word processing document.
But I don’t mean anything to do with the web as we currently use it. HTML/CSS is truly awful for layout and is not going to reach even word processor levels of sophistication for years. The one difference HTML/CSS does have is interactivity, but that’s nothing to with documents, that’s GUI functionality.
So here’s what I want docdav to do:
- I want browsers, embedded browsers and anything that currently understands http:// to be able to understand doc:// in the same way. For browsers that means retrieving and then rendering the document at that location.
- I want a docdav server that holds a set of documents and provides the following functionality:
- Cataloguing, so that I can see an index of all the documents on the server and details of them
- Categorisation for all documents, with multiple levels and mutliple categories
- Indexing, so that I can search through all the documents on the server
- Versioning so that I can retrieve old copies and see changes
- Access control, so that I can specify exactly who can do what on this server
- And one I’m not sure about - embedding. Some document formats do this, some don’t but this may not be the best place to try and fix that.
- For all this functionality I want a simple set of conventions that determine how to use it. For example:
- doc://domain.tld/ brings up the catalogue
- doc://domain.tld/mycategory/ brings up a catalogue for that category
- doc://domain.tld/?term=myterm for searching
- doc://domain.tld/mydocument.doc retrieves a named MS Word document
- doc://domain.tld/mydocument.doc?version=1.1 for a specific version of the document
- and so on, with appropriate i18n considerations of course
- Finally, I want the server to have a simple verb based protocol like HTTP, which deals with the basic CRUD operations and access control so that I can easily interact with the server
When I’ve got it then I’m going to abolish file systems for end users. We will finally be able to move from network document storage to Internet document storage.
Hopefully docdav will also make Lotus Notes and Sharepoint redundant (or they become docdav compliant). If I think about it, with a combination of email, iCal (caldav), docdav and something like XForms there is nothing I can’t do that I can do with proprietary solutions. Instead of sending someone an email with a document attached, I send a link to a doc:// URI. Okay, so I haven’t worked the XForms bit through properly.
In case you haven’t picked up on it, I’ve called it docdav because webdab/dav is almost there. It could probably be the foundation for docdav in the same way that it is for caldav. So maybe this vision isn’t that far away.


November 21st, 2006 at 12:20 pm
Are you Jay?
September 10th, 2007 at 9:53 pm
Heck,
You could even say:-
doc://domain.tld/getmemyvirus.js?Thebigone.exe
;-)
Joe.