Browse and search developer information

Registry Repository

Pattern Description



This is an evolution of the shared repository pattern in which the “registry” and “repository” components are separated. This allows a single registry to provide indexing and querying of information and documents held across multiple repositories.

When an information item/document is submitted to a repository a pointer to the information item/document is also registered within the registry, with relevant associated metadata describing the information item/document. This can be implemented in a variety of ways – the repository can initiate the creation of the registry entry, or vice-versa, or it can be done directly by the Information Source.

A Consumer can then query the registry to retrieve a list of information items/document matching their criteria. They can then retrieve specific items from that list by requesting them from the relevant Repository.


  • Allows information from a range of repositories, potentially in a range of organisations to be indexed and searched.
  • Has the potential to support the sharing of any kind of information at any level of granularity from any source.
  • Information Sources do not need to be aware of the existence or capabilities of the Information Consumers.
  • Can be combined with a subscription and notification mechanism to notify Consumers when information changes


  • Sharing policies (data sharing agreements) must be agreed by all parties.
  • Governing the use of the metadata about entries in the registry may be difficult, especially if the metadata itself contains items that could be sensitive.