All entries for Friday 14 September 2007

September 14, 2007

Tagsonomy – a taxonomical keyword searching tool

Follow-up to Build your own tagxonomy tool from Transversality - Robert O'Toole

The idea of a taxonomical keyword searching tool has developed further. There is clear demand for it as part of projects in History, English, the Library, the Language Centre and Renaissance Studies. Here is a more formal specification of how it could work.
A taxonomy is a hierarchical structure of categorisations, with a progression to more detailed categories towards the leaves. The taxonomy defines the set of categories that may be applied to resources. Taxonomies are common in academia. Sometimes they are formal and explicit mechanisms. Often they are informal aids to research and academic communications.

Many web publishing systems allow content to be “tagged” with keywords. For example, a Sitebuilder page may be given one or more tags. Similarly a blog entry is classified using tags. Social bookmarking systems like del.icio.us use keyword tagging. Bibliographical databases also commonly use taxonomies of keywords. Most of these systems can be searched using keywords. Many of these search interfaces can be accessed programmatically.

Most keyword tagging and searching systems, such as that used in Sitebuilder, are not taxonomical. There is no taxonomical structure to which an author or researcher can refer when tagging resources or searching for resources.

I have identified a set of real use cases in which a taxonomical approach to keyword searching would be beneficial. These cases also imply that resources are tagged according to the keywords available in the taxonomy.

Here is a description of how the tool could work:

Searching

The search interface contains a tree structure representing the taxonomy of keywords.
The tree structure can be explored, drilling down through its branches.
Individual keywords, or whole branches of keywords can be selected.
There is also a text box allowing the user to type in keywords (with autosuggest giving options as they type).
As keywords are selected, they are listed in a text area showing all currently selected search terms.
Once all of the required keywords have been chosen, a search is done, returning a list of all matching resources.
The search could be ordered in several different ways, for example with resources that have a higher match coming at the top of the list.

Here is an illustration of how the interface might work (it doesn’t yet do the search):

Configuring the taxonomy

The taxonomy could be stored as an xml file on the web (for example in the same location as the search tool).
The xml file could be hand coded, or the search tool could provide an interface for creating a taxonomy file and editing its tags.
The taxonomy file to be used could be specified by the author of the web page on which it appears.
The end user could be allowed to choose a taxonomy file, it could be possible to search for taxonomy files in Sitebuilder.

Configuring the sources

The search tool will need to know about the web application in which resources are stored (for example Sitebuilder).
It will need a method for searching each web application (how to build the search url).
One or more sources could be specified by the author of the page on which the tool is deployed – it could be set to search Sitebuilder, Blogs, etc.
A version of the tool could be made available allowing the end user to choose sources.

Saving and sharing searches

Searches could be saved onto the end users local machine (Shared Object in Flash, filesystem in AIR).
Searches could also be shared with other users.

Using the taxonomy to tag resources

The search tool could be used to assist in tagging resources using a selected taxonomy.
For example, a user selects a series of keywords, and the tool displays the text to paste into the keyword tag field of the Sitebuilder page properties.

Tasks

  1. find out how to save an xml file from Flash into Sitebuilder.