Nouveau Alliance® Content Management Service
The Nouveau Alliance Content Management Service is an extended service that provides collaborative content management functionality within a Nouveau Alliance Collaboration Server. It consists of a content manager that is responsible for management, access and security of content in the repository, and a set of content management and document object model classes. Also included are extensions to the Nouveau Alliance Web Service for storing and retrieving content streams, and interfacing with the content manager.
Accessing the Content Management Service
You start by interacting with the Content Management Service for a workspace. You can access the Content Management Service from within a stand-alone Java application, a servlet or JSP, or a Enterprise Java Bean (EJB). You can use either Nouveau Alliance Peer Service Discovery or the Java Naming and Directory Interface (JNDI) to locate the Content Management Service for a workspace in the peer network. Once you have access to the Content Management Service, you can use it to perform related functions and access related resources in the workspace.
You add content through the Content Management Service by creating a new document object, and specifing a remote file object with its content stream. The remote file object specifies the content source, either as a file or URL, or as a data stream. The Content Management Service creates a new entry for the content item, then requests the remote file object to store its content stream to the repository at the location specified by the Content Management Service. If the content item is subject to access control, remote file object is directed to use secure HTTPS protocol, otherwise it uses standard HTTP protocol.
Metadata is increasingly important for managing content. Metadata is information about the content that helps to classify it and provides additional meaning. The Content Management Service creates basic metadata for the content item, using information supplied by the remote file object. Once created, users can attach additional metadata to the content item. The Nouveau Alliance Collaboration Server allows adding any type of metadata to a content item, from a simple string value to a complex Java objecs. You have the flexibility to add simple keyword metadata or to create more advanced hierarchical metadata that conforms to industry standard content schemas, such as Dublin Core.
Once you add a content item, you can adding to a new collection, or to one or more existing collections. Collections help you organize related content items by keeping them together. Traditional content managment systems provide only one type of collection, a tree hierarchy. Nouveau Alliance Content Management Service provides an extensible set of collection that enable you to choose one that best reflects how items in the collection are related. You can select from among pre-defined collections, including trees, lists, sets, tables, graphs, and sequences, or you can create a new type of collection using a set of pre-defined collection building blocks. And unlike most content management systems, content items can be organized into multiple collections at the same time, either in the same workspace or anywhere in the peer network. A content item located in a tabular collection of a personal workspace can also be in a chronological collection of project-related content in a shared project workspace.
Linking and Annotating
You also have access to tools for adding links and annotations to your content. These enable you to capture complex information relationships that are normally carried in people's heads and are lost if they leave or move to other assignments. You can create link types that capture exactly the right kind of relationships, select from a wide range of existing annotations, and even create entirely new types of annotations to capture important information about your content. You can even create active links and annotations by attaching activities that perform operations such as alerts, filtering, workflows, and updates. For example, you can add an digital signature annotation that detects or even prevents changes to a content item. No other content managment system provides this kind of advanced information modeling and collaborative content management as the Nouveau Alliance Content Management Service.
The Content Management Service provides you with advanced access control for setting and modifying authorization policies for content items. It uses the Security Management Service to manage an "access control list" (ACL) for each content item. Through the ACL, you can set "read" and/or "write" privileges individually for each user, and for named groups of users. Those who have both "read" and "write" privileges can access and update a content item; those with only "read" privilege can only read but not update, and those with no priviliges can neither read nor update a content item. You can also establish and manage the group of owners who can administer access privileges for the content item. If you are an authenticated user, an ACL is automatically established when you create a new content item, with you as the only owner, and no privileges for other users. You can modify this policy once you create the item. If you are not an authenticated user, the document is not subject to access control and no ACL is established.
The Content Management Service uses the Security Management Service to provide fully configurable authentication that enables users to identify themselves before creating or accessing content items.The Security Management Service uses commercial authentication technologies such as LDAP, NIS, and Microsoft Active Directory, and enables you to configure them into named domains to simplify administration and user access.
Both request-based and session-based authentication is supported. With request-based authentication, the system presents a challenge each time the user attempts to access a document that requires authentication. If the response is verified with the specified authentication services, the content item can be accessed if the user has sufficient authorization. With session-based authentication, the user information is verified with the specified authentication services once and a login session is created. Once logged in, the user can access any authorized documents by presenting the login credential with each request. The Content Manager gives applications the flexibility to use whichever authentication method is most appropriate.
Accessing and Updating Content
An application accesses a content item using the URL associated with its document object. Once the application has the URL, it uses standard HTTP or secure HTTPS protocol to read the content stream from the Web Service. Applications that use the Nouveau Alliance Application Framework have the convenience of automated, single sign-in login and authentication across multiple workspaces anywhere in the peer network.
To create new version of a content item, the application creates a remote file object for new content stream and adds it to the item's document object. The Content Management Services uses this new remote file object to update both the content stream in the repository and the automatically created metadata for the content item.