Next: Du Statique vers le
Up: MSO : Base de
Previous: MSO : Base de
- Définition I :
- Minimal Symbolic Object
Un minimal symbolic object ou mso est une liste d'attributs
qui ont chacun une valeur donnée. Chaque valeur est constituée par une
liste d'équations appelées des facettes.
Exemple:
- Définition II:
- Valeur d'un Attribut
La valeur d'un attribut peut être soit :
- la valeur par défaut :
Si on demande l'évaluation d'un attribut qui est indéfini ou absent
dans la définition du mso, soit :
- la valeur de l'attribut est son propre nom. On utilise, alors, la même
convention que celle du langage Maple.
- la méta-valeur "NULL".
- une chaîne de caractères :
Cette chaîne est composée de tous caractères imprimables y compris
les chiffres.
Par conséquent, une propriété importante est que les nombres sont
représentés par des chaînes de caractères et peuvent avoir une
précision infinie (dans la limite de la représentation de la mémoire
de la machine employée). - un (sous)-objet ou encore un (sous)-mso.
Par convention, les fonctions, les listes et les ensembles ont
une représentation canonique en tant que mso :
Pour un ensemble fixé d'attributs et de taille maximal connu,
on peut affirmer que les mso sont isomorphiques à une
structure C sans pointeur. Ceci assure, par
conséquent, un accès constant dans le temps et pas d'erreur de
dépassement mémoire.
Il ressort de ces définitions qu'elles recouvrent un très grand nombre de
données informatiques et qu'une grande partie
des informations logicielles peut être représentée par cette syntaxe
simple.
On peut citer pour exemple :
- Les fichiers de données tels que les répertoires d'adresse ou les
références bibliographiques, ou tout ensemble de donnée de type
"fiche" ou "formulaire" :
{
{
Name = `John Smith`,
Address = `Po.Box. 999, New-Evil, 3-1416 Mass U.S.A`,
Tel = `+1 123 12 23 23`
},
{
Name = `Pierre Martin`,
Tel = `+33 45 67 89 01`
}
}
- Les configurations de programmes et de ressources. Beaucoup de systèmes
interactifs sont maintenant basés sur la définition d'une structure
de données à partir de laquelle une interface ou une configuration est
générée. C'est en particulier le cas des ressources X-server ou
des définitions de l'interface Tcl/Tk :
{
MenuName = `General-Menu`,
MenuItems = {
`Open File` = `fileOpen(fileName, fileData)`,
.../...
`Quit` = `exit()`
},
.../...
}
- Les objets graphiques ou les primitives manipulées
en vision peuvent aussi être définis de cette manière,
comme le montre l'exemple ci-dessous, où l'objet m12 est
référencé dans la liste Parts de l'objet de type
`Graphic Object` :
{
Type = `2D-point`
Name = m12
x = 123, y = 125
}
{
Type = 'Graphic Object`,
Parts = { `../m12`, .../... },
}
Si l'on se place du point de vue du style de programmation induit
par ces définitions, et en considérant un logiciel comme constitué
de données et de structures de contrôle, il en ressort donc que :
- on va placer le plus
d'information et de connaissance possibles sur le logiciel ;
- , on va minimiser la quantité
d'information à traiter.
L'idée de base est, par conséquent, de spécifier le plus possible
dans les minimal symbolic objects toute la connaissance que l'on
souhaite voir apparaître dans le logiciel.
De plus, on pourra spécifier directement avec la syntaxe mso reliée
à des outils standard les entités nécessaire à la vision,
comme la documentation ou les interfaces mais ceci sans plus avoir
à les programmer.
Next: Du Statique vers le
Up: MSO : Base de
Previous: MSO : Base de
Soraya Arias
Mon Aug 5 17:38:44 MET DST 1996