Skip to content

Procedures

Nuno Macedo edited this page Dec 2, 2016 · 40 revisions

Synchronization procedures

export

(javadoc)

Exports a list of local CRIS productions to an ORCID profile. This procedure essentially manages the works in the ORCID profile that are sourced by the CRIS.

The procedure detects every CRIS sourced work in the ORCID profile that matches any local production that is being exported; if there is no matching local production, the ORCID work is deleted from the profile. Otherwise it will be updated with the meta-data of one of the matching local productions. Finally, for local productions without any matching ORCID work new ORCID works are created. The matching is performed by detecting shared external ids.

Export has two modes of execution: in regular mode in, the ORCID works are only updated if the meta-data is not up-to-date; in forced mode works are always updated. Currently, the title, publication year and type are considered when testing whether works are up-to-date.

The update stage is two-phased in order to avoid potential conflicts: the first phase removes external identifiers that are obsolete from the CRIS sourced works, so that there are no conflicts with the new ones inserted in the second phase.

Requires

  • The procedure expects the CRIS service to provide the local productions in the ORCID schema, in particular encoding productions as works. Thus, the meta-data of the CRIS sourced works in the ORCID profile will be exactly that of the provided local productions that are to be exported.

  • The put-code of these local productions is expected to be used as local key identifiers, since these are disregarded during the update of the ORCID profile (new works are assigned fresh put-codes and updated works use the put-code of the existing ORCID work).

  • The provided local productions must pass the PTCRISync quality criteria to be kept synchronized in ORCID.

Ensures

  • The procedure reports the status for each of the input local productions, identifying them by the provided local put-code, including the ORCID error if the process failed. These are defined here.

  • If every work is exported successfully, the procedure guarantees that the set of works in the ORCID profile sourced by the CRIS is exactly that which was passed to the procedure.

Performance

This procedure performs a single GET call to the API to obtain the work summaries and PUT or POST calls for each of the input local productions. Additionally, DELETE calls can also be performed to remove spurious works. The procedure only fails if the initial GET fails, otherwise individual failures are reported in the output mapping. No asynchronous workers are used.

import works

(javadoc)

Discovers new valid works in an ORCID profile given a set of known CRIS productions. Each returned work results from a work group at ORCID (merged into as a single work) whose external identifiers do no match any local productions. To import updates for works with shared external identifiers the import updates procedure should be used instead.

The group merging collects the meta-data of the work of the group selected as preferred by the user and the external identifiers of the whole group. The selection of the meta-data from a group could be changed without affecting the correction of the procedure.

ORCID works that do not pass the PTCRISync quality criteria are ignored by this procedure. Works that do not match the criteria can be retrieved with the import invalid procedure. Note that currently group merging simply collects the meta-data (other than the external identifiers) from the preferred work, which is used in the quality assessment.

Requires

  • The procedure expects the CRIS service to provide the local productions in the ORCID schema, in particular encoding productions as works. Since only the external identifiers of the local productions are used to search for ORCID matches, the remainder meta-data of the input local productions could be left null.

  • The put-code of these local productions is expected to be used as local key identifiers, but these are actually disregarded by this procedure since the newly found works will not refer to any of the existing local productions.

Ensures

  • The procedure returns every work group, merged as a single group, whose external identifiers do not match any of the input local productions.

  • The merging algorithm collects the external identifiers of every grouped work, and the meta-data of the work of that group selected as preferred by the user.

  • Only works that pass the PTCRISync quality criteria are returned by the procedure.

  • Since the put-code attribute is used as a local key of each work, it is null for the returned works (and not the put-code of the remote ORCID works that gave origin to it).

Performance

This procedure performs a GET call to the API to obtain the summaries and an additional GET call for each work identified as valid. The procedure only fails if the initial GET fails. Asynchronous workers are used for getting the full works.

import updates

(javadoc)

Discovers updates to existing local CRIS productions in an ORCID profile.

Each returned work results from a work group at ORCID (merged into as a single work) whose external identifiers match a local productions but that introduces new external identifiers not known locally, referring to the local production that is to be updated. To import works without shared external identifiers, the import works procedure should be used instead.

These works contain only the meta-data that needs to be updated locally. Currently, only the introduction of newly found external identifiers is considered (i.e., those that were already present in the local productions that is being updated are removed from the returned updates).

Requires

  • The procedure expects the CRIS service to provide the local productions in the ORCID schema, in particular encoding productions as works. Since only the external identifiers of the local productions are used to search for ORCID matches, the remainder meta-data of the input local productions could be left null.

  • The put-code of these local productions is expected to be used as local key identifiers, since the found updates must refer to the existing local production that must be updated.

Ensures

  • The procedure returns every work group, merged as a single group, whose external identifiers match an input local production and contains additional unknown external identifiers.

  • The returned works assign to a matching local production the fields which need be updated. Currently, only newly found external identifiers are returned, the remainder meta-data fields being set to null.

  • Since only external identifiers are being collected from the ORCID works, the quality criteria is not enforced on remote ORCID works.

  • Since the put-code attribute is used as a local key of each work, the put-code of the returned works is that of the local production that is to be updated (and not the put-code of the ORCID works that gave origin to it).

Performance

This procedure simply performs a GET call to the API to obtain the summaries, since the remainder meta-data is irrelevant.

import invalid

(javadoc)

Discovers new invalid works (that do not pass the PTCRISync quality criteria) in an ORCID profile given a set of known local CRIS productions, as well as the causes for invalidity (which are defined here). Other than the criteria, the behavior is similar to that of the import works procedure. Note that currently group merging simply collects the meta-data (other than the external identifiers) from the work selected as preferred by the user, which is used in the quality assessment.

Requires

  • The procedure expects the CRIS service to provide the local productions in the ORCID schema, in particular encoding productions as works. Since only the external identifiers of the local productions are used to search for ORCID matches, the remainder meta-data of the input local productions could be left null.

  • The put-code of these local productions is expected to be used as local key identifiers, but these are actually disregarded by this procedure since the newly found works will not refer to any of the existing local productions.

Ensures

  • The procedure returns every work group, merged as a single group, whose external identifiers do not match any of the input local productions.

  • The merging algorithm collects the external identifiers of every grouped work, and the meta-data of the work of that group selected as preferred by the user.

  • Only works that fail the PTCRISync quality criteria are returned by the procedure.

  • Since the put-code attribute is used as a local key of each work, it is null for the returned works (and not the put-code of the remote ORCID works that gave origin to it).

Performance

This procedure performs a GET call to the API to obtain the summaries and an additional GET call for each work identified as invalid. The procedure only fails if the initial GET fails. Asynchronous workers are used for getting the full works.

import counter

(javadoc)

Counts new valid works in an ORCID profile given a set of known local CRIS productions, following the criteria of the [import works](#import-works] procedure.

Requires

  • The procedure expects the CRIS service to provide the local productions in the ORCID schema, in particular encoding productions as works. Since only the external identifiers of the local productions are used to search for ORCID matches, the remainder meta-data of the input local productions could be left null.

  • The put-code of these local productions is expected to be used as local key identifiers, but these are actually disregarded by this procedure since it only counts the newly found works.

Ensures

  • The procedure counts every work group whose external identifiers do not match any of the input local productions.

  • Only works that pass the PTCRISync quality criteria are counted by the procedure.

Performance

This procedure simply performs a GET call to the API to obtain the summaries, since the remainder meta-data is irrelevant, rendering it more efficient than the import works procedure.