====== Messages d'avertissement ====== Les messages d'avertissement indiquent que le serveur a rencontré une erreur en cours de son traitement mais que celle-ci ne l'a pas empêché de le mener à son terme. Typiquement, c'est le cas d'un paramètre optionnel faux : le serveur l'a simplement ignoré et pris la valeur par défaut prévue en cas d'absence de ce paramètre. Contrairement aux messages d'erreur, les messages d'avertissement ne remplace pas l'objet attendu mais le complète. Les messages d'avertissement peuvent être ignorés mais sont très utiles pour le débogage. Par défaut, les messages d'avertissement ne sont pas inclus dans le résultat ; pour le faire il suffit de rajouter le paramètre //warnings=1// à n'importe quelle requête. Les avertissements se présentent sous la forme d'un tableau où chaque élement a trois propriétés : une clé indiquant la nature de l'avertissement, le paramètre concerné par l'avertissement, la valeur de paramètre éventuellement à l'origine de l'avertissement. ===== Clés d'avertissement ===== Les avertissements susceptibles d'être rencontrés sont les suivants : * //malformedParameterValue// : la valeur du paramètre en question est mal formée, c'est par exemple une chaine quand un entier est attendu ou un code de langue non conforme * //unknownParameterValue// : la valeur du paramètre renvoie à un élément qui n'existe pas, c'est par exemple le code d'un mot-clé ou d'une fiche non utilisé ==== Objet retourné ==== Les avertissements sont inclus dans un tableau placé à la fin de l'objet racine, l'objet principal tel qu'il est attendu reste inchangé (des avertissements peuvent même accompagner un message d'erreur si celle-ci a lieu après les avertissements). { XXX: { // objet attendu }, warnings: [ //tableau des avertissements { key: … , // clé de l'avertissement (chaine) parameter: … , // paramètre sur lequel porte l'avertissement (chaine) values: … // tableau de chaines des valeurs à l'origine de l'avertissement (peut être vide) } ] }