All projects

Registry Core

The Linked Data Registry is an open source implementation of the Linked Data Registry specification – that we we helped to develop as a contribution to the UK Government Linked Data Working Group (UKGovLD). This Registry core repository is the primary base for UKGovLD registry implementations and is maintained active codebase for the registry, used…

The Challenge

As part of the cross-government Linked Data Working Group (UKGovLD) – to create an Open Source Linked Data registry software to enable the coordinated publishing and use of data across organisations. In particular, to create a means to support the publication and use of  agreed shared terms for things, where terms include codes, code lists, spatial object identifiers, namespaces and vocabulary elements.

Background

The need for an effective and open means to share terms, vocabularies and their definitions has always been fundamental to sharing and making use of data across and between organisations. In a web-based environment, both the opportunity and need arises to provide live, online registries for such terms. See for example the archived UK Gov Linked Data (UKGovLD) working group case study on ‘registries and weather’. 

The Linked Data Registry began in about 2012 as part of an investigation into the need for a shared UK Location Registry as part of the UK Location Programme. Subsequently, it was further developed, as a proof-of-concept implementation of a Linked Data Registry service, under the auspices of the UK Government Linked Data Working Group (UKGovLD) in 2013. It also forms a key part of our own Reference Data Manager offering.

At its heart, the purpose of this form of registry is to enable coordinated publishing and use of data across organizations. A key part of such coordination is to use agreed shared terms for things, where terms include codes, code lists, spatial object identifiers, namespaces and vocabulary elements. Thus allowing a set of organizations to allocate and publish terms, without clashing, and to discover and check the status of terms in use.  

The implementation runs as a java web application under an Open Source (Apache-2.0) licence. The core implementation was released in 2015 it provided the core features required to create, publish and maintain a Linked Data Registry – for example :

  • the ability to have single register and sub-registers
  • versioning of registers and register entries
  • web (HTTP) URIs for all entities that follow simple predictable patterns – so that all the relevant metadata about a registry or register item can be obtained in both human and machine readable form
  • flexible architecture allowing for shared URI namespace management and federation of registries – multiple organizations can serve and maintain their own parts of the shared namespace while maintaining the coherence of a single parent registry  
  • entry validation
  • workflow management – to support the lifecycle of of register items over time 
  • a role based security model
  • a comprehensive API that provides programmatic access to registry features

Registry Use and Enhancements

Subsequently the registry has been implemented by a range of organisations including:

And is also part of broader data platforms including: 

The Environment Agency – Environment Registry
The Food Standards Agency – FSA Codes Registry

The core registry code has also had a range of enhancements since its initial development, for example work commissioned by BRGM and rolled into the Open Source code – see the French Geoscience Data Registry project page for more details. Enhancements included:

  • Internationalisation 
  • Customisable workflows/life cycles for registry entries 
  • Supporting users in spotting possible duplications or mismatches when creating new registry entries
  • Supporting external notifications of updates to the registry
  • Support for joining the INSPIRE registry federation

Since its initial development in about 2012 the Linked Data Registry continues to be an highly effective and continually evolving means for meeting one of the most fundamental needs in making use of data across and between organisations. That is, making it possible to create, publish and maintain, shared vocabularies, identifiers, code lists and other kinds of terms across those organisations and their users.