CiteProc

Analyse des champs

Le processeur de citation CiteProc prend en entrée un objet JSON. Pour obtenir un exemple :

  • On télécharge un fichier RIS depuis une publication sur le site de Cairn
  • On le convertit au format BibTeX grâce à un site externe : https://www.bibtex.com/c/bibtex-to-ris-converter/ (pensez à changer source/cible)
  • On l’importe avec la gem bibtex-ruby et on le convertit au format JSON pour CiteProc
require 'bibtex'
BibTeX.open('./Cairn-RECMA_354_0133-20220919.bib').to_citeproc
{
  "author": [
    {
      "family": "Bancel",
      "given": "Jean-Louis"
    }
  ],
  "title": "Quelles normes comptables pour une société du commun ? Édouard Jourdain, Éd. Charles Leopold Mayer/Institut Veblen, 2019, 220 pages",
  "container-title": "RECMA",
  "publisher": "Association RECMA",
  "volume": "354",
  "issue": "4",
  "page": "133-134",
  "DOI": "10.3917/recma.354.0133",
  "URL": "https://www.cairn.info/revue-recma-2019-4-page-133.htm",
  "language": "FR",
  "issued": {
    "date-parts": [
      [
        2019
      ]
    ]
  },
  "type": "article-journal",
  "id": "RECMA_354_0133"
}

De cet objet JSON, on peut en déduire les informations nécessaires à la génération de la citation

  • ID : RECMA_354_0133 (Acronyme revue, n° vol, n° page)
  • Auteur : Bancel, Jean-Louis (séparation entre nom et prénom)
  • Titre : Quelles normes comptables pour une société du commun ? Édouard Jourdain, Éd. Charles Leopold Mayer/Institut Veblen, 2019, 220 pages
  • Journal : RECMA
  • Année : 2019
  • Editeur : Association RECMA
  • Volume : 354
  • Numéro : 4
  • Pages : 133-134
  • DOI : 10.3917/recma.354.0133 (Namespace de Cairn / ID Publication)
  • URL : ``
  • Langue : FR

Génération des citations

Avec cet objet JSON, on peut ensuite générer la citation avec le style de son choix parmi les styles inclus dans la gem csl-styles.

require 'citeproc'
require 'csl/styles'

input = [{...}]

cp_apa = CiteProc::Processor.new style: 'apa', format: 'text'
cp_apa.import input

cp_iso = CiteProc::Processor.new style: 'iso690-author-date-fr-no-abstract', format: 'text'
cp_iso.import input

cp_mla = CiteProc::Processor.new style: 'modern-language-association', format: 'text'
cp_mla.import input

puts "=== APA ==="
puts cp_apa.render :bibliography, id: input["id"]
puts "=== ISO ==="
puts cp_iso.render :bibliography, id: input["id"]
puts "=== MLA ==="
puts cp_mla.render :bibliography, id: input["id"]

# === APA ===
# Houssier, F. (2022). L'œil de Cyclope : une métaphore super-héroïque de transfert. Nouvelle Revue De l'Enfance Et De l'Adolescence, 6(1), 95–108. https://doi.org/10.3917/nrea.006.0095
# === ISO ===
# HOUSSIER, Florian, 2022. L'œil de Cyclope : une métaphore super-héroïque de transfert. Nouvelle Revue de l'Enfance et de l'Adolescence [en ligne]. 2022. Vol. 6, n° 1pp. 95–108. DOI 10.3917/nrea.006.0095. Disponible à l'adresse : https://www.cairn.info/revue-nouvelle-revue-de-l-enfance-et-de-l-adolescence-2022-1-page-95.htm
# === MLA ===
# Houssier, Florian. “L'Œil De Cyclope : Une Métaphore Super-Héroïque De Transfert.” Nouvelle Revue De l'Enfance Et De l'Adolescence, vol. 6, no. 1, 2022, pp. 95–108, https://doi.org/10.3917/nrea.006.0095.