Visit Mozilla.org

BRICKS Foundation

From BRICKS Developer Community

The core of the BRICKS Framework, is the BRICKS API. The BRICKS Web Services API is modular, and based on several components, called Brick in BRICKS jargon. The BRICKS Services are grouped in Foundamental, Core and Basic.

Fundamental BRICKS Services

Fundamental BRICKS services are absolutely needed on every BNode machine for its proper functioning and maintaining the membership in the BRICKS community. Besides P2P layer, other fundamental services are:

  • Decentralised XML Storage: It is needed for managing all sorts of XML-encoded data that should be available all the time at any point in the system independently from the system topology. Since we would like to avoid central point, data are managed in a decentralised way, but access should be completely transparent.
  • Service Registration and Discovery: It manages information about available services in the system, and it is based on top of the decentralised storage. It supports existing UDDI specification, enabling easy migration of already Web-service-enabled code.
  • Index Manager: It is responsible for maintaining a decentralised index that speeds up querying of available content.

Core BRICKS Services

As it has been already mentioned, core services are needed if a local BNode installation wants to provide access to the BRICKS for its local users. Therefore, the core services include:

  • User Management: It takes care about user profiles. It should support many existing backends, so that institutions with a large user base could easily migrate to the BRICKS.
  • Authentication and Authorisation: This BRICK is responsible for checking user rights and implementing security polices. It must support fine-grained policies that would enable fully customisable BRICKS installations.
  • Search and Browse: This brick allows the discovery of DL objects by supporting different kinds of queries. It overcomes differences in language and in metadata schemata, and takes into account personalization of query result. The BRICKS browser allows the exploration by navigation of the whole information space of the digital libraries, allowing users tocontent, metadata, both at the record and at the schema level.

Basic BRICKS Services

  • Content Management: It is responsible for managing content that institutions decide to persist and make available via the BRICKS infrastructure. Content is kept locally, and can be accessed only by those users entitled to do it by the BRICKS security system.
  • Metadata Management: It manages metadata about available content, harvest legacy metadata and import them into the system, and makes it available to querying.
  • Accounting: Accounting allows content owners and service providers to request a usage fee.
  • IPR Protection: The IPR protection enables content providers to protect their assets by defining usage policies, track the usage of watermarked objects, etc.
  • Annotation Management: Similarly to metadata management, this Brick is specialised in managing annotations. Since the annotation are needed globally and all the time, annotation management will be based on the top of the decentralised datastore.
  • Service Composition: Finally, it should be possible to compose more complex services from available. The Brick provides a way to define, deploy, and run them.