modifs.mineures sans commentaires

This commit is contained in:
Jephté Clain 2023-12-22 15:25:22 +04:00
parent 299aa26a95
commit 487f71c7e6
1 changed files with 15 additions and 39 deletions

View File

@ -76,7 +76,7 @@ const SCALAR_SCHEMA = [
"messages" => "messages à afficher en cas d'erreur d'analyse", "messages" => "messages à afficher en cas d'erreur d'analyse",
"formatter_func" => "une fonction qui formatte la valeur pour affichage", "formatter_func" => "une fonction qui formatte la valeur pour affichage",
"format" => "format à utiliser pour l'affichage", "format" => "format à utiliser pour l'affichage",
"" => "nature du schéma: scalar", "" => ["scalar"],
"name" => "identifiant de la valeur", "name" => "identifiant de la valeur",
]; ];
~~~ ~~~
@ -91,11 +91,12 @@ const SCALAR_SCHEMA2 = [
"type" => "string", "type" => "string",
"default" => null, "default" => null,
"title" => "une valeur chaine", "title" => "une valeur chaine",
"" => ["scalar"],
]; ];
~~~ ~~~
Si le schéma n'est pas dans sa forme normalisée, et que sa nature n'est pas Si la nature du schéma n'est pas spécifiée, on considère que c'est un schéma de
spécifiée, on considère que c'est un schéma de nature scalaire si: nature scalaire si:
* c'est une chaine, qui représente alors le type, e.g `"string"` * c'est une chaine, qui représente alors le type, e.g `"string"`
* c'est un tableau avec un unique élément à l'index 0 de type chaine, qui est * c'est un tableau avec un unique élément à l'index 0 de type chaine, qui est
aussi le type, e.g `["string"]` aussi le type, e.g `["string"]`
@ -107,7 +108,8 @@ normalisées et correspondent à différents états de la valeur tels qu'analys
par `checker_func` par `checker_func`
~~~php ~~~php
const MESSAGE_SCHEMA = [ const MESSAGE_SCHEMA = [
"absent" => "message si la valeur n'existe pas et qu'elle est requise", "missing" => "message si la valeur n'existe pas dans la source et qu'elle est requise",
"unavailable" => "message si la valeur vaut false dans la source et qu'elle est requise",
"null" => "message si la valeur est nulle et qu'elle n'est pas nullable", "null" => "message si la valeur est nulle et qu'elle n'est pas nullable",
"empty" => "message si la valeur est une chaine vide et que ce n'est pas autorisé", "empty" => "message si la valeur est une chaine vide et que ce n'est pas autorisé",
"invalid" => "message si la valeur est invalide", "invalid" => "message si la valeur est invalide",
@ -120,13 +122,13 @@ Une liste est modélisée de cette manière:
~~~php ~~~php
const LIST_SCHEMA = [ const LIST_SCHEMA = [
ITEM_SCHEMA, ITEM_SCHEMA,
"" => "nature du schéma: list", "" => ["list"],
]; ];
~~~ ~~~
où ITEM_SCHEMA est le schéma des éléments de la liste où ITEM_SCHEMA est le schéma des éléments de la liste
Si le schéma n'est pas dans sa forme normalisée, et que sa nature n'est pas Si la nature du schéma n'est pas spécifiée, on considère que c'est un schéma de
spécifiée, on considère que c'est un schéma de nature liste si: nature liste si:
* c'est un tableau avec un unique élément de type tableau à l'index 0, e.g * c'est un tableau avec un unique élément de type tableau à l'index 0, e.g
`[["string", null, "required" => true]]` `[["string", null, "required" => true]]`
@ -137,14 +139,14 @@ Un tableau associatif est modélisée de cette manière:
const LIST_SCHEMA = [ const LIST_SCHEMA = [
KEY => VALUE_SCHEMA, KEY => VALUE_SCHEMA,
... ...
"" => "nature du schéma: assoc", "" => ["assoc"],
]; ];
~~~ ~~~
où l'ensemble des occurrences de `KEY => VALUE_SCHEMA` définit le schéma de la où l'ensemble des occurrences de `KEY => VALUE_SCHEMA` définit le schéma de la
valeur dont la clé est `KEY` valeur dont la clé est `KEY`
Si le schéma n'est pas dans sa forme normalisée, et que sa nature n'est pas Si la nature du schéma n'est pas spécifiée, on considère que c'est un schéma de
spécifiée, on considère que c'est un schéma de nature associative si: nature associative si:
* c'est un tableau uniquement associatif avec aucun élément séquentiel, e.g * c'est un tableau uniquement associatif avec aucun élément séquentiel, e.g
`["name" => "string", "age" => "int"]` `["name" => "string", "age" => "int"]`
@ -154,21 +156,7 @@ S'il s'agit d'une valeur scalaire, il y a quelques clés de définitions
supplémentaires: supplémentaires:
~~~php ~~~php
const VALUE_SCHEMA = [ const VALUE_SCHEMA = [
# recopié de SCALAR_SCHEMA ...
"type" => "types autorisés de la valeur",
"default" => "valeur par défaut si la valeur n'existe pas",
"title" => "libellé de la valeur, utilisable par exemple dans un formulaire",
"required" => "la valeur est-elle requise? si oui, elle doit exister",
"nullable" => "si la valeur existe, peut-elle être nulle?",
"desc" => "description de la valeur",
"checker_func" => "une fonction qui vérifie une valeur et la classifie",
"parser_func" => "une fonction qui analyse une chaine pour produire la valeur",
"messages" => "messages à afficher en cas d'erreur d'analyse",
"formatter_func" => "une fonction qui formatte la valeur pour affichage",
"format" => "format à utiliser pour l'affichage",
"" => "nature du schéma: scalar",
"name" => "identifiant de la valeur",
# spécifique à VALUE_SCHEMA
"pkey" => "chemin de clé de la valeur dans le tableau associatif", "pkey" => "chemin de clé de la valeur dans le tableau associatif",
"header" => "nom de l'en-tête s'il faut présenter cette donnée dans un tableau", "header" => "nom de l'en-tête s'il faut présenter cette donnée dans un tableau",
"composite" => "ce champ fait-il partie d'une valeur composite?", "composite" => "ce champ fait-il partie d'une valeur composite?",
@ -179,13 +167,7 @@ Pour une liste, il y a quelques clés de définitions supplémentaires:
~~~php ~~~php
const VALUE_SCHEMA = [ const VALUE_SCHEMA = [
"" => ["list", "" => ["list",
# recopié de LIST_SCHEMA ...
"title" => "libellé de la valeur",
"required" => false,
"nullable" => true,
"desc" => "description de la valeur",
"name" => "identifiant de la valeur",
# spécifique à VALUE_SCHEMA
"pkey" => "chemin de clé de la valeur dans le tableau associatif", "pkey" => "chemin de clé de la valeur dans le tableau associatif",
], ],
]; ];
@ -195,13 +177,7 @@ Pour une tableau associatif, il y a quelques clés de définitions supplémentai
~~~php ~~~php
const VALUE_SCHEMA = [ const VALUE_SCHEMA = [
"" => ["assoc", "" => ["assoc",
# recopié de ASSOC_SCHEMA ...
"title" => "libellé de la valeur",
"required" => false,
"nullable" => true,
"desc" => "description de la valeur",
"name" => "identifiant de la valeur",
# spécifique à VALUE_SCHEMA
"pkey" => "chemin de clé de la valeur dans le tableau associatif", "pkey" => "chemin de clé de la valeur dans le tableau associatif",
], ],
]; ];