The GCube Information Organisation Services
The Information Organisation services and associated libraries form the gCube subsystem dedicated to content management.
Central to the subsystem is the Content Manager (CM), a service that provides uniform access to content served by a variety of back-ends, both inside and outside the system. The Content Manager models content as edge-labelled trees and relies on plugins to dynamically adapt the model to an arbitrary number of back-ends. Clients and plugins synchronise on, respectively, producing and consuming content in canonical tree forms defined by convention within the system. A set of canonical forms for content metadata, annotations, parts, and alternative representations are logically part of the subsystem. Collectively, the forms define the gCube Document Model, a concrete document model widely adopted within the system.
The back-ends of the Content Manager may include storage services as well as access services to content stored further afield. A back-end which is part of the subsystem is the Storage Manager (SM), a service that stores content and organises it as a web of binary, directed relationships. The Storage Manager hosts content generated or imported within the system.
The clients of the Content Manager may also be internal or external to the system. Internal clients may interface the Content Manager to directly process content. Alternatively, they may adapt the gCube Document Model to content types and protocols expected by external clients. In either role, internal clients may count on libraries that offer progressive abstractions over the interfaces of the Content Manager. The Content Management Library (CML) offers a high-level model of calls to the Content Manager, as well as support for URI-style, fine-grained content resolution. The gCube Document Library (gDL) builds on the CML to uphold the abstractions of the gCube Document Model.
A distinguished client of the Content Manager which is included in the subsystem is the View Manager (VM), a services that manages arbitrary views over the content exposed by the Content Manager. The View Manager is also a pluggable service, where plugins specialise in the management of views of particular type. Core plugins include those for metadata views or annotation views based on the canonical forms of gCube Document Model. The views remain 'passive' and access to their content is performed directly via the Content Manager. Client support for metadata and annotation views is found in the Content Management Library.