diff --git a/generate_citation.py b/generate_citation.py index bf196767ba6246ad58a2369c9b6244dab4ec95fc..4dc359612396e340c3df7064cb8228d294b18e10 100644 --- a/generate_citation.py +++ b/generate_citation.py @@ -10,6 +10,13 @@ print ("# d'un export JSON Dataverse print ("# ===========================================================================#") print ("\n") +# Génération de citations selon le modèle décrit sur le site de Dataverse : +# https://dataverse.org/best-practices/data-citation + +# !!!!!!!!!! +# TODO +# - proposer différents styles de citations +# - accepter le nom de fichier comme argument en ligne de commande # ----------------------- # Imports et déclarations @@ -20,12 +27,15 @@ import os from pyDataverse.api import NativeApi, DataAccessApi from pyDataverse.models import Dataverse +# ------------------------------------- # Fonction de génération de la citation +# ------------------------------------- + def citation_generation(cit_authors,cit_title,cit_year,cit_data_repository,cit_version_number,cit_version_minor_number,cit_doi,cit_unf): cit_authors_len = len(cit_authors) cit_authors_len_test = cit_authors_len for cit_author in cit_authors: - if cit_authors_len_test == cit_authors_len : + if cit_authors_len_test == cit_authors_len : # le nom du premier auteur est suivi d'un point-virgule, les autres d'une simple virgule print(f"{cit_author}; ",end='') else: print(f"{cit_author}, ",end='') @@ -41,8 +51,10 @@ def citation_generation(cit_authors,cit_title,cit_year,cit_data_repository,cit_v print (".\n") - +# ---------------- # Fichier d'entrée +# ---------------- + filename_input = input ("Entrez le nom du fichier à traiter [export_json.json] : ") if filename_input =="": filename = "export_json.json" @@ -110,6 +122,8 @@ for doi,metadata in complete_list.items(): # if typeName == 'dateofDeposit': dateofDeposit = field['value'] + # Appel de la fonction + citation_generation(cit_authors = authors_list,cit_title=title,cit_year=dataset_yearofPublication,cit_data_repository=dataset_publisher,cit_version_number=dataset_versionNumber,cit_version_minor_number=dataset_versionMinorNumber, cit_doi=doi,cit_unf=dataset_unf)