wiki:Centre Registry

Centre Registry 2

A current version is available on https://centres.clarin.eu/ . A staging version shall be deployed https://centres-staging.clarin.eu.

REST API

Responds to HTTP GET requests at the following paths:

New API

Please see https://github.com/clarin-eric/Centre-Registry/tree/master/centre-registry-app#rest-api

Old API

restxml/: gives a list of centres including the centre ID in XML.

restxml/n, where n is a centre ID: Gives detailed information about a centre in XML that is validated with this schema: http://catalog.clarin.eu/ds/ComponentRegistry/rest/registry/profiles/clarin.eu:cr1:p_1320657629667/xsd

Notes

Some services (WebLicht?) may depend on optional string-type properties of OAI-PMH endpoints that have been exported since the old API:

  • WebServiceType? is the semantic indication of the kind of webservices offered.
  • WebServicesSet? is just a name for the OAI-PMH set that contains the relevant web service metadata descriptions. It could be anything, so a harvester should be able to deal with arbitrary set names.

Dependents

  • The Harvest Manager at MPI-PL
  • WebLicht? at various German CLARIN Centres especially UTU
  • Monitoring at FZJ
  • FCS Aggregator

Open Tickets

Ticket Summary Component Priority Owner Reporter
No tickets found

Deployment using alpine-django image project

See `alpine-django` project. The following data layout is is needed for deployment:

/srv/Centre_Registry/                                                                                                                                                                                                
├── Centre-Registry-config                                                                                                                                                                                           
│   ├── centre_registry_project
│   │   ├── __init__.py
│   │   ├── settings.py.tmpl
│   │   ├── urls.py
│   │   └── wsgi.py
│   ├── manage.py
│   ├── MANIFEST.in
│   ├── setup.cfg
│   └── setup.py
├── database.sqlite
└── test_database.sqlite

The Centre Registry before 2.0

Open Tickets

Ticket Summary Component Priority Owner Reporter
No tickets found

Technical Specification

Introduction

The centres form the backbone of the distributed CLARIN infrastructure. So far the administration of the centre details has been done manually, noting down the entry points and contact information on a web site. In order to streamline the information gathering and to ensure machine accessibility of this data a Centre Registry needs to be built. In this page we specify the requirements for such a registry, in accordance with the CLARIN-D AP3 guidelines.

Requirements

The Centre Registry is a store for records with information about CLARIN centres. This document describes the data that it could contain (Data store), the web application for users to view and change the data (Web Interface) and the machine-accessible API (Web Service).

Example files

The CMDI files containing information about the CLARIN centre can be found in the SVN repository:

https://trac.clarin.eu/browser/CenterRegistry/data/

Data store

Each record has these fields:

Basic Information

  • name (string)
  • country (controlled vocabulary: subset of ISO 3166-2)
  • centre type (controlled vocabulary: A, B, C or E)
  • centre type status (0 or 1; string; to be used to describe the A/B/C/E centre status)
  • core description (string; possible multiple lines containing general information on the centre, e.g., the collection focus or policy)

Extended Information

  • Long term archiving policy (string)
  • CLARIN infrastructure services (0 or 1; string; meaning: non-standard offers like OAI harvesting)
  • strict versioning (boolean; meaning: 1 PID always points to 1 version)
  • repository system (string)
  • PID status (string)
  • assessment status (string)
  • website (URI)
  • references (0 or more description+URI):
    • description
    • URI, e.g., to link to an assessment reports
  • metadata (1 or more):
    • OAI access point (URI)
    • Metadata scheme (1 or more; controlled vocabulary: OLAC or CMDI)
    • Web Services Set (0 or 1; string; the OAI-PMH set that contains the webservice metadata records) - if a Web Services set is specified, 1 or more Web Service Types must be defined, otherwise there is no Web Service Type at all
    • Web Service Type (0 or more; controlled vocabulary: SOAP, REST or WebLicht?.)
  • AAI:
    • AAI status (string)
    • member of a national identity federation (0 or more; controlled vocabulary: subset of ISO 3166-2)
    • member of the CLARIN Service Provider Federation (boolean)
  • organisational information:
    • organisation details (see http://www.clarin.eu/organisations/3434 for an example)
    • contact information (name, email, phone) of a technical contact person
    • contact information (name, email, phone) of an administrative contact person
  • monitoring:
    • Service Provider test site (URI, link to the shib_test.pl script)
    • (As the nagios probes will be configured at the monitoring computer center no further fields required)

Empty values shouldn’t be allowed, e.g., if the Web Services Set field is left empty it isn’t instantiated and this is the same as an instance count of zero. It is very probable that new fields will be needed in the future, so the data model should be flexible. Also it should be easy to add new values to controlled vocabularies, e.g., to add a new allowed Web Service Type.

Web interface

  • initial view: a table like http://www.clarin.eu/centers with a link to the centre view for each centre
  • centre view: display all fields of a single centre
  • centre editing screen: a webform to changed the values of a centre
  • authorization: SAML-based, initally via the eduPersonPrincipleName attribute as received from the CLARIN IdP:
    • everyone should have read access
    • a few administrators (dietuyt@mpi.nl, menwin@mpi.nl, thorsten.trippel@uni-tuebingen.de) have write access

Web service

A REST-webservice returns information from the registry as:

  • JSON
  • CMDI (=XML, for the details of this format see below)

(Inspired by the web service for the Component Registry)

As the public REST-webservice is read-only no authorization should be required.

A CMDI profile has been created:

To start, the following functions should be available:

  • return a list of all centre (together with a unique centre ID): http://foo.eu/rest/centerregistry/centers
    • optional parameters: /xml (default, ad hoc xml encoding) or /json
    • output: centre ID, Basic information fields, if there is at least 1 OAI access point, providing metadata about web services
  • return all information about 1 centre: http://foo.eu/rest/registry/centers/{centreID}
    • optional parameters: /cmdi (default) or /json
    • output: all fields in the centre record

Documentation about the webservice:

Glossary

Archived information: the Centre Registry Glossary, explaining what each field means

Last modified 6 years ago Last modified on 09/12/18 15:59:38