On présente ici, très partiellement, un exemple un peu plus réaliste, qui a été traité plus en détail auparavant (cf. Chapitre 2.3, « Exemple de structuration des données »).
texte com

Texte commun, qui définit la représentation physique des données :
fic = fichier, tab = tableau.cas fic
num-log | = numéro logique |
rgphy | = rang physique |
conv-rglog | = conversion rang logique / rang physique |
val | = valeur lue /écrite sur le fichier |
(lect (fic)) | = lecture sur le fichier |
(ecr (fic)) | = écriture sur le fichier |
(ins (fic)) | = insertion dans le fichier |
(supp (fic)) | = suppression dans le fichier |
cas tab
val-rglog | = représentation du tableau |
val | = valeur d'un élément du tableau |
(lect (tab)) | = lecture dans le tableau |
(ecr (tab)) | = écriture dans le tableau |
texte ctx1

Texte de définition d'un contexte de travail ctx1 :
rang = rang d'accès aux données, obj = les données.paramètres
val | = valeur lue /écrite |
rglog | = rang logique |
ctx1
(nom) | = nom du contexte |
(borne-sup (rang)) | = valeur maximale des rangs logiques |
(lect (rang)) | = (lect (fic (com))) |
(ecr (rang)) | = (ecr (fic (com))) |
(ins (rang)) | = (ins (fic (com))) |
(supp (rang)) | = (supp (fic (com))) |
(val (obj)) | = donnée |
(test (val (obj))) | = champ test de la donnée |
(aux (obj)) | = donnée auxiliaire |
(test (aux (obj))) | = champ test de la donnée auxiliaire |
On a d'autres propriétés : par exemple (num-log (rang)). Il s'agit en fait de "fausses propriétés", puisqu'elles ne sont déclarées que pour instancier les paramètres de (fic (com)). Cependant, aucun contrôle n'est effectué, on peut donc tout aussi bien les utiliser.