The Drupal CMS
The VO collaboration platform is built on top of the open-source Drupal content management platform, which powers millions of websites and applications. It's built, used, and supported by an active and diverse community of people around the world (including a dedicated Drupal Security Team, which is 40 strong). Presently, we use version 6 of the Drupal CMS.
Code
The architecture, installation, configuration and maintenance of Drupal-based content management systems is well documented at http://drupal.org, but we summarize the essential ideas here. The Drupal architecture is defined by a series of abstraction layers, along with an extensive and well documented API for extending and modifying default behaviors.
"Effective Web design is driven by the need to balance flexibility and simplicity. If a system is too simple, it can only be used for a single purpose - but if it is too flexible, it may be too difficult for new users to learn. Drupal strives to reconcile these conflicting goals by providing its users with the tools they need to make their own content management solution, while still providing some pre-built components to help them get started. Thus, it can be described both as a content management system (CMS) and a content management framework (CMF) - one system which strives to have the strengths of both, without their deficiencies. Most CMS's are like a toy boat or truck - specific assumptions have been made about their use, assumptions that would be hard for you to override. Frameworks, on the other hand, provide you with raw materials only - you need to know a programming language and have a clear design vision to put them together. Drupal is like a Lego kit. Skilled developers have already made the building blocks - in the form of contributed modules - that you need to create a site that suits your needs, whether that is a news site, an online store, a social network, blog, wiki, or something else altogether."1
Modules
Themes
Views
Configuration
Content Types
Type |
Description |
---|---|
Bibliographic Reference | Allows members to add bibliographic references to groups in which they have membership. Biblios can be added manually or imported from BibTex. |
Event |
Events are special because they have a start date/time and an optional end date/time as a first-class concept. |
File |
Files allow uploads of documents and other pre-existing content. |
Forum topic |
A forum topic is the initial post to a new discussion thread within a forum. |
Group |
The basic unit of organization for adding new virtual communities to the VO. |
Group Project |
Used for documenting research projects relevant to some Special Interest Group. |
NSF CPS Project |
Used to build the catalog of NSF CPS research projects. |
News Item |
News items are more ephemeral forms of information than Pages. They are ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a news item entry. News entries may be automatically featured on the site's or on a group's home page. |
Online Meeting |
A virtual teleconference/desktop sharing session. |
Page |
A simple web page for creating and displaying information that rarely changes, such as an "About us" section of a website. By default, a page entry does not allow visitor comments and is not featured on the site's initial home page. |
Panel |
A panel layout broken up into rows and columns. Used for building Dashboards with various content embedded within the rows and columns at specified locations. |
Story |
Deprecated |
Tearline |
A content type that differs from web pages in that there are separate sections, each with differing access permissions |
User Profile |
Used to track basic data and meta-data for individual users (e.g. place of employment). |
Video |
Used for embedding videos hosted at sites such as youtube or vimeo. |
Webform |
Create a new form or questionnaire accessible to users. Submission results and statistics are recorded and accessible to privileged users. |
Wiki page |
A version of web pages that supports hyperlinking by symbolic names, rather than explicit URLs. |
Permissions
- anonymous users
- authenticated users
- trusted users
- group moderators
- group managers
- site moderators
- site administrators
Data
Finally, the last component of an instance of a VO is it's data. This includes, for example all of the web pages belonging to a site, as well as the list of validated users that may log onto the site. As with configuration settings, the data within an instance of a Drupal website is stored in a series of database tables.
Users
Taxonomies
Nodes
- Pages in books
- Discussion topics in forums
- Entries in blogs
- News article stories
Comments
Panels
1. Quoted from http://drupal.org/getting-started/before/overview
2. List of module pre-requisites for the VO collaboration framework
3. List of some of the Views defined by the VO collaboration framework