Classes de validation

Les classes de validation permettent d'appliquer différents types de règle métier. Certaines classes de validation peuvent être utilisées de façon générique tandis que d'autres sont utilisées à des fins spécifiques. Des validations peuvent être créées à partir d'un ensemble de classes de validation existantes. De nombreuses règles métier sur les noeuds peuvent être appliquées avec une classe de validation qui utilise une requête pour sa logique. Cela permet aux validations de tirer parti des requêtes qui ont été créées à des fins d'analyse pour gérer également l'intégrité des données. Des règles pour les hiérarchies et les versions ou des cas spéciaux pour les noeuds peuvent être réalisés à l'aide d'autres classes de validation. Quelques-unes des classes de validation sont utilisées uniquement à des fins de test de produit et ne doivent pas être utilisées dans un environnement de production.

Tableau 10-1 Classes de validation

Classes de validation Niveau Description Paramètres

BoolNodeInHier

Node

Vérifie que la propriété booléenne indiquée n'a pas la valeur True dans la hiérarchie spécifiée.

Propriété, Hiérarchie

ContainAllProp

Noeud global

Vérifie que la hiérarchie indiquée contient tous les noeuds pour lesquels cette propriété a la valeur True.

Hiérarchie, Propriété

ContainAllWith

Noeud global

Vérifie que la hiérarchie indiquée contient tous les noeuds pour lesquels la propriété spécifiée a la valeur indiquée.

Hiérarchie, Propriété, Valeur

CustPropQuery

Node

Vérifie à l'aide d'une requête prédéfinie et du résultat attendu.

Seule une requête de propriété locale peut être utilisée.

Nom de la requête de propriété, Valeur d'échec

DateRangeCheck

Node

Vérifie que la date de début est antérieure ou identique à la date de fin.

Date de début de la propriété, Date de fin de la propriété

Formule

Node

Vérifie un noeud à l'aide d'une logique métier exprimée dans une formule. False dans un résultat de formule se traduit par un échec de validation.

Formule

GlobalPropQuery

Noeud global

Vérifie à l'aide d'une requête prédéfinie et du résultat attendu.

Nom de la requête de propriété, Valeur d'échec

HierContainsRef

Node

La hiérarchie contient une référence au noeud lorsqu'une propriété booléenne a la valeur True, ou si le noeud est un noeud feuille et qu'une troisième propriété booléenne a la valeur True.

Nom de la hiérarchie, propriété booléenne pour tous les noeuds, propriété booléenne pour les noeuds feuille

HierFail

Hiérarchie

Echoue automatiquement au niveau de la hiérarchie à des fins de test.

Aucun

InvalidNameLength

Node

Vérifie que le nom du noeud n'est pas égal à la longueur indiquée.

Length

MaxChildren

Version

Vérifie que le nombre d'enfants par noeud ne dépasse pas la limite indiquée.

Nombre maximal d'enfants

MaxHierNodes

Hiérarchie

Vérifie que le nombre de noeuds de la hiérarchie ne dépasse pas la limite indiquée.

Nombre maximal de noeuds

MaxVersionNodes

Version

Vérifie que le nombre de noeuds de la version ne dépasse pas la limite indiquée.

Nombre maximal de noeuds

MergeEquiv

Fusion

Vérifie que le noeud affecté et le noeud de fusion ont la même valeur pour la propriété spécifiée.

Propriété de noeud global

MergePropSet

Fusion

Vérifie que si la valeur de propriété du noeud affecté est définie (remplacée), la valeur de propriété du noeud de fusion est définie pour la propriété spécifiée (les valeurs de propriété ne doivent pas nécessairement être identiques).

Property

MixedKids

Node

Recherche les noeuds ayant à la fois des enfants branche et des enfants feuille.

Aucun

NoBoolBranch

Node

Vérifie que la propriété booléenne indiquée est définie sur True au moins une fois sur une branche donnée.

Property

NodeFail

Noeud global

Echec automatique des noeuds au niveau version à des fins de test.

Aucun

NodeFailRandom

Node

Echec automatique du pourcentage indiqué de noeuds à des fins de test.

Pourcentage d'échec

NoDefaults

Node

Vérifie qu'aucune valeur par défaut n'est utilisée pour la propriété spécifiée.

Property

NoPropBranch

Node

Vérifie que la propriété indiquée est définie au moins une fois sur une branche donnée.

Property

PropEquivBool

Node

Equivalence de propriété lorsqu'une troisième propriété booléenne est définie sur True.

Propriété booléenne à évaluer, Première propriété, Deuxième propriété

PropLength

Node

Vérifie que la propriété spécifiée a au moins la longueur minimale et ne dépasse pas la longueur maximale.

Propriété, Longueur minimale, Longueur maximale

PropRemove

Suppression

Empêche le retrait d'un noeud si les propriétés spécifiées (dans les paramètres prop1, prop2 et prop3) sont égales aux valeurs indiquées (dans les paramètres valeur1, valeur2 et valeur3).

Propriété1, Propriété2, Propriété3, Valeur1, Valeur2, Valeur3

RequiredField

Node

Vérifie que, pour tous les noeuds pour lesquels la propriété spécifiée a une valeur particulière, chaque propriété de la liste requise a une valeur :

  • Si l'indicateur Rejeter les enregistrements par défaut a la valeur True, chaque propriété de la liste requise doit avoir une valeur autre que celle par défaut.

  • Si l'indicateur Rejeter les enregistrements par défaut a la valeur False, les valeurs par défaut conviennent.

Propriété, Valeur, Rejeter les enregistrements par défaut, Propriétés obligatoires

Script

Noeud, Hiérarchie, Version, Noeuds globaux, Déplacer, Enlever, Fusionner

Vérifie les données à l'aide d'un script dynamique. Si la valeur renvoyée est True, la validation réussit. Une valeur renvoyée False entraîne l'échec de la validation.

Script

SingleBoolBranch

Node

Vérifie que la propriété booléenne indiquée est définie sur True une seule fois par branche.

Property

SinglePropBranch

Node

Vérifie que la propriété indiquée est définie une seule fois par branche.

Property

StrandedParent

Node

Vérifie que tous les noeuds branche ont des enfants.

Aucun

StrPropEqual

Node

Echoue pour tous les noeuds pour lesquels la propriété spécifiée est égale à la valeur indiquée.

Propriété, Valeur

UniqueProp

Node

Vérifie que la propriété spécifiée n'a pas de valeurs en double au sein d'une hiérarchie.

Si Inclure les valeurs par défaut a la valeur False, les noeuds possédant la valeur par défaut ne sont pas inclus.

Si Exclure les éléments partagés a la valeur True, les noeuds partagés ne sont pas pris en compte lors de la vérification de l'unicité des valeurs de propriété.

Propriété, Inclure les valeurs par défaut, Exclure les éléments partagés

Il est recommandé que la validation UniqueProp utilise des propriétés indexées.

UniquePropBranch

Node

Vérifie que la propriété spécifiée a une valeur unique au sein d'une branche.

Property

VersionFail

Version

Echoue automatiquement au niveau version à des fins de test.

Aucun

VersionUnique2Prop

Noeud global

Vérifie que les propriétés spécifiées n'ont pas de valeurs en double au sein d'une version.

Si Inclure les valeurs par défaut a la valeur False, les noeuds possédant la valeur par défaut ne sont pas inclus.

Si Exclure les éléments partagés a la valeur True, les noeuds partagés ne sont pas pris en compte lors de la vérification de l'unicité des valeurs de propriété.

Première propriété, Deuxième propriété, Inclure les valeurs par défaut, Exclure les éléments partagés

VersionUniqueProp

Noeud global

Vérifie que la propriété spécifiée n'a pas de valeurs en double au sein d'une version.

Si Inclure les valeurs par défaut a la valeur False, les noeuds possédant la valeur par défaut ne sont pas inclus.

Si Exclure les éléments partagés a la valeur True, les noeuds partagés ne sont pas pris en compte lors de la vérification de l'unicité des valeurs de propriété.

Propriété, Inclure les valeurs par défaut, Exclure les éléments partagés