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
