root/trunk/syntax.ma

Revision 87, 2.2 kB (checked in by bombela, 19 months ago)

fixes #88 #89 #90 #91

  • Property svn:keywords set to Id
Line 
1# MCD Au format MeriseAcide.
2
3# Déclaration d'une entité.
4[Ville]
5
6# Un + déclare CodePostal comme identifiant (clé).
7+CodePostal
8
9# Déclaration d'un champ.
10Nom
11
12# Une autre entité.
13[Personne]
14
15+ID_ # Le tiret bas indique que la clé
16     # devra être suffixée du nom
17     # de l'entité. Dans le cas
18     # présent le résultat sera : ID_Personne.
19
20Nom_ # Le principe du suffixe automatique
21     # s'applique aussi au champs.
22
23     # Il est possible de préfixer en
24     # plaçant le tiret bas devant.
25_Prénom
26
27     # Ici, le type est explicitement défini,
28     # directement en SQL.
29NumeroRue    INTEGER(3)
30     # Lorsque le type n'est pas défini,
31     # Un type adaptée aux clés ou
32     # au champs sera choisi en fonction
33     # du type de base de données
34     # choisis pour la sortie SQL.
35
36# D'autres champ...
37NomRue        VARCHAR(70)
38DateNaissance DATE
39
40# Voici maintenant une association.
41# S'écrit comme se présente sur un MCD.
42Personne    0,2    Hériter    0,n    Personne
43Personne    1,1    Habiter    0,n    Rue
44#   ^       ^         ^        ^      ^
45# Entité   /  Nom d'association \    Entité
46#    Cardinalitée         Cardinalitée
47
48[Quartier]
49+ID_          INTEGER(5) NOT NULL
50Nom
51
52# Ici, une association relative est définie.
53Ville        0,n    Posséder    (1,1)    Quartier
54
55[Rue]
56+ID_
57Nom
58
59Quartier    0,n    Avoir        (1,1)    Rue
60
61[Abonnement]
62+ID_
63Prix           NUMERIC(5,2)
64DateAbonnement DATE
65
66Abonnement    1,1    Payer       0,n    Personne
67
68# Ici, une association ternaire est définie.
69Abonnement    0,n    Concerne    0,n    Personne, Matière
70                     DateInscription    DATE
71# Un champ d'association aussi défini, les règles sont
72# identique à celles des entités.
73
74# Tests du parser :
75# ⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓
76
77 [ Matière ]
78+          ID_
79  Nom
80
81Abonnement    1,1    Associer    0,n    Matière
82
83[Niveau   ] 
84  +ID_
85  Nom
86
87         Abonnement           1,1    Commencer    0,n    Niveau     
88Abonnement     1,1      Terminer    0,n    Niveau
89
90  [     Versement]
91   +         ID_         
92      Somme        NUMERIC(5,2)
93
94Versement            1,1 Verser 0,n Abonnement   
95
96[ModePayement]
97 
98    +     _ID     
99       
100       Nom     
101
102ModePayement    0,n     Utiliser 1,1 Versement
103
Note: See TracBrowser for help on using the browser.