PubTrack

https://img.shields.io/badge/Built_with-Cookiecutter_Django_Rest-F7B633.svgBuilt with https://img.shields.io/github/v/release/the16thpythonist/pubtrackVersion

Overview


PubTrack is a web application, which has been developed for administrative usage at the Institute for Data Processing and Electronics (IPE) of the Karlsruhe Institute of Technology (KIT).
It is used to monitor the status of scientific publications from various observed authors. For this purpose data about these publications is fetched from different data sources such as the KITOpen and Scopus databases. A web application UI can than be used to quickly assess the status of all the publications on the system, as well as providing actions to issue changes, if necessary.

Motivation

The KIT uses it’s own open access publication database KITOpen. Scientists working for any of the KIT’s institutes are encouraged to also insert their publications into the open access database aside from other possible journals. This is also partly for administrative reasons. When entering a new publication into the KITOpen database there is the option to supply a so called POF structure, which is an identifier for the funding resources used to finance this particular publication.
The correctness of this funding identifier is important for several reasons: For one thing it is obviously important to have transparency of which resources having been used for which tasks. But a more practical reason is that publication metrics of workgroups/institutes are often computed on the basis of these identifiers.

The Problem now is, that providing the correct identifier is the responsibility of each individual researcher, which is entering the publication into the system. And in a lot of cases they either get mixed up or forgotten completely. In such cases the generation of publication metrics is going to miss several items. And these metrics are crucial for the evaluation, which each institute is facing on a regular basis…

Aim

The PubTrack Tool aims (among other things) to provide a way to keep track of the status of these POF structures for each publication of the observed authors. A status is automatically computed on the basis of the pof fetched from the KITOpen database and the pof that is meant to be entered, thus automatically alerting the user, whenever there is a possible mistake.

Documentation


The documentation can be found at https://pubtrack.readthedocs.io/en/latest/index.html.

The documentation contains a more in depth explanation of the problem outline and the general working principle. More importantly the documentation contains more information about the first steps for setting up a new pubtrack instance in terms of installation, as well as more information about the development and the software stack, which has been used.
So visit the documentation for additional information, omitted from this README file!

Usage


Adding Authors

PubTrack keeps track of the publications, which are associated with a specific workgroup/institute by observing the authors affiliated with it. Thus to ensure the correct functionality of the tool, it is important to keep the list of these observed authors up-to-date.

Internally the application has two different representations of an author, this is the Author model on the hand and the MetaAuthor on the other.
The Author model refers to an author profile, which is directly associated with a publication. Such an author profile is automatically imported when importing publications. The Scopus database for example includes the list of authors with every publication, as such these authors are also imported into the internal pubtrack database. Consequently, there could be multiple of these author profiles simply resulting for example from different variations of name spelling within the external databases (Scopus, KITOpen).
The MetaAuthor model on the other hand represents an observed author. These instances are also not automatically imported, instead they have to be created manually

To create a new MetaAuthor (=observed author), head to the admin dashboard of the application, which can be found under https://{your-url}/admin. It might be necessary to enter the login credentials first.
Then navigate to the section “Meta authors” and press “ADD META AUTHOR” on the right hand side. Enter a valid first name, last name and slug (an all lower case unique name for the author, from which he will be identified from now on).

IMAGE?

Monitoring Publication Status

To monitor the status and view additional information about the publications registered on the site, navigate to the “KITOpen Analytics” tab within the navigation bar of the site in the upper right hand corner or use the url https://{your-url}/analytics/publications/kitopen-coverage.

On default this page will contain a list of all the publications, which are currently in the pubtrack database. The “Filters” section at the top of the page can be used to apply additional filters to this list to narrow down the displayed publications according to some specific attributes, by simply checking the corresponding boxes. Alternatively, the “Search” field beneath the filters can be used to search for an arbitrary sub string, which may appear within the title or the POF structure of the publications. Both these options can also be used in combination.

The list view of all the publications contains 5 main columns of information:

  • Publication Info: A combination of the first author of the publication and the title. This element is a hyper link, which points to the details page of that specific publication.
  • Watched Authors: Lists all the MetaAuthors(=observed authors) from the PubTrack database, which are also listed as authors of that specific publication.
  • KITOpen?: This is a boolean(yes/no) icon, which indicates whether the publication is registered in the KITOpen database or not.
  • POF Structure: If a POF Structure exists for this specific publication it will be listed in that column, otherwise the column will be empty.
  • Select: This column contains checkboxes, which can be used to select the publications. This selection is important for the actions, which can be applied to them…

Aside from these informations, which are encoded within these columns of the list view, each of the rows is a dropdown box. By clicking the arrow in the lower left-hand corner of the row it will extend revealing additional information.
This dropdown box is divided into two different sections. The first one being “Additional Information”: It contains secondary information about the publication, which may be useful, but is not important enough to be displayed as a separate column right away. This included the Scopus ID, the KITOpen ID and the DOI of the publication. If these values are known for a specific publication, they will be displayed as hyperlinks, where the KITOpen ID will direct to the KITOpen details page, the DOI to the doi details page etc…
The second section is about the “Publication Status”, which will be explained in a separate section.

Publication Status

The publication status is probably the most important construct of the PubTrack application. The status is used to actually manage publications in regards to their desired attributes. There are 4 different kinds of statuses, which can be associated with a publication:

  • Warning: Represents the fact, that something is wrong with some attributes of the publication, which may require an action from the user to “fix” the problem.
  • Pending: A status can be set to pending to signal, that some action to resolve the issues has been initiated by a user, but since these actions take some time, they are not yet reflected within the pubtrack database.
  • Permitted: With this status some aspect of the publication is still “wrong”, or rather there are still present, but with this status these issues are accepted and thus they will no longer pop up.
  • Resolved: This status is assigned, when there are no longer any issues with the publication. The publications attributes exactly match the expectations.

The publication status is automatically computed whenever the data of a publication is changed. Currently there are two scenarios, which lead to the warning status:

  • The publication is not represented on KITOpen: The reasoning for this is that a major goal of the pubtrack application is to have all the publications on KITOpen.
  • The publication has no/wrong POF structure: A list of accepted POF structures can be set for each pubtrack instance. The system then assumes that all publications have to have one of these POF’s. In case a publication does not have one of these it is flagged as a warning. There might also be cases of publications which do not have one of these POF’s, but are also not supposed to, because they are indeed associated with a different funding. That is the use case of setting their status to permitted (which has to be done manually)

Aside from these automatic computations, the status can also be set manually within the list view of the “KITOpen Analytics” tab or the details page of a publication. The status editor features a “description” input and a “solution” input field. The description is meant to describe what kind of issue a publication has. For example in the case that the publication is not even on KITOpen the description would be “Not on KITOpen”. The solution is meant to describe how the issue has been handled. For example if the user has send a mail to the KITOpen support to request a change of the POF structure, he could insert as solution “Sent mail to KITOpen Support” and set the status to pending.
To actually change the status, one of the buttons in the lower right-hand corner has to be pressed. The colors of the buttons are the same as the colors, which represent the different statuses.

Generating Metrics

Another feature of the pubtrack application is the generation of simple publication metrics on the basis of the publications, which are stored within the database. For this feature navigate to the “KITOpen Metrics” tab of the navigation bar or visit the URL https://{your-url}/analytics/publications/kitopen-metrics.
On this page, two boxes can be found: One containing checkboxes with years and another containing checkboxes with author names. For each of the items represented in these boxes at least one publication within the system has the corresponding attribute (year of publication or author).

To generate the metrics a combination of years and authors has to be selected. Once they have been selected, the “Metrics” section right underneath the selection boxes will update with the following information: A total amount of all publications, which match the selected attributes of either of the selected years and either of the selected authors. Beneath the total amount there will be a detailed record of number of publications by each individual, selected year and author.
Additionally there will be a list view of all the publications, which match this selection, so that the user can check the specific publications, that have contributed to this metric.

POF Structures

The following POF structures are available for KITOpen:
(Specific POF structure identifiers are subject to change. This listing was last updated July 2020)

  • Programm 51
    • 51.01.01 (POF III, LK 01) Teilchenphysik
    • 51.03.02 (POF III, LK 01) Katrin
    • 51.03.03 (POF III, LK 01) Kosmische Strahlung Auger
    • 51.03.04 (POF III, LK 01) Kosmische Strahlung Technologien
    • 51.03.05 (POF III, LK 01) Dunkle Materie
    • 51.03.06 (POF III, LK 01) Theoretische Astroteilchenphysik
    • 51.05.01 (POF III, LK 01) Edelweiß
    • 51.98.01 (POF III, LK 01) Programmleitung MU
  • Programm 54
    • 54.01.01 (POF III, LK 01) ps und fs Strahlen
    • 54.02.01 (POF III, LK 01) Optische Signalübertragung
    • 54.02.02 (POF III, LK 01) Ultraschnelle Datenauswertung
    • 54.02.03 (POF III, LK 01) ASICs und Integrationstechnologien
    • 54.02.04 (POF III, LK 01) ANKA Detektoren
    • 54.02.05 (POF III, LK 01) Exzellenzstrategie Dark Matter
    • 54.98.01 (POF III, LK 01) Programmleitung MT
    • 54.99.01 (POF III, LK 01) Institutsbudgets für Programm MT

License


This software is published under the MIT License, further information can be found here

Credits


Contributors

  • Jonas Teufel (jonseb1998@gmail.com): Initial implementation

Software Stack

The following software has been used in the creation of this project:

  • Django: A python web framework
  • Django REST: An extension for django, specifically for creating REST API’s
  • Vue: A modern Javascript frontend framework for creating single page applications (SPA)
  • VueCLI: A command line tool for easily scaffolding and managing VueJS applications
  • Vue Showdown: A VueJS implementation of the Showdown library for dynamically displaying Markdown (MD) content on the web page