Using Google Suggest to Categorise del.icio.us Links

Using Google Suggest to Categorise del.icio.us Links

I promised when I posted the XForms side-bar to add del.icio.us links that I would add some new features. The first one--which I've been pondering for a while--is how to improve the process of tagging the links that you add.
Anyone who has used del.icio.us will know that it does a pretty impressive job of giving you a list of all the tags that you have used before, as well as making it very easy for you to add and remove keywords for a particular link. But the problem with it is that more often that not you want to see the tags that other people have used, not just your own. After all, we're talking about social bookmarking, so if I want to add my links on a particular subject to the links on the same subject that are already there, then I have to be using the same tag as everyone else.
As it happens, we're really making the best of a bad job anyway. Despite what fans of so-called microformats and folksonomies say, it is not possible to effectively tag a document or link with unqualifed words. You might get away with it amongst very small groups of people with a specific shared interest, but the moment you go slightly wider the ambiguity brings the whole thing crumbling down. Technorati, for example, make use of exactly this technique, but already there are problems where the same word has been tagged multiple times, for example London Bomb, London Bombings and London Explosions. (Supporters tend to suggest that we don't need the big solutions--hence 'micro'--and we don't need any standards organisations telling us what words to use--hence 'folks'--but no-one quite says how we avoid ambiguity or this kind of duplication. I hope to return to all of this at some point, and at the same time hopefully show why I came up with RDF/A.)
Still, although we may not have a 'proper' metadata solution, del.icio.us and other similar systems remain pretty handy. (See Adam Mathes on Folksonomies - Cooperative Classification and Communication Through Shared Metadata on why folksonomies are still useful.) So I figured that if there was a way for us all to choose from a known lists of words then although it's not a full metadata solution, it might at least be possible to establish a reasonable level of common ground. But to really make it work, it seemed to me that people would need to be able to choose their own lists; a bunch of XMLers might choose a list from XML.com to get their tags from, whilst literary theorists, chefs and cricket fans might choose others.
I decided therefore to incorporate my XForms version of Google Suggest into my XForms del.icio.us link manager (yes, there does seem to be a pattern emerging, doesn't there!). However, unlike the functionality provided by Google Suggest, which makes use of embedded script, my "XForms Suggest" can easily be changed to point to any source of XML data. The source of data I had hoped to use was DMOZ, but unfortunately, I can't find a web service that allows me to search DMOZ and get back XML. (If anyone knows of a server that has the DMOZ directory on it and that returns XML then please drop me a line. Otherwise we may just do it ourselves.) In the meantime, for a proof of concept I have used Google Suggest again, which as it happens is not a bad source of tags, since the words in the list are the words that people are using to search Google for...so why not use them to tag our documents, too?
The XForms code itself is very simple, but the main enhancement over the previous code is to use a
repeat to hold the suggestions, and to place it inside a switch/case construct. Then whenever the user enters the input control to get a suggestion, the list of suggestions is toggled to be accessible, and when the control loses focus the list is toggled away. The repeat itself contains a list of triggers with the suggestions as their labels; when the user activates one of them the selection is added to the list of tags for the link.A recent blog by Eric Barroca suggested that AJAX does not compete with XForms !, and that they could co-exist. I know what Eric is getting at, but examples like "XForms Suggest" shows that they don't compete because AJAX is just no competition, since our XForms can be easily changed to use any source of XML data for the list of suggestions, and yet is coded in a sufficiently abstract way that it will run on both a GUI and a voice system.
If you fancy giving this little application a whirl then you should make sure you have version 1.3.5 of formsPlayer from the download area of our site.
Once you have the new version, simply go to the configuration form. This is just an XForm, and it doesn't need to copy anything from our server--i.e., it doesn't do any component installation, since bar installation just involves calling some built in XPath functions in formsPlayer. After successful installation you will need to open a new browser, and then you will have an option formsPlayer Bookmark Manager in the Explorer Bar menu, under the View menu of IE.
(Note that if you followed these steps to get the first version of the link manager, then you don't need to do anything; the XForms is on our server and so you will be using the new version next time you open the pane.)
The buttons on the form are pretty straightforward; you can save your link and metadata or cancel. Use the refresh button to reload the title and metadata from the page currently in the browser. To get suggestions, navigate to the Get Suggestions control and start typing--suggestions will appear just below the control, and you can either select one with your mouse, or press
[ENTER] to choose the first one in the list. (There is a problem in that sometimes Google uses in the returned data, and since this is not defined the suggestion results won't load. Just carry on typing and you will normally get past it.)Tags: Computers and Internet | Social Tagging | Social Bookmarking | Del.icio.us | Delicious | Tagging | Semantic | Semweb | Tags | formsPlayer | Web2.0 | XForms









0 Comments:
Post a Comment
Links to this post:
Create a Link
<< Home