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 :
|
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 |