web-dumps / conditor-dumps /
@Nicolas Thouvenin Nicolas Thouvenin authored on 14 Mar 2023
..
01-query no default query 1 year ago
02-download feat(conditor-dumps): create and first request 1 year ago
03-create-fields feat(conditor-dumps): create-fields 1 year ago
04-enrich feat(conditor-dumps): add step 4 1 year ago
05-future-loader feat(conditor-dumps): Add 05 directory + make target 1 year ago
.gitignore feat(conditor-dumps): Switch to JSON Lines format 1 year ago
02-download.ini feat(conditor-dumps): Switch to JSON Lines format 1 year ago
03-create-fields.ini refactor(conditor-dumps): Move fields omitting to different stages 1 year ago
04-enrich.ini fix: remove debug trace 1 year ago
05-future-loader.ini refactor(conditor-dumps): Move fields omitting to different stages 1 year ago
Makefile feat: add parallelization 1 year ago
README.md docs(conditor-dumps): Update packages, docker image 1 year ago
README.md

Conditor-dumps

Collecte, restructuration et enrichissement de données Conditor.

Les fichiers fournis sont au format JSON Lines (.jsonl), ce qui veut dire que le loader utilisé pour LODEX doit être adapté.

📗 Tant qu'une étape n'est pas terminée, le fichier résultant est suffixé par .crdownload.

Étapes

01-query

Dépôt d'un fichier NOM_DU_FICHIER.txt (requête) dans le répertoire 01-query.

02-download

Téléchargement de données via la requête sur l'api Corhal.

03-create-fields

Création des champs suivants :

  • ApilPublicationDate à partir de données existantes dans le json (publicationDate et electronicPublicationDate).
  • ApilFinancement à partir du champ funders
  • ApilRnsr au niveau authors/affiliations, à partir du champ authors/affiliations/rnsr et s'il n'est pas présent à partir du champ authors/affiliations/enrichments/rnsr

04-enrich

Appel de deux web services (informations RNSR et instituts CNRS) pour créer les champs suivants :

  • ApilWsIsCnrs
  • ApilWsLaboSigle (indisponible dans la version 1.13.0)
  • ApilWsLaboIntitule
  • ApilRnsr à partir des champs authors/affiliations/ApilRnsr dédoublonnés.
  • ApilWsInstitutCnrs à partir du champ ApilRnsr
  • ApilWsSigleLaboIntitule (indisponible dans la version 1.13.0)

Appel de plusieurs web services de mapping (documentType, source, publisher) et d'outils bibliographiques (crossref) pour créer les champs suivants :

  • ApilWsTypeDoc homogénéisé à partir du champ originalGenre. Si l'homogénéisation renvoie un "n/a" alors on récupère la valeur d'origine originalGenre.
  • ApilWsSource Récupération du champ host/title. Si vide, alors récupération du champ host/conference/name. Homogénéisation des sources, si résultat "n/a", conservation de la valeur d'origine (host/title ou host/conference/name).
  • ApilWsPublisher champ d'origine host.publisher et par défaut on récupère un éditeur à partir de la racine du champ doi. Si le champ doi renvoie un "n/a" alors on récupère le champ d'origine host.publisher.

Appel du web service (Libpostal) pour créer les champs suivants

  • ApilWSCodeISO récupéré à partir du champ Authors.affiliation.address.
  • ApilWSCountry récupéré à partir du champ Authors.affiliation.address.

05-future-loader

Cette étape sert à préparer un loader spécifique à Conditor. À terme, son contenu sera intégré à ce loader.

Nouveaux champs créés:

  • ApilCollation: concaténation de host.volume, host.issue, host.pages.range,
  • ApilProvenance: récupération de la source dans sourceUids, et dédoublonnage.

Configuration

⚠️ Attention: utilisez au moins la version 1.0.4 de lodex-makefile et la version 14 de node.

S'assurer d'avoir les versions suivantes :

"packages": [
    "@ezs/core@2.4.1",
    "@ezs/basics@1.23.2",
    "@ezs/conditor@2.10.3",
    "@ezs/analytics@2.0.18"
  ]

Reste de la configuration :

{
    "environnement": {
        "CRON_VERBOSE": true,
        "EZS_VERBOSE": false,
        "EZS_PIPELINE_DELAY": 28800
    },
    "files" : {
        "zip": "https://gitbucket.inist.fr/tdm/web-dumps/archive/conditor-dumps/conditor-dumps@1.13.0.zip"
    },
    "tasks": [
        {
            "Target": "watch",
            "RunOnStartup": true
        }
    ]
}

Trello : https://trello.com/b/wJoKuJXZ/conditor-m%C3%A9trie