Skip to content

ReferenceData

Urs Joss edited this page Aug 5, 2020 · 5 revisions

Reference Data

1. Introduction

The Menu Reference Data offers the infrastructure for maintaining three different items of reference data:

  • Keywords

  • Codes

  • Code Classes

In addition, it offers you access to the Synchronization tool, that lets you synchronize core and reference data from SciPaMaTo-Core into SciPaMaTo-Public.

2. Keywords

keywords help the users of SciPaMaTo-Public search the papers. Each paper contains the relevant keywords in the Methods field — in the main language.

You can maintain the list of keywords in SciPaMaTo-Core and synchronize them into SciPaMaTo-Public upon request. SciPaMaTo-Public offers those keywords in a drop-down-list, translated into the language of the browser locale (if supported). SciPaMaTo-Public will search the methods fields for the selected keywords.

By default, the system will use the translation in the main language to search the methods fields, regardless of the display language. If that translation does not exactly match the keywords encoded in the methods fields, it is possible to override the automatic translation to the main language.

The keyword list offers a filter that searches the list in all languages (including the override field).

You can create new keywords with the New Keyword button.

Keyword List

Clicking the translations will open the editor:

Keyword Editor

You can add or remove translations, but you should always maintain translations in all supported languages.

You can leave the override blank if the translation in the main language is matching the words in the methods field.

3. Codes

Code List

Codes are grouped into code classes. The code list always shows you codes of one single code class. You can select the code class to show from the select box.

Search all translations from the translation filter — or comments from the comments filter.

You can create new codes using the New Code button.

Clicking the translations field opens the code editor:

Code List

Enter the code and select the code class. Note that the numeric first part of the code must match the id of the code class — e.g. you cannot assign code 2F to code class 3. Add a sort index. It must be unique per code class. SciPaMaTo-Core ignores internal codes when synchronizing to SciPaMaTo-Public.

Enter a translation for each supported language. Comments are optional and can be left blank.

Don’t forget to save any changes using the save button.

4. Code Classes

Code Class List

Code Classes are used to group codes. Search all translations or comments from the filter. There are exactly eight code classes, you cannot add or remove them without changing the code.

Clicking the translations field opens the code editor:

Code Class List

Enter the code class and optionally a comment.

Don’t forget to save any changes using the save button.

5. Reference Data Synchronization

The main users of SciPaMaTo-Core maintain the data in SciPaMaTo-Core, which is only accessible through a VPN or in the internal network. A separate application SciPaMaTo-Public exposes parts of papers eligible for public access over the internet. SciPaMaTo-Public maintains its data in a dedicated database. Potentially both the application and the database may be running on a dedicated server, e.g. in a DMZ. SciPaMaTo-Public has no access or knowledge of SciPaMaTo-Core at all, thus limiting potential damage in case of a security breach.

SciPaMaTo-Core, on the other hand, offers the functionality of pushing (parts of) papers eligible for public access into the public database. The synchronization is implemented as a spring-batch module.

In a future user story, we may implement a workflow for Papers with different states a paper transitions through. The synchronization would only pick up papers in a particular state and push only those into SciPaMaTo-Public. We have not yet implemented this workflow, so all papers are eligible for being sent to SciPaMaTo-Public. However, only a selected subset of fields synchronizes into SciPaMaTo-Public.

5.1. Synchronizing the data

Click on the menu entry Synchronization

Menu Synchronization

SciPaMaTo opens a new page with a single button Synchronize. If you click it, the synchronization starts (you’ll see a spinner during the synchronization). SciPaMaTo will provide some information about the synchronization steps in the end.

5.2. The synchronized items

The synchronization process considers the following fields when pushing from SciPaMaTo-Core to SciPaMaTo-Public:

Languages

The maintained languages in the database (used for Code, Code Class, Keyword translations). This includes the information about which is the main language, e.g. which Keyword translation is used for actually searching the database. All languages in the core database are synchronized to SciPaMaTo-Public.

New Study Page Links

The additional links that are displayed on the New Study Page. All links in the core database are synchronized to SciPaMaTo-Public.

Code Classes

The Code Classes in all translations. All Code Classes in the core database are synchronized to SciPaMaTo-Public, as long as they have Codes assigned to them.

Codes

The Codes in all translations — except for internal codes that are not synchronized. All non-internal Codes in the core database are synchronized to SciPaMaTo-Public.

Papers

The studies/papers in the database. Papers are only synchronized if they have at least one Code assigned. SciPaMaTo aggregates certain codes before transferring them into SciPaMaTo-Public.

Newsletters

The Newsletter Issues for newsletters with status Published.

Newsletter Topics

The generic list of Newsletter Topics.

New Studies

The new study issue corresponds to the newsletter issue. They are only synchronized if the newsletter is in status Published and at least one paper is associated with it.

New Study Topic

As opposed to the generic Newsletter Topic list, the new study topic synchronizes the specific topics assigned to individual papers in every newsletter.

Keywords

The keywords used for searching papers with prepared keywords that are present in the studies in the main language. All keywords with translations are synchronized.