Content Platform Features

Here is a summary of the main Graffito Content Platform features.

Content Repository Services

Creating flexible CMS services which can transparently support different CMS repositories. By this way, your application can access to heterogeneous content store. It should be possible to support CMS repositories which are providing a Java API (JCR or another API) or a WEBDAV layer.

FeaturesDescription
Model Service Manage all CMS objects (documents, folders, ...). Create, retrieve, update and delete content. Store links between contents. Provides an infrastructure for recording information about content.
Lock ServiceManages concurrency access to the CMS objects. Enable remote, collaborative authoring of any media type. Resources can be locked as "exclusive" or "shared".
Version ServiceManages content versionning. Infrastructure for versionned resources : check in/ check out with comments and metadata; versionning graphs and histories; browse and retrieve old versions.
Security ServiceManages "fine grained" permissions across the complete content tree. Each CMS service implementations has to be integrated with the Jetspeed security services or another security service; Grant permissions are based on the association between a content reference,an action type (eg. : read, write) and an actor type (user, group or role).
Search & indexing Service Search documents and folders via full text search and/or metadata criteria.; Possibility to implement a new query language. Minimal query language can be : boolean search for property existence or value; or search for substring in a resource content. Indexing documents can vary in function of the language and the media type.
Workflow ServiceManages the different publication activities. Content can be attached to a workflow, which is a series of tasks what must be completed. Workflow can consist of any number of manual tasks, performed by users and groups, as well as automated tasks which are performed. Workflow tasks can be assigned to groups, in which case any member of a designated groups may approve, edit, or re-route content as appropriate. The default workflow can be customized and linked for reuse in other projects. Users are notified of new tasks via email notifications or notification portlet.
Event ServiceTriggers events when content is created, update,deleted or retrieved; Events can be customized in order to index the document or makes auditing, ...
Integration ServiceManages external repositories consolidated into one virtual content tree. The user doesn't worry about the physical content location.

Graffito Content Store

In short term, we want to support the following content backend :

  • A simple DB schema based on OJB.
  • WEBDAV server like Slide.
  • JCR based repository like JackRabbit.

CMS portlets

Accessing those CMS Services across predefined JSR-168 portlets. Providing or integrate CMS editor portlets in order to update the CMS repository content. Managing the content publication across a customized content workflow.

So, we plan to build portlets for the following usages :

  • Administration : managing the content tree (add, delete folders & documents, ...), setting permissions, managing external server references, ...
  • Content browser & viewer.
  • Content workflow/notification.
  • Content editor.
  • Specialized portlets like news, forum and many others which have to store their content into a content repository.

Other Features

  • Support for any media type (XML, HTML, binaries like Ms Word, ...).
  • Applications like News, Forums, ....
  • Tools like scheduler, report generator, asynchronous publication, ...
  • Graffito tags and templates