La classe GROUP


Paramètre : une liste de sous-règles incluses entre parenthèse. La virgule peut être employée en tant que séparateur dans la liste.

Modificateurs facultatifs : PREF, SUF, SEP, NUlL.

Algorithme :
Il exécute chaque sous-règle contenue dans la liste. Si au moins une variable produit un résultat, il exécute la sous-règle indiquée par PREF et SUF. Si au moins deux variables produisent un résultat, il exécute la sous-règle indiquée par SEP. Ensuite, il construit la chaîne résultante en concaténant le résultat de PREF, puis le résultat de chaque variable pour laquelle un résultat existe en insérant, entre chaque paire de résultats existant, le résultat de SEP et, finalement, le résultat de SUF.
Si aucune variable ne produit un résultat, il exécute la sous-règle spécifiée par NULL et retourne le résultat de NULL.

Exemple
col_min_max GROUP (col_len, col_dec)
PREF = "("
SEP = " AND "
SUF = ")"
NULL = "Length and number of decimals are undetermined.";

col_len ATTR ColumnLength
PREF = "$name;'s length is : ";

col_dec ATTR ColumnDecimal
PREF = "$name;'s nb of decimals is : ";


Les fonctions du référentiel ColumnLength et ColumnDecimal retournent la longueur du nombre de décimales d'une colonne. Si la colonne est price, la longueur est 10 et le nombre de décimales est 5, le résultat sera price’s length is: 10 et price’s nb of decimals is: 5. Si la longueur est indéterminée, le résultat sera : price’s nb of decimals is: 5. S’ils sont tous deux indéterminés, le résultat sera : length and nb of decimals are undetermined.