These are just some loose thoughts that have been brewing in my mind
lately, after reading Richardson/Ruby: RESTful Web Services [1].

In order to make Sling (even) more buzzword compliant, I have been
thinking about a system for tags. Yes, I'm talking about those
keywords that you label your bookmarks with on del.icio.us, photos on
Flickr and so on.

Of course, a tag could just be a (multi-value) string property on a
node. But a tag could also be considered to be a resource in its own
right, with its own URL (e.g. /tags/<tagname>).  (The concept of tags
as resources is very much present in [1]).

Accessing a tag's URL would output nodes that have the given tag. The
list could of course be rendered in different formats (json, xml,
etc).  Accessing /tags would give a list of tags that are in use. That
list would be useful when a user is applying tags to nodes (in
auto-complete fields etc).

In its simplest form, this could be implemented with a servlet or two.
But, Sling being a WEB framework, maybe tags should be a more
integrated part of the framework. In what way, though, I'm not sure.
Perhaps we could do some tricks with indexing or observation, so that
retrieving a tag (and its resources) could be speedier.

As I hope I made clear, this is not something I've thought through in
any way, and I'm not even sure if it's such a generic usecase that it
should be included in Sling - maybe it's just specific to certain
applications.

WDYT?

[1] http://oreilly.com/catalog/9780596529260/
-- 
Vidar S. Ramdal <[email protected]> - http://www.idium.no
Akersgata 16, N-0158 Oslo, Norway
+47 21 531941, ext 2070

Reply via email to