"Carrot2 is a research framework for experimenting with automated querying of various data sources (such as search engines), processing search results and their visualization.
Under the term "research", we understand that the architecture of the system is oriented mostly toward flexibility, sometimes at a price of performance losses. Mechanisms such as data exchange via XML language, dynamically loaded components accessible via HTTP protocol, the use of Java as primary language of implementation -- they all make the system very easy to tailor to one's needs."
An open source, Java based, framework with some cool demos showing result clustering - what more could you ask for?
A couple of demos: Google search for "RDF" with Dynamic Trees and AllTheWeb search for "data mining" with Dynamic Trees. Carrot2 Homepage.