query-dd048095e827558ca1adb10443d7a5e9

rq turtle/ttl

Exemple de flux de travail DOI-Zotero(Cita)-OpenRefine-QS est réconcilié par OpenRefine. Published inIdéal pour plusieurs articles de différentes revues. À partir d'une liste de DOI. Le champ Exemple de code en Python permettant de récupérer une liste de DOI à partir d'un ISSN (exemple avec Science Fiction Studies)Choisir une base de données. Lancer une requête. Exporter les résultats voulus au format RIS. Extraire une liste de DOI purs (chaque ligne commence par 10.). Il y a un DOI par ligne. )status_code.response ,'Error:'(print :else )'No items found for the specified journal.'(print :else )'DOIs written to "dois.txt"'(print )'\n' + doi(write.file :dois in doi for :file as )'w' ,'dois.txt'(open with # Write DOIs to a text file ]]'items']['message'[data in item for ]'DOI'[item[ = dois ]:'message'[data in 'items' if ()json.response = data # Extract the DOIs from the response :200 == status_code.response if # Check the response status )query_params=params ,base_url(get.requests = response } # Don't increase this number (max quota/threshold for error 400) ,1000 :'rows' ,'type:journal-article,from-pub-date:1973,until-pub-date:2023' :'filter' #'query.container-title': '"Science Fiction Studies"', # Specify the journal's name { = query_params 'https://api.crossref.org/journals/0091-7729/works' = base_url # base_url = 'https://api.crossref.org/works' # Construct the API request URL requests import # https://github.com/CrossRef/rest-api-doc """ @author: Pascaliensis with ChatGPT 3.5 + REST API doc of Crossref Created on Thu Jul 6 10:39:16 2023 """ # -- coding: utf-8 --Titre : ne contient pas = < Langue : ne contient pas = % Extra : ne contient pas = qid Nom : « Final - OK pour QS » Recherche enregistrée finale : liste prête à l'exportation vers QuickStatements. Titre contient : (un par ligne séparé par Au moins une des conditions suivantes) pp. paperback pbk £ $ press isbn Nom : « 4 - book review »Recherche enregistrée 4 : repère quelques compte rendus de lecture. J'ai fait le choix de les supprimer. Titre : contient = < Nom : « 3 : avec hmtl »Recherche enregistrée 3 : repère les codes html dans les titres. À supprimer. Langue : contient = % Nom : « 2 : sans langue »Recherche enregistrée 2 : repère les champs langues vides. Utiliser en, fr, pt, es, ... Extra : contient = qid Nom = « 1 : avec QID »Recherche enregistrée 1 : liste les références qui seront ignorées car déjà présentes dans Wikidata. Dans Zotero, créer des recherches enregistrées qui vont superviser le nettoyage des données : Cet outil se base sur CrossRef, DataCite, etc. (normalement tous les principaux distributeurs de DOI).Attendre un petit peu car cela peut prendre du temps s'il y a beaucoup de DOI (ma limite : 500 à la fois). Copier-coller cette liste de DOI dans Zotero grâce à la baguette magique. Ouvrir le fichier RIS avec Notepad++. Edition > Lignes > Trier : ne garder que les lignes contenant les DOI. Supprimer les débuts de ligne "DO - " par multiremplacements.Il est possible de vérifier que Cita a bien fait son travail avec un test de contrôle : lancer une requête SPARQL pour vérifier (voir plus bas pour la syntaxe à utiliser à partir des DOI). Observer que les références arrivent dans les recherches enregistrées. Attendre un peu. Parfois, Cita bloque donc ne le faire que pour des lots de maximum 200 à la fois.Clic-droit Cita > obtenir les QID Aller dans Ma Bibliothèque pour sélectionner toutes les références.Utiliser Cita pour repérer quels articles sont déjà dans Wikidata. Utiliser des marqueurs colorés _rejeté_QID, _rejeté_BookReview, etc. pour indiquer les articles à ignorer dans le traitement.Problèmes d'encodage de caractères : cédille (François) ou ï (Moïse) ou ü (Pflügers) ou autre : faire une passe de vérification dans le fichier prêt pour QS en cherchant : � Titres tout en majuscules : changer la casse ? Langue : vérifier chacune en fonction du titre (parfois c'est indiqué en alors que c'est fr ou es). EditorialsEnlever les (ça arrive).retractedPublication Pas d'auteur. Titres tout en majuscule : à changer ?Nettoyer le reste des références si besoin : Coller le code : Ouvrir la console Javascript. multiremplacementsNettoyer les codes html dans Zotero avec ;" item(s) updated" + length.ids return }); } }); true :skipDateModifiedUpdate ({save.item await // remplacer par YYYYYYY ));'e' ,/ {2,}/g(replace).fieldID(getField.item ,fieldID(setField.item ;fieldID || mappedFieldID = fieldID let );fieldName ,itemTypeID.item(getFieldIDFromTypeAndBase.ItemFields.Zotero = mappedFieldID let );id(getAsync.Items.Zotero await = item let { )ids of id let( for { () function async(executeTransaction.DB.Zotero await } ;"No items found" return { )length.ids!( if ();search.s await = ids var // chercher XXXXXX );' e' ,'contains' ,fieldName(addCondition.s ;userLibraryID.Libraries.Zotero = libraryID.s ();Search.Zotero new = s var );fieldName(getID.ItemFields.Zotero = fieldID var ;"title" = fieldName varchampsListe des double espace par rien par rien>i</ par rien>i< et YYYYY=e par d'autres séries: >supsup Format Wikidata QuickStatements.

Use at

PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX bd: <http://www.bigdata.com/rdf#>
SELECT DISTINCT ?item ?doi ?itemDescription WHERE {
  VALUES ?doi { "10.1002/ab.21963"
"10.1002/ajim.23256"
"10.1016/j.chb.2021.107149"
 }
  ?item wdt:P356 ?doi .
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}

Query found at

graph TD classDef projected fill:lightgreen; classDef literal fill:orange; classDef iri fill:yellow; v1("?doi"):::projected v2("?item"):::projected c3(["bd:serviceParam"]):::iri c5(["#91;AUTO_LANGUAGE#93;,en"]):::literal bind0[/VALUES ?doi/] bind0-->v1 bind00(["10.1002/ab.21963"]) bind00 --> bind0 bind01(["10.1002/ajim.23256"]) bind01 --> bind0 bind02(["10.1016/j.chb.2021.107149"]) bind02 --> bind0 v2 --"wdt:P356"--> v1 subgraph s1["http://wikiba.se/ontology#label"] style s1 stroke-width:4px; c3 --"wikibase:language"--> c5 end