title: Content repository
text: # Content repository
  
  A content repository or content store is a database of digital content with an associated set of data management, search and access methods allowing application-independent access to the content, rather like a digital library, but with the ability to store and modify content in addition to searching and retrieving. The content repository acts as the storage engine for a larger application such as a content management system or a document management system, which adds a user interface on top of the repository's application programming interface.
  
  ## Advantages provided by repositories
  
  * Common rules for data access allow many applications to work with the same content without interrupting the data.
  * They give out signals when changes happen, letting other applications using the repository know that something has been modified, which enables collaborative data management.
  * Developers can deal with data using programs that are more compatible with the desktop programming environment.
  * The data model is scriptable when users use a content repository.
  
  ## Content repository features
  
  A content repository may provide functionality such as:
  
  * Add/edit/delete content
  * Hierarchy and sort order management
  * Query / search
  * Versioning
  * Access control
  * Import / export
  * Locking
  * Life-cycle management
  * Retention and holding / records management
  
  ## Examples
  
  * Apache Jackrabbit
  * ModeShape
  
  ## Applications
  
  * Content management
  * Document management
  * Digital asset management
  * Records management
  * Revision control
  * Social collaboration
  * Web content management
  
  ## Standards and specification
  
  * Content repository API for Java
  * WebDAV
  * Content Management Interoperability Services
  