December 04, 2010
Building a Friendly Metadata Interface for Researchers in Drupal
This is what my job is all about but I haven't had much of a chance to focus on it in the last month or so. The following steps are taken with the goal of building a user-friendly interface for researchers to manage research projects, personnel, metadata and datasets within a web-database framework. DEIMS, the framework alias, stands for the Drupal Ecological Information Management System.
Here are the steps in bullet point fashion. Assumptions as to knowledge of the basic content type structure (Research Project, Person, Research Site, DataSet-> DataFile-> Variable) is assumed. For a primer, see this article by several LTER data types.
1) Create content from within another content type
The nested nature of metadata storage it is somewhat counter intuitive to the manner in which we would normally create it. For example,
DataSet -> DataFile -> Variable
2) Allow researchers to clone or duplicate DataFiles and Variables
The metadata held with DataFile is necessarily redundant due to the fact that only one file upload is allowed per DataFile. If the researcher has a lot of files with identical metadata (but different data values) they can clone a DataFile node and alter only those bits of information that are unique. For example, they can just upload a new file. See a How to for the Node Clone module.
3) Allow uploaded files to be (available to the) Public or Private.
No researcher is going to trust you with their data if, in the second after it is uploaded onto your website, it becomes available to anyone with an internet connect. The DataFile content type I use has 2 upload fields, one public and one private. The latter restricts access of the file but not the metadata to the researcher and the administrator. Here's my post on creating a Public/Private file system in Drupal.
4) Build a friendly, navigable layout that allows easy travel from point A to point B.
This will be ongoing but a few improvements to date:
- Use Panels to so that users are presented with content they have authored.
- Create custom menu for different User Roles.
5) Establish a Workflow system around Research Projects, DataSets and DataFiles that allows progress to be saved but not published.
See this post for more notes.
Posted by kkwaiser at December 4, 2010 12:44 PM