Here is a summary of the main Graffito Content Platform features.
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.
|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 Service||Manages concurrency access to the CMS objects. Enable remote, collaborative authoring of any media type. Resources can be locked as "exclusive" or "shared".|
|Version Service||Manages content versionning. Infrastructure for versionned resources : check in/ check out with comments and metadata; versionning graphs and histories; browse and retrieve old versions.|
|Security Service||Manages "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 Service||Manages 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 Service||Triggers events when content is created, update,deleted or retrieved; Events can be customized in order to index the document or makes auditing, ...|
|Integration Service||Manages external repositories consolidated into one virtual content tree. The user doesn't worry about the physical content location.|
In short term, we want to support the following content backend :
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 :