Les styles peuvent être plus ou moins complexes, et il peut être plus ou moins aisé de les modifier. Si possible, il vaut mieux privilégier par conséquent :
Si le style que l’on souhaite créer correspond au style d’une revue (et peut donc potentiellement répondre aux besoins d’autres utilisateurs), il est possible de demander sa création au support Zotero.
Auteur : Tochis - CC-BY-NC - Source : Flickr
Les styles bibliographiques utilisés par Zotero sont écrits dans un langage spécifique, CSL (Citation Style Language), basé sur le langage XML. Ecrire un style bibliographique pour Zotero revient donc à coder les consignes concernant l'ensemble des éléments de la rédaction bibliographique (appels de citation, notes si applicable, bibliographie), en respectant le vocabulaire et la syntaxe CSL.
Si l'écriture d'un style CSL ne requiert pas une connaissance approfondie de XML, il importe de connaître quelques principes de base de ce langage.
C'est la première ligne du fichier CSL. Il contient la déclaration XML et spécifie le codage des caractères. Il se présentera ainsi dans la plupart des cas : <?xml version="1.0" encoding="utf-8"?>
.
Les éléments sont les blocs de base avec lesquels un fichier XML est construit. Ils peuvent être imbriqués hiérarchiquement : on parle d'éléments parent et d'éléments enfant. Le premier élément est l'élément racine (style
dans le langage CSL), duquel tous les éléments dépendent. On indente généralement les éléments enfant par des espaces ou des tabulations pour faciliter la compréhension.
Chaque élément est introduit par une balise <ouvrante>
et clos par une balise </fermante>
, ou une barre oblique s'il n'a pas de contenu. Toute balise ouverte doit impérativement être fermée.
Ex:
<element parent>
<element enfant/>
</element parent>
Un élément peut être qualifié et contenir des informations de deux manières :
<author>
<name>Anton Perdoncin</name>
<email>anton.perdoncin@gmail.com</email>
</author>
<link href="http://traces.revues.org" rel="documentation"/>
Pour éviter toute ambiguïté dans l'écriture XML, certains caractères significatifs pour la syntaxe XML doivent être substitués par d'autres lorsqu'ils sont utilisés dans un attribut ou dans le contenu textuel d'un élément. Les séquences d'échappement sont les suivantes :
<
pour <>
pour >&
pour &'
pour ’"
pour "Des commentaires pour expliciter des choix d'écriture ou clarifier des points peuvent être introduits sous la forme suivante :
<!-- commentaire libre à rédiger -->
. Ils seront reconnus par les applications utilisant le fichier comme du commentaire et non du code.
Contrairement à HTML, XML ne pardonne aucune erreur de syntaxe. Toute erreur (oubli d'une balise fermante, échappement incorrect, etc.) empêchera le fichier XML de fonctionner. Il convient donc de s'assurer que le fichier CSL fonctionne correctement en vérifiant qu'il est :
Un style CSL est structuré en plusieurs éléments.
style
: élément racine - précise notamment la version de CSL, le type de style et permet des paramétrage globaux (gestion des noms à particules, de l’indication du nombre de pages, abréviation des prénoms composés) - voir page dédiée
info
: métadonnées décrivant le style (nom, auteur, etc.)
citation
: décrit la façon dont les appels de citation ou les notes (pour les styles note) sont formatés - voir page dédiée
bibliography
: décrit la façon dont la bibliographie est formatée - voir page dédiée
macro
: permet la réutilisation des règles de formatage dans citation
et bibliography
et des styles plus compacts - voir page dédiée
locale
: permet de spécifier des termes, formats de dates et options de formatage différents de ceux prévus par défaut pour la langue
terms
: permet la modification de chaînes de caractères spécifiques (ex. remplacer « edited by » par « ed. by »)
On manipule dans les appels de citation, les notes et la bibliographie des données de nature différente, auxquelles des paramétrages spécifiques peuvent être appliqués. A chaque type de donnée correspond ainsi un type d'élément CSL. D'autres élements, group
et choose
, par exemple, sont davantage des éléments de rédaction que de contenu.
text
: le texte à afficher peut être celui d’une variable
, d’une macro
, d’un term
ou d’une value
date
: date de publication, date de consultation, etc.
names
: noms des auteurs, des éditeurs scientifiques, des éditeurs commerciaux, etc.
number
: volume, numéro, numéro dans la série, etc.
label
: étiquette de certaines données, par exemple page ou p. pour page, vol. ou volume pour volume, sous la dir. de pour l’éditeur scientifique, etc.
group
: simplifie l’écriture d’un style en :
choose
: créer des conditions - voir la boîté dédiée à cet élément.