diff --git a/authorname-disambiguation/README.md b/authorname-disambiguation/README.md deleted file mode 100755 index d7f0c28..0000000 --- a/authorname-disambiguation/README.md +++ /dev/null @@ -1,60 +0,0 @@ - -# Utilisation du Web service - -URL du webservice : https://authorname-disambiguator-1.services.inist.fr - -## ORCID - -La route pour la désambigüisation avec orcid : `/orcid` - - - - -### Fichier d'entrée -Un objet au format json représenté comme suite : -```python -objet = { - "id" : "0000-0002-8279-9690", - "value" : { - "authorname" : "Laurent DUPONT", - "title" : "Applying a Living Lab Approach to Smart Grid Training Course Design", - "affiliation" : "Université de Lorraine ERPI / ENSGSI: NANCY, FR ", - "publication_date" : 2020 - } -} -``` -L'`id` peut prendre n'importe quel valeur qui permet d'identifier l'objet. Dans le cas ci-dessus, nous avons choisi l'Orcid de l'auteur. -`value` contient la notice. les champs de la notice qui seront traités sont : -`authorname`, `title`, `affiliation`, `coauthors`, `ids`, `keywords`, `publication_date`, `journal`, `email`. - -**NB** : Seul le champ authorname est obligatoire. -### Fichier de sortie - -On a : -```python -objet = { - "id" : "000-0002-8279-9690", - "value" : { - "orcid": "000-0002-8279-9690" - "score" : 0.23076923076923078, -} -``` - -## ML authorname disambiguation - -**En cours délaboration** - \ No newline at end of file diff --git a/authorname-disambiguation/requirements.txt b/authorname-disambiguation/requirements.txt deleted file mode 100755 index e3dca0a..0000000 --- a/authorname-disambiguation/requirements.txt +++ /dev/null @@ -1 +0,0 @@ -git+http://vxgit.intra.inist.fr:60000/dago/orcid-disambiguation.git#egg=disambiguator \ No newline at end of file diff --git a/authorname-disambiguation/swagger.json b/authorname-disambiguation/swagger.json deleted file mode 100755 index 336cac8..0000000 --- a/authorname-disambiguation/swagger.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "servers": [{ - "url": "{scheme}://{hostname}", - "variables": { - "scheme": { - "default": "https" - } - } - }], - "tags": [ - { - "name": "orcid_disambiguation", - "description": "Authorname disambiguation with orcid ", - "externalDocs": { - "description": "Plus de documentation", - "url": "https://gitbucket.inist.fr/tdm/web-services/tree/master/orcid-disambiguation" - } - } - ] -} \ No newline at end of file diff --git a/authorname-disambiguation/v1/orcid.ini b/authorname-disambiguation/v1/orcid.ini deleted file mode 100755 index d8ed5af..0000000 --- a/authorname-disambiguation/v1/orcid.ini +++ /dev/null @@ -1,55 +0,0 @@ -# OpenAPI Documentation - JSON format (dot notation) -post.responses.default.description = Return all objects with enrich fields -post.responses.default.content.application/json.schema.$ref = #/components/schemas/JSONStream -post.summary = Enrich one field of each Object with a Python function -post.requestBody.required = true -post.requestBody.content.application/json.schema.$ref = #/components/schemas/JSONStream -post.parameters.0.in = query -post.parameters.0.name = path -post.parameters.0.schema.type = string -post.parameters.0.description = The path in each object to enrich with an Python script -post.parameters.1.in = query -post.parameters.1.name = indent -post.parameters.1.schema.type = boolean -post.parameters.1.description = Indent or not the JSON Result - - -[use] -plugin = @ezs/local -plugin = @ezs/basics -plugin = @ezs/storage -plugin = @ezs/analytics - -[JSONParse] -separator = * - -[expand] -path = env('path', 'value') -size = 100 - -# in production mode, uncomment the following line -# cache = boost - - -[expand/exec] -# command should be executable ! -command = ./v1/orcid.py - - -; args = fix('--url') -; args = env('--url',"https://vicorhales1.intra.inist.fr:9200") -; args = fix('--index') -; args = env('--index','records-fromconditor') -; args = fix('--login') -; args = env('--login','elastic') -; args = fix('--password') -; args = env('--password','secret') -; args = fix('--size') -; args = env('--size','100') -; args = fix('--http_proxy') -; args = env('--http_proxy','') -; args = fix('--https_proxy') -; args = env('--https_proxy','') - -[dump] -indent = env('indent', false) diff --git a/authorname-disambiguation/v1/orcid.py b/authorname-disambiguation/v1/orcid.py deleted file mode 100755 index a4a1248..0000000 --- a/authorname-disambiguation/v1/orcid.py +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/python3 -import sys -import json -from disambiguator.disambiguate import Disambiguator - - -for line in sys.stdin: - data = json.loads(line) - d = Disambiguator(**data["value"]) - res = d.get_best_orcid_from_df() - data["value"] = res - sys.stdout.write(json.dumps(data)) - sys.stdout.write('\n') \ No newline at end of file diff --git a/authors-tools/README.md b/authors-tools/README.md new file mode 100644 index 0000000..48abf57 --- /dev/null +++ b/authors-tools/README.md @@ -0,0 +1,95 @@ + +# Authors-tools + +URL du webservice : https://authors-tools-1.services.inist.fr. + +Elle offre plusieurs services autour des auteurs dans les notices bibliographiques: + +- `orcid-disambiguation`: octroie un orcid a un auteur si celui-ci existe dans l'API ORCID. +- `ml-orcid`: utilise des méthodes de Machine Learning pour désambigüsier un corpus co-écrit par un `nom d'auteurs` (à distinguer d'`auteur`) + +## Configuration + +Il faut préciser dans le fichier de configuration de l'instance qu'elle utilise des paquets nodes: + +- `@ezs/analytics` +- `@ezs/basics` +- `@ezs/analytics` +- `@ezs/storage` + +Bien sûr, les dernières versions sont préférables. + +Exemple: + +```json +{ + "packages": [ + "@ezs/analytics@1.13.0", + "@ezs/basics@1.11.0", + "@ezs/conditor@2.4.1", + "@ezs/analytics@1.16.12" + ] +} +``` + + +## Utilisation + +### v1/orcid-disambiguation + +**Fichier d'entrée** +Un objet au format json représenté comme suite : +```python +objet = { + "id" : "0000-0002-8279-9690", + "value" : { + "authorname" : "Laurent DUPONT", + "title" : "Applying a Living Lab Approach to Smart Grid Training Course Design", + "affiliation" : "Université de Lorraine ERPI / ENSGSI: NANCY, FR ", + "publication_date" : 2020 + } +} +``` +L'`id` peut prendre n'importe quel valeur qui permet d'identifier l'objet. Dans le cas ci-dessus, nous avons choisi l'Orcid de l'auteur. +`value` contient la notice. les champs de la notice qui seront traités sont : +`authorname`, `title`, `affiliation`, `coauthors`, `ids`, `keywords`, `publication_date`, `journal`, `email`. + +**NB** : Seul le champ authorname est obligatoire. + +**Fichier de sortie** + +On a : +```python +objet = { + "id" : "000-0002-8279-9690", + "value" : { + "orcid": "000-0002-8279-9690" + "score" : 0.23076923076923078, +} +``` + + + + + + + +## ML disambiguation + +**En cours d'élaboration** + + \ No newline at end of file diff --git a/authors-tools/swagger.json b/authors-tools/swagger.json new file mode 100644 index 0000000..929631d --- /dev/null +++ b/authors-tools/swagger.json @@ -0,0 +1,23 @@ + + + { + "servers": [{ + "url": "{scheme}://{hostname}", + "variables": { + "scheme": { + "default": "https" + } + } + }], + "tags": [ + { + "name": "orcid_disambiguation", + "description": "Authorname disambiguation with orcid ", + "externalDocs": { + "description": "Plus de documentation", + "url": "https://gitbucket.inist.fr/tdm/web-services/tree/master/orcid-disambiguation" + } + } + ] + } +