Embedding XNAT in external apps
Background
There are many visualization and similar tools that are embedding XNAT into their I/O interfaces. These include 3D Slicer, Connectome Workbench, CAWorks, Mango, LONI Pipeline, XNATViewer, XNATDataChooser, and others. It'd be nice if tools that are doing this followed similar organization and logic. This will make it faster for developers to implement and faster for users to use them as they move between applications.
When/where
- Thursday, 2:00 Rm. 209
Who
- Dan (lead)
- Rick
- Simon D. : XNAT Data Chooser – Java Swing app embedded in IDL, Matlab. Enables PACS-like searching of an XNAT, caching of data and then loading into IDL, Matlab, etc.
- Frank Mata
- Bill Schneider
- Shree Unde (Wake Forest)
- Fred Elisma
- Leo Matoush
- Lawrence Tarbox: Working to make XNAT an XIP host
- Miklos Espak: Planning to adapt an existing Qt based tool to interact with XNAT hosts.
- Anthony Kolasny: CAWorks is a Qt/C++ ParaView-based application that includes a tree view for reading/writing XNAT hosted files (http://caportal.cis.jhu.edu/wiki/tutorials/xnat_browser_documentation/).
- David Gutman: XNATView: web PACS viewer that is php and python based access to REST API. Also TUMORVIEW. Uses DHTMLX. Uses a Mac explorer-like view
- Nima: SPRED, VIX. Tools to get federated views of XNAT hosted data in multiple different hosts. Also get summary of data sets that the user can request access to.
- Jake Cobb: Crazy cool scan groups view application that uses a floating cloud of data with springs to pull out groups. Uses Prefuse.
Approach
- Determine the various environments and contexts for loading XNAT data into and out of applications.
- Determine the common code bases that can be leveraged (Java, Python, Qt, etc)
- Determine ideal UI aproaches (treeview, directory selection, etc).
- Start implementing.
Needs
- Make XNAT an Oauth provider
- Make API more consistent what it's supplying (always JSON).
- Look into malformed XML
- Be able to request WHAT plugins have been installed on a particular XNAT host.
- Add a getChild method on the REST API so that treewalkers can discovery the leaves.