Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
serveurscrutari:config:validation [2017/11/02 11:39] vincentserveurscrutari:config:validation [2023/03/05 23:07] (Version actuelle) – [DTD] vincent
Ligne 1: Ligne 1:
 ====== Fichier validation.xml : définir quelques règles de validation des données====== ====== Fichier validation.xml : définir quelques règles de validation des données======
  
-Le fichier validation.xml permet de définir des règles de validation qui vont s'appliquer au contenu des fiches. Trois règles sont disponibles :+Le fichier validation.xml permet de définir des règles de validation qui vont s'appliquer au contenu des fiches. Cinq règles sont disponibles :
  
   * //mandatory// : vérifie qu'un champ est présent et ne conserve pas la fiche s'il est absent (ne s'applique qu'à la géolocalisation pour le moment)   * //mandatory// : vérifie qu'un champ est présent et ne conserve pas la fiche s'il est absent (ne s'applique qu'à la géolocalisation pour le moment)
-  * //check// : vérifie la longueur d'une chaine de caractères et la coupe si nécessaire (ne s'applique qu'au sous-titre pour le moment) +  * //length// : vérifie la longueur d'une chaine de caractères et la coupe si nécessaire (ne s'applique qu'au sous-titre pour le moment) 
-  * //unique// : ne conserver que la première valeur d'un attribut+  * //unique// : ne conserve que la première valeur (ne s'applique qu'aux attributs) 
 +  * //format// : vérifie le format des valeurs (ne s'applique qu'aux attributs) 
 +  * //split// : découpe des valeurs trop longues (ne s'applique qu'aux attributs)
  
 ===== Structure du format XML ===== ===== Structure du format XML =====
  
-L'élément racine est l'élément !!<validation>!!, il contient les éléments suivants en nombre illimité :+L'élément racine est l'élément !!<validation>!!. Il contient des éléments dont le nom reprenne ceux des cinq règles édictées ci-dessus. Tous ces éléments nécessite un attribut !!@field!! qui est le nom du champ sur lequel s'applique la règle. Les noms de champs acceptés sont : 
 +  * //soustitre// : champ « Sous-titre » 
 +  * //geoloc// : champ « géolocalisation » 
 +  * //namespace:localkey//: le nom complet de l'attribut (pour des raisons historiques, il est également possible d'indiquer le nom avec deux attributs !!@ns!! contenant la valeur de //namespace// et !!@key!! contenant la valeur de //localkey//
 + 
 +La liste des éléments disponibles est donc la suivante :
  
   * !!<mandatory>!! : vide avec l'unique attribut !!@field!! qui contient le nom du champ obligatoire (//geoloc// pour la géolocalisation)   * !!<mandatory>!! : vide avec l'unique attribut !!@field!! qui contient le nom du champ obligatoire (//geoloc// pour la géolocalisation)
-  * !!<check>!! : vide avec trois attributs : !!@field!! le nom du champ, !!@min!! la taille minimale de conservation, !!@max!! la taille maximale (quand une chaine est plus grande que //@min//, elle est coupée avant //@max// à un signe de fin de phrase s'il existe. +  * !!<length>!! : vide avec trois attributs : !!@field!! le nom du champ, !!@min!! la taille minimale de conservation, !!@max!! la taille maximale (quand une chaine est plus grande que //@min//, elle est coupée avant //@max// à un signe de fin de phrase s'il existe (l'ancien nom <check> est accepté) 
-  * !!<unique>!! ! vide avec deux attributs : !!@ns!! l'espace de nom de l'attribut et !!@key!! la clé locale+  * !!<unique>!! : vide avec l'unique attribut !!@field!! qui contient le nom du champ qui doit avoir une seule valeur 
 +  * !!<format>!! : vide avec deux attributs : !!@field!! le nom du champ et !!@type!!, le type de format de données attendu. Un seul type de données est disponible pour le moment : //url// indiquant que la valeur doit être une URL valide 
 +  * !!<split>!! : vide avec trois attributs : !!@field!! le nom du champ, !!@near!! l'index qui sert de point de départ pour chercher la bonne coupure (un point suivi d'une espace) (par défaut : 350) et !!@threshold!! le seuil à partir duquel une coupure est réalisée (supérieur à !!@near!!, par défaut 500)
  
 ===== Exemple ===== ===== Exemple =====
  
-Ce fichier indique les trois règles prises en compte pour le moment :+Ce fichier indique lesrègles prises en compte pour le moment :
  
 <code xml> <code xml>
 <validation> <validation>
  <mandatory field="geoloc"/>  <mandatory field="geoloc"/>
- <check field="soustitre" min="150" max="250"/> + <length field="soustitre" min="150" max="250"/> 
-        <unique ns="geo" key="city"/> +        <unique field="geo:city"/> 
- <unique ns="sct" key="website"/> + <unique field="sct:website"/> 
-        <unique ns="sct" key="thumbnail"/>+        <unique field="sct:thumbnail"/>
 </validation> </validation>
 </code> </code>
Ligne 39: Ligne 48:
    <!ATTLIST mandatory field NMTOKEN #REQUIRED>    <!ATTLIST mandatory field NMTOKEN #REQUIRED>
        
-<!ELEMENT check (EMPTY)> +<!ELEMENT length (EMPTY)> 
-   <!ATTLIST check field NMTOKEN #REQUIRED> +   <!ATTLIST length field NMTOKEN #REQUIRED> 
-   <!ATTLIST check min NMTOKEN #REQUIRED> +   <!ATTLIST length min NMTOKEN #REQUIRED> 
-   <!ATTLIST check max NMTOKEN #REQUIRED>+   <!ATTLIST length max NMTOKEN #REQUIRED>
        
 <!ELEMENT unique (EMPTY)> <!ELEMENT unique (EMPTY)>
-   <!ATTLIST unique ns NMTOKEN #REQUIRED> +   <!ATTLIST unique field NMTOKEN #REQUIRED
-   <!ATTLIST unique key NMTOKEN #REQUIRED>+    
 +<!ELEMENT format (EMPTY)
 +   <!ATTLIST format field NMTOKEN #REQUIRED
 +   <!ATTLIST format type NMTOKEN #REQUIRED> 
 +    
 +<!ELEMENT split (EMPTY)> 
 +   <!ATTLIST split field NMTOKEN #REQUIRED> 
 +   <!ATTLIST split near NMTOKEN> 
 +   <!ATTLIST split treshold NMTOKEN>
  
 </code> </code>
  
serveurscrutari/config/validation.1509619196.txt.gz · Dernière modification : 2017/11/02 11:39 de vincent
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0