DataTree is a highly customisable, JavaScript- and jQuery-powered tree visualisation tool. Data can be in XML or JSON format, either fed directly (as a string) or fetched from a web service.
DataTree supports lazy-loading (via what it calls 'sub-tree requests') for cases where you wish to load data from a web service as the user traverses deeper.
All manner of callbacks are supported, and deep-linking and cross-page-transition state retention is also possible, among other features.