Exercice GDL 1 : Implémentation d’un schéma GDL
Exercice
Implémentez un schéma qui crée trois catégories d’attributs et n’impose pas de restrictions sur l’emplacement des constructions.
Ces attributs doivent être divisés en catégories suivantes :
Attributs qui peuvent apparaître au niveau racine et dans les constructions.
Attributs qui peuvent apparaître uniquement au niveau racine.
Attributs qui peuvent apparaître uniquement dans les constructions.
Ne définissez aucun mot clé dans votre schéma ; incluez simplement le framework pour les mots clés futurs.
Note À l’aide de modèles, vous pouvez créer un schéma virtuel, c’est-à-dire un schéma qui ne définit aucune entrée GDL. Le schéma de base défini de cette façon exerce son influence, quelle que soit la façon dont ce schéma sera étendu à l’avenir.
Solution
L’exemple de code suivant montre une façon d’effectuer cet exercice.
*Template: ATTRIBUTE
{
*Type: ATTRIBUTE
*Virtual: TRUE
}
*Template: ROOT_ATTRIB
{
*Inherits: ATTRIBUTE
*Virtual: TRUE
}
*Template: CONSTRUCT_ATTRIB *% May not appear at Root level
{
*Inherits: ATTRIBUTE
*Virtual: TRUE
}
*Template: FREEFLOAT
{
*Inherits: ATTRIBUTE
*Virtual: TRUE
}
*Template: CONSTRUCTS
{
*Type: CONSTRUCT
*Members: ( CONSTRUCTS, FREEFLOAT, CONSTRUCT_ATTRIB)
*Virtual: TRUE
}
*Template: ROOT
{
*Type: CONSTRUCT
*AllowNewMembers: FALSE
*Name: "root"
*Instances: <ANY>
*Members: (ROOT_ATTRIB, FREEFLOAT, CONSTRUCTS)
}
Note Vous pouvez placer les modèles dans l’exemple précédent dans un fichier MasterTemplate.gdl à utiliser lors de l’exercice suivant.