Chapitre 3 : Approche proposée et presentation
de l~outil d~veloppe
ACLMessage_with_role message = new
ACLMessage_with_role(ACLMessage.INFORM);
message.setContent(contenu_du_message);
if (condition)
{
message.addReceiver(agent_recepteur1,
role_recepeteur,placement_message);
send(message);
} else
{ message.addReceiver(agent_recepteur2,
role_recepeteur,placement_message);
send(message); }
|
switch (paramètre) {
case(valeur1): {
send(message1)
}
case (valeur2) {
send(message2)
}
... case(valeurn) : {
send(messagen) } }
Tab 3.1 : l'équivalence entre les
différents branchements qui existent dans le diagramme de
séquence AUML et le programme JADE.
Chapitre 3 : Approche proposée et presentation
de l~outil d~veloppe
2.3. Diagrammes AUML vers document XML
Après la génération des diagrammes AUML,
notre application exporte le fichier XML qui doit être valide;
c'est-à-dire bien formé et respecte notre DTD.
Le DTD
<!DOCTYPE Configuration[
<!ELEMENT Configuration
(Empty_Diagrams_AUML|Diagrams_AUML)>
<!ELEMENT Empty_Diagrams_AUML EMPTY>
<!ELEMENT Diagrams_AUML (Diagram_Class_AUML,
Diagram_Sequence_AUML)> <!ELEMENT Diagram_Class_AUML
(Super_Class*)>
<!ELEMENT Super_Class (Name_Super_Class,Agent*)>
<!ELEMENT Name_Super_Class (#PCDATA)> <!ELEMENT Agent
(name_Agent, Vars, Methodes, Roles)>
<!ELEMENT name_Agent (#PCDATA)> <!ELEMENT Vars
(Empty_Vars| Var*)> <!ELEMENT Empty_Vars EMPTY>
<!ELEMENT Var (Name_Var, Type_Var)> <!ELEMENT Name_Var
(#PCDATA)> <!ELEMENT Type_Var (#PCDATA)>
<!ELEMENT Methodes (Empty_Methodes| Methode*)>
<!ELEMENT Empty_Methodes EMPTY> <!ELEMENT Methode
(#PCDATA)>
<!ELEMENT Roles (Empty_Roles|Role*)> <!ELEMENT
Empty_Roles EMPTY>
<!ELEMENT Role (Name_Role,List_Behaviour)> <!ELEMENT
Name_Role (#PCDATA)> <!ELEMENT List_Behaviour (Behaviour*)>
<!ELEMENT Behaviour (Name_Behaviour,Type_Behaviour)>
<!ELEMENT Name_Behaviour (#PCDATA)> <!ELEMENT
Type_Behaviour (#PCDATA)>
|