Concierge: Personal Database Software for Managing Digital Research Resources

This article introduces a desktop application, named Concierge, for managing personal digital research resources. Using simple operations, it enables storage of various types of files and indexes them based on content descriptions. A key feature of the software is a high level of extensibility. By installing optional plug-ins, users can customize and extend the usability of the software based on their needs. In this paper, we also introduce a few optional plug-ins: literature management, electronic laboratory notebook, and XooNlps client plug-ins. XooNIps is a content management system developed to share digital research resources among neuroscience communities. It has been adopted as the standard database system in Japanese neuroinformatics projects. Concierge, therefore, offers comprehensive support from management of personal digital research resources to their sharing in open-access neuroinformatics databases such as XooNIps. This interaction between personal and open-access neuroinformatics databases is expected to enhance the dissemination of digital research resources. Concierge is developed as an open source project; Mac OS X and Windows XP versions have been released at the official site (http://concierge.sourceforge.jp).


INTRODUCTION
A primary goal for neuroinformatics is the promotion of the sharing of digital research resources including experimental data, mathematical models, and analytical tools among neuroscience communities using openaccess databases Eckersley et al., 2003). Recently, many countries are proceeding with efforts to develop neuroinformatics databases in various research fields (Gardner and Shepherd, 2004;Shepherd et al., 1998;Usui, 2003). However, most resources remain in personal computers and/or storage devices in the respective research laboratories. To facilitate the dissemination of such resources, further international and interdisciplinary efforts must be made to tackle various problems related to sharing, e.g., establishment of common data formats and continuous maintenance of databases. In addition to such institutional activities, resource sharing would also benefit from further improvement of the neuroinformatics database technologies employed.
Neuroscience researchers who intend to contribute their personal research resources to neuroinformatics databases will often have to bypass a cumbersome registration process. Databases typically require detailed content descriptions (metadata) of resources to ensure their reusability (Laird et al., 2005;Migliore et al., 2003;Usui, 2003). For that reason, the researchers are often required to enter metadata manually using a Web browser while referring to their notebooks or other stored information. However, in general, a browser-based interface is unsuitable for such input operations. For instance, the use of the browser "Back" button frequently causes the loss of entered data. More importantly, whereas the metadata might be useful for neuroinformatics database users, the creation process itself is time consuming and often felt as a burden for the contributors.
To address this technical issue, we developed a desktop application software, named Concierge, for managing personal research resources based on their metadata. The metadata stored in Concierge help define and clarify the contents of various types of digital files stored in the personal computer of each researcher. Furthermore, the metadata stored in Concierge can also be uploaded (together with the primary resource) to neuroinformatics databases without additional efforts. This interaction between personal and shared neuroinformatics databases is expected to enhance digital research resource circulation. Howell et al. (2004) have also proposed similar concepts for the sharing of experimental data among experimental and computational neuroscientists. We have advanced the concept further to deal with various types of digital research resources.
In the present paper, we outline the basic configuration of the software and describe a few add-in features, including one add-in that provides easy access to a neuroinformatics database system called XooNIps (Yamaji et al., 2007). Figure 1 presents a screenshot of the minimum configuration of the software. The lower window named Tabulator is a graphical user interface (GUI), which is responsible for handling basic user requests such as resource registration and searching. A dialog window (Figure 2) for editing metadata appears when users drag and drop a file to be registered on a default category termed "Misc" in the left column of the Tabulator. Users can complete the registration process by filling in necessary meta- data on the dialog. In addition, users can create a new category from the right-button menu of the Tabulator. The created category has the same metadata format as the "Misc" except for the category name.

OVERVIEW
Alternatively, users can search registered resources based on their metadata by entering free keywords into the top text field of the Tabulator. The search results are listed in its right column. In addition, users can search them using indexes derived from their metadata. By clicking an index term in each column of the upper window named Indexer (Figure 1), appropriate resources are listed sequentially on the Tabulator, as in the case of the free keywords search.
By use of the above outlined functions of the basic plug-ins, users can manage digital research resources including metadata describing them. In addition, as explained below, users can extend the functionalities of the software by developing an optional plug-in specific to a certain purpose or a certain metadata format. This high level of extensibility is an important feature of Concierge. Another feature is easy installation. The procedure is merely to download a zipped application file from the official site (http://concierge.sourceforge.jp/) and to decompress it in a suitable folder, provided that an appropriate Java runtime environment is already installed.

SYSTEM ARCHITECTURE
Concierge is a desktop application that has been developed using Eclipse Rich Client Platform framework (Eclipse RCP, http://wiki.eclipse.org/Rich Client Platform). Eclipse RCP is the minimal set of plug-ins for building rich client applications. Using Eclipse RCP, all building blocks of the software can be implemented as plug-ins. Figure 3 shows the system architecture. In this software, the plug-ins are classified functionally into three groups: database management (DBM), metadata parser (MP), and GUI plug-ins. The Tabulator and Indexer mentioned above (Figure 1) are the basic GUI plug-ins. User requests are processed appropriately using the organized combination of those plug-ins.
The metadata are stored in a native XML database (Apache Xindice, http://xml.apache.org/xindice/) as an XML document through the DBM plug-ins. Although Xindice was adopted as the backend database at present, the database connectivity of Concierge is highly abstracted by the DBM plug-ins. Therefore, the background database is replaceable by other database systems supporting the XPath query language (http://www.w3.org/TR/xpath). Figure 4 depicts a sample of an XML document. The most important aspect is that users need not be conscious of such a complex structure of the XML document. The metadata entered according to the dialog window (Figure 2) are converted automatically to an XML document using the MP plug-ins. On the other hand, each registered resource file is assigned a unique identification number as the new file name, and copied into the same folder as the metadata database. This enables users to search the files using index services provided not only by Concierge but also by operating systems or desktop search software, e.g., Spotlight on MacOS X, Google Desktop (http://desktop.google.com/), etc.

ADD-IN FEATURES
The basic configuration described above enables users to manage various types of digital files with simple and general metadata through the unified user interface. However, more detailed and specific metadata can be defined for certain resource types, e.g., measuring conditions of experimental data and parameter values for simulation results. Since it is almost impossible to prepare every individual case in advance, Concierge has been designed to be pluggable to ensure high level of extensibility using the Eclipse RCP as the framework. Based on the basic configuration, although commensurate Java programming is required, a novel feature that is suitable for managing a certain resource type can be developed as a plug-in tool. The following sections introduce a few plug-in tools that we have developed.

iPapers
Most journals are now published not only using printed media, but also in an electronic format. Researchers can easily download the PDF reprints of  published articles. The plug-in tool named iPapers enables management of PDF reprints based on the bibliographic information.
A new category "Paper" appears in the left column of the Tabulator when iPapers is installed. By dragging and dropping a PDF reprint on this category, users can edit its metadata including bibliographic information on a dialog window ( Figure 5A). If the file name of the PDF reprint contains a PMID, the bibliographic information is retrieved automatically from the PubMed database; the PMID is a unique identification number assigned for each published article in life sciences.
In addition, iPapers provides a PubMed search interface. The application window consists of query forms, a table for search results, and an abstract viewer ( Figure 5B). Three search methods are available on this interface: (1) basic search, to search articles by free keywords and the range of publication date; (2) single citation match, to search an article identified by journal title, volume number, and initial page number; and (3) smart search, to automatically search new articles within a scheduled period. On the bottom table showing search results, users can access the Web page of a selected article in the journal site, download the PDF reprint directly from journal site without any manipulation on a Web browser if users have permission to access it, and import the downloaded PDF file with the bibliographic information to Concierge.
Moreover, users can export the metadata (bibliographic information) to make reference lists for publications by just dragging and dropping a "Paper" type resource from the Tabulator to some sort of text editor. The export format can be customized using a GUI in the preference setting dialog of Concierge.

LabNote
Recently, the use of electronic laboratory notebooks for science-related work is highly promoted because the keeping and sharing of laboratory notebooks is helpful to prevent errors or cases of fraud. The LabNote plug-in is a prototype of the electronic laboratory notebook on Concierge.
The application window is composed of a category browser and a calendar ( Figure 6A). A new note is created and its edit dialog appears when a user double-clicks a date on the calendar (Figure 6B). Then the users can write down their research activities using some metadata such

Figure 5. Screenshots of the iPapers plug-in. In the application window (B), users can search published articles from the PubMed database and, if necessary, download a PDF reprint and import it to Concierge using bibliographic information (A).
as the category, title, and keywords. In addition, other resources that had already been registered in Concierge can be linked with the text of a note. In the case of Figure 6B, two figures were inserted. If and only if a linked resource is an image file with a certain format (JPG, PNG, etc.), the image is displayed inline with the text; otherwise, a small link icon will appear. All notes are stored in a category "Note" and searchable as well as other resources using the Tabulator and the Indexer.
Moreover, this plug-in can export each note into a HTML document with inserted resources. Consequently, users can not only manage their research activities with relevant resources electronically, but also disclose them easily to colleagues or collaborators.

XoonipsLink
Promotion of the use of neuroinformatics databases is one major purpose of this development, along with the management of personal research resources described above. We, therefore, targeted a neuroinformatics database system XooNIps, and provided a plug-in tool named Xoonip-sLink as an alternative interface to Web browsers. XooNIps is a content management system for neuroscience communities; one of its excellent features is high scalability, which allows widespread application from laboratory use to institutional use. It is adopted as a standard database system for the Japanese neuroinformatics node (http://www.neuroinf.jp/), one of the nodes of the International Neuroinformatics Coordinating Facil-    Bjaalie and Grillner, 2007). Several databases using XooNIps have already been open access, and the number is steadily increasing. XooNIps supports the Open Archives Initiative-Protocol for Metadata Harvesting (OAI-PMH, http://www.openarchives.org/), which enables to exchange metadata of registered resources among multiple XooNIps sites. In order for further interoperability, XooNIps also provides a Java API to access the database. The XoonipsLink was implemented by using the Java API for XooNIps.
First, a user signs-in a certain neuroinformatics database operated with XooNIps using a sign-in name and password. In XooNIps, all resources are tagged with hierarchical keywords. This plug-in displays the hierarchical keywords as a folder tree structure in the left table of the application window ( Figure 7A). By selecting each of them, resources tagged with the selected keyword are listed up in the top-right table. Subsequently, by selecting a resource, the metadata are shown in the right-bottom table. Then, the users can download the resources shared in XooNIps and manage them with their metadata entered by the original contributors as "Misc" type resources.
The XoonipsLink also helps to upload personal resources to XooNIps. Users can upload a "Misc" type resource merely by dragging and dropping it from the Tabulator to the top-right table of this plug-in and by filling out the metadata required by XooNIps on a pop-up dialog ( Figure 7B). Then, this plug-in takes care of a part of the metadata entry using the metadata stored in Concierge ( Figure 7B). However, because metadata are not completely compatible in Concierge and XooNIps, users must manually enter such incompatible metadata by themselves on the popup dialog. For example, a license term is significant for neuroinformatics databases to ensure the reuse of uploaded resources, but it is not necessary for personal databases. Therefore, users must decide and describe an appropriate license term for each resource during the registration process. In this regard, if users allow publishing of their resources under the Creative Commons (CC, http://creatviecommons.org/) licenses recommended by XooNIps, this plug-in provides a simple application form for the CC licenses to avoid such troublesome license preparation. The users can apply a CC license using only a few mouse clicks (framed rectangle in Figure 7C).

CONCLUSION
We have developed a personal database software, Concierge, which enables management of digital research resources with their metadata using simple operations. The software was developed as an open source project; Mac OS X and Windows XP versions have been released at the official site (http://concierge.sourceforge.jp). For both operating systems, the installation procedure of Concierge is simply to decompress a zipped application file in a suitable folder, assuming that an appropriate Java runtime environment is provided to run it. In addition to the simple installation and operations, a key feature of Concierge is its high level of extensibility. By installing optional plug-ins to the basic configuration, users can easily customize and extend the usability of Concierge depending on their needs.
One optional plug-in, XoonipsLink, is expected to reduce costs not only to reuse resources shared in neuroinformatics databases constructed with XooNIps, but also to submit personal resources to them. Although both Concierge and XooNIps require further developments to improve functional interoperativity, we believe that such a seamless interaction between personal and neuroinformatics databases enhances the circulation of digital research resources among neuroscientists.
In the future, we plan to offer a community site to exchange information among users who intend to develop new plug-ins. Additionally in the site, we will also provide a developer manual and templates of the Concierge plug-ins, etc., which is expected to minimize the efforts for plug-in development.