added preconditions for boat type limits and updated state change operation

This commit is contained in:
Lukian 2025-01-18 18:23:55 +01:00
parent 22408c8fec
commit 4b2c5d16f2
2 changed files with 133 additions and 127 deletions

View file

@ -77,12 +77,17 @@ attributes
nom: String nom: String
operations operations
tirer(case: String): TypeCoup tirer(case: String): TypeCoup
-- pre libre: plateau.cases.
tirerRobot(): TypeCoup tirerRobot(): TypeCoup
end end
class Flotte class Flotte
operations operations
ajouterBateau(bateau: Bateau) ajouterBateau(bateau: Bateau)
pre torpilleur: bateau.type = TypeBateau::Torpilleur implies bateaux->select(b: Bateau | b.type = TypeBateau::Torpilleur)->size() < 1
pre contre_torpilleur: bateau.type = TypeBateau::Contre_Torpilleur implies bateaux->select(b: Bateau | b.type = TypeBateau::Contre_Torpilleur)->size() < 2
pre croiseur: bateau.type = TypeBateau::Croiseur implies bateaux->select(b: Bateau | b.type = TypeBateau::Croiseur)->size() < 1
pre porte_avions: bateau.type = TypeBateau::Porte_Avions implies bateaux->select(b: Bateau | b.type = TypeBateau::Porte_Avions)->size() < 1
constraints constraints
-- Contraintes qui vérifient le nombre de bateaux par type -- Contraintes qui vérifient le nombre de bateaux par type
inv torpilleur: bateaux->select(b: Bateau | b.type = TypeBateau::Torpilleur)->size() = 1 inv torpilleur: bateaux->select(b: Bateau | b.type = TypeBateau::Torpilleur)->size() = 1
@ -110,6 +115,8 @@ attributes
type: TypeCase type: TypeCase
operations operations
changerEtat(nouveauEtat: TypeCase) changerEtat(nouveauEtat: TypeCase)
pre different: not(nouveauEtat = type)
post change: type = nouveauEtat
getEtat(): TypeCase getEtat(): TypeCase
constraints constraints
-- Contrainte qui vérifie qu'il n'y a pas deux cases au même endroit -- Contrainte qui vérifie qu'il n'y a pas deux cases au même endroit

View file

@ -3,73 +3,73 @@
<diagramOptions> <diagramOptions>
<autolayout>false</autolayout> <autolayout>false</autolayout>
<antialiasing>false</antialiasing> <antialiasing>false</antialiasing>
<showassocnames>false</showassocnames> <showassocnames>true</showassocnames>
<showattributes>true</showattributes> <showattributes>true</showattributes>
<showmultiplicities>true</showmultiplicities> <showmultiplicities>true</showmultiplicities>
<showoperations>false</showoperations> <showoperations>true</showoperations>
<showrolenames>true</showrolenames> <showrolenames>true</showrolenames>
<showgrid>false</showgrid> <showgrid>false</showgrid>
</diagramOptions> </diagramOptions>
<node id="Plateau" sizeCalculated="true" type="Class"> <node id="Plateau" sizeCalculated="true" type="Class">
<name>Plateau</name> <name>Plateau</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>303.0</x> <x>362.0</x>
<y>283.0</y> <y>241.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</node> </node>
<node id="Flotte" sizeCalculated="true" type="Class"> <node id="Flotte" sizeCalculated="true" type="Class">
<name>Flotte</name> <name>Flotte</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>201.0</x> <x>370.0</x>
<y>365.0</y> <y>385.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</node> </node>
<node id="Coup" sizeCalculated="true" type="Class"> <node id="Coup" sizeCalculated="true" type="Class">
<name>Coup</name> <name>Coup</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>234.0</x> <x>280.0</x>
<y>72.0</y> <y>73.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</node> </node>
<node id="Bateau" sizeCalculated="true" type="Class"> <node id="Bateau" sizeCalculated="true" type="Class">
<name>Bateau</name> <name>Bateau</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>396.0</x> <x>640.0</x>
<y>371.0</y> <y>382.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</node> </node>
<node id="Jeu" sizeCalculated="true" type="Class"> <node id="Jeu" sizeCalculated="true" type="Class">
<name>Jeu</name> <name>Jeu</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>33.0</x> <x>25.0</x>
<y>90.0</y> <y>85.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</node> </node>
<node id="Joueur" sizeCalculated="true" type="Class"> <node id="Joueur" sizeCalculated="true" type="Class">
<name>Joueur</name> <name>Joueur</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>97.0</x> <x>122.0</x>
<y>216.0</y> <y>289.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</node> </node>
<node id="Case" sizeCalculated="true" type="Class"> <node id="Case" sizeCalculated="true" type="Class">
<name>Case</name> <name>Case</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>457.0</x> <x>566.0</x>
<y>190.0</y> <y>73.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</node> </node>
<node id="TypeCoup" sizeCalculated="true" type="Enumeration"> <node id="TypeCoup" sizeCalculated="true" type="Enumeration">
<name>TypeCoup</name> <name>TypeCoup</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>705.0</x> <x>857.0</x>
<y>36.0</y> <y>36.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
@ -77,7 +77,7 @@
<node id="TypeCase" sizeCalculated="true" type="Enumeration"> <node id="TypeCase" sizeCalculated="true" type="Enumeration">
<name>TypeCase</name> <name>TypeCase</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>705.0</x> <x>857.0</x>
<y>346.0</y> <y>346.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
@ -85,7 +85,7 @@
<node id="EtatBateau" sizeCalculated="true" type="Enumeration"> <node id="EtatBateau" sizeCalculated="true" type="Enumeration">
<name>EtatBateau</name> <name>EtatBateau</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>705.0</x> <x>857.0</x>
<y>260.0</y> <y>260.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
@ -93,7 +93,7 @@
<node id="TypeBateau" sizeCalculated="true" type="Enumeration"> <node id="TypeBateau" sizeCalculated="true" type="Enumeration">
<name>TypeBateau</name> <name>TypeBateau</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyFixed">
<x>705.0</x> <x>857.0</x>
<y>137.0</y> <y>137.0</y>
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
@ -146,19 +146,6 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Repartit::source::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>cases</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>8.0</userOffsetX>
<userOffsetY>6.0</userOffsetY>
<attached>Repartit::WayPoint::0</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Repartit::source::multiplicity" <edgeproperty id="Repartit::source::multiplicity"
sizeCalculated="true" type="multiplicity" sizeCalculated="true" type="multiplicity"
userDefined="true" visible="true"> userDefined="true" visible="true">
@ -173,6 +160,19 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Repartit::source::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>cases</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>8.0</userOffsetX>
<userOffsetY>6.0</userOffsetY>
<attached>Repartit::WayPoint::0</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
</properties> </properties>
<waypoints> <waypoints>
<edgeproperty id="Repartit::WayPoint::0" <edgeproperty id="Repartit::WayPoint::0"
@ -207,6 +207,19 @@
<target>Plateau</target> <target>Plateau</target>
<name>Compose</name> <name>Compose</name>
<properties> <properties>
<edgeproperty id="Compose::target::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>plateau</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-17.0</userOffsetX>
<userOffsetY>-5.0</userOffsetY>
<attached>Compose::WayPoint::1</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Compose::target::multiplicity" <edgeproperty id="Compose::target::multiplicity"
sizeCalculated="true" type="multiplicity" sizeCalculated="true" type="multiplicity"
userDefined="false" visible="true"> userDefined="false" visible="true">
@ -221,19 +234,6 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Compose::target::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>plateau</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-17.0</userOffsetX>
<userOffsetY>-5.0</userOffsetY>
<attached>Compose::WayPoint::1</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Compose::AssociationName" <edgeproperty id="Compose::AssociationName"
sizeCalculated="true" type="associationName" sizeCalculated="true" type="associationName"
userDefined="false" visible="true"> userDefined="false" visible="true">
@ -250,19 +250,6 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Compose::source::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>cases</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-6.0</userOffsetX>
<userOffsetY>-17.0</userOffsetY>
<attached>Compose::WayPoint::0</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Compose::source::multiplicity" <edgeproperty id="Compose::source::multiplicity"
sizeCalculated="true" type="multiplicity" sizeCalculated="true" type="multiplicity"
userDefined="true" visible="true"> userDefined="true" visible="true">
@ -277,6 +264,19 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Compose::source::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>cases</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-6.0</userOffsetX>
<userOffsetY>-17.0</userOffsetY>
<attached>Compose::WayPoint::0</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
</properties> </properties>
<waypoints> <waypoints>
<edgeproperty id="Compose::WayPoint::0" <edgeproperty id="Compose::WayPoint::0"
@ -413,19 +413,6 @@
<target>Flotte</target> <target>Flotte</target>
<name>Appartient</name> <name>Appartient</name>
<properties> <properties>
<edgeproperty id="Appartient::target::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>flotte</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-3.0</userOffsetX>
<userOffsetY>15.0</userOffsetY>
<attached>Appartient::WayPoint::1</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Appartient::target::multiplicity" <edgeproperty id="Appartient::target::multiplicity"
sizeCalculated="true" type="multiplicity" sizeCalculated="true" type="multiplicity"
userDefined="true" visible="true"> userDefined="true" visible="true">
@ -440,6 +427,19 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Appartient::target::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>flotte</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-3.0</userOffsetX>
<userOffsetY>15.0</userOffsetY>
<attached>Appartient::WayPoint::1</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Appartient::AssociationName" <edgeproperty id="Appartient::AssociationName"
sizeCalculated="true" type="associationName" sizeCalculated="true" type="associationName"
userDefined="false" visible="true"> userDefined="false" visible="true">
@ -517,27 +517,12 @@
<target>Plateau</target> <target>Plateau</target>
<name>Utilise</name> <name>Utilise</name>
<properties> <properties>
<edgeproperty id="Utilise::target::multiplicity"
sizeCalculated="true" type="multiplicity"
userDefined="false" visible="true">
<name>1</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>0.0</userOffsetX>
<userOffsetY>0.0</userOffsetY>
<attached>Utilise::WayPoint::1</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>BOTTOM</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Utilise::target::rolename" <edgeproperty id="Utilise::target::rolename"
sizeCalculated="true" type="rolename" sizeCalculated="true" type="rolename" userDefined="true" visible="true">
userDefined="false" visible="true">
<name>plateau</name> <name>plateau</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>0.0</userOffsetX> <userOffsetX>-2.0</userOffsetX>
<userOffsetY>0.0</userOffsetY> <userOffsetY>-23.0</userOffsetY>
<attached>Utilise::WayPoint::1</attached> <attached>Utilise::WayPoint::1</attached>
<offset_x>8</offset_x> <offset_x>8</offset_x>
<offset_y>8</offset_y> <offset_y>8</offset_y>
@ -545,6 +530,20 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Utilise::target::multiplicity"
sizeCalculated="true" type="multiplicity"
userDefined="true" visible="true">
<name>1</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>26.0</userOffsetX>
<userOffsetY>9.0</userOffsetY>
<attached>Utilise::WayPoint::1</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>BOTTOM</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Utilise::AssociationName" <edgeproperty id="Utilise::AssociationName"
sizeCalculated="true" type="associationName" sizeCalculated="true" type="associationName"
userDefined="false" visible="true"> userDefined="false" visible="true">
@ -565,8 +564,8 @@
sizeCalculated="true" type="rolename" userDefined="true" visible="true"> sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>joueur</name> <name>joueur</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-1.0</userOffsetX> <userOffsetX>12.0</userOffsetX>
<userOffsetY>7.0</userOffsetY> <userOffsetY>24.0</userOffsetY>
<attached>Utilise::WayPoint::0</attached> <attached>Utilise::WayPoint::0</attached>
<offset_x>8</offset_x> <offset_x>8</offset_x>
<offset_y>8</offset_y> <offset_y>8</offset_y>
@ -622,19 +621,6 @@
<target>Jeu</target> <target>Jeu</target>
<name>Joue2</name> <name>Joue2</name>
<properties> <properties>
<edgeproperty id="Joue2::target::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>jeu2</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-10.0</userOffsetX>
<userOffsetY>7.0</userOffsetY>
<attached>Joue2::WayPoint::1</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Joue2::target::multiplicity" <edgeproperty id="Joue2::target::multiplicity"
sizeCalculated="true" type="multiplicity" sizeCalculated="true" type="multiplicity"
userDefined="false" visible="true"> userDefined="false" visible="true">
@ -649,6 +635,19 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Joue2::target::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>jeu2</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-10.0</userOffsetX>
<userOffsetY>7.0</userOffsetY>
<attached>Joue2::WayPoint::1</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>TOP</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Joue2::AssociationName" <edgeproperty id="Joue2::AssociationName"
sizeCalculated="true" type="associationName" sizeCalculated="true" type="associationName"
userDefined="false" visible="true"> userDefined="false" visible="true">
@ -670,8 +669,8 @@
userDefined="true" visible="true"> userDefined="true" visible="true">
<name>1</name> <name>1</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-7.0</userOffsetX> <userOffsetX>15.0</userOffsetX>
<userOffsetY>4.0</userOffsetY> <userOffsetY>-15.0</userOffsetY>
<attached>Joue2::WayPoint::0</attached> <attached>Joue2::WayPoint::0</attached>
<offset_x>8</offset_x> <offset_x>8</offset_x>
<offset_y>8</offset_y> <offset_y>8</offset_y>
@ -683,8 +682,8 @@
sizeCalculated="true" type="rolename" userDefined="true" visible="true"> sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>joueur2</name> <name>joueur2</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>-16.0</userOffsetX> <userOffsetX>-10.0</userOffsetX>
<userOffsetY>34.0</userOffsetY> <userOffsetY>13.0</userOffsetY>
<attached>Joue2::WayPoint::0</attached> <attached>Joue2::WayPoint::0</attached>
<offset_x>8</offset_x> <offset_x>8</offset_x>
<offset_y>8</offset_y> <offset_y>8</offset_y>
@ -889,8 +888,8 @@
sizeCalculated="true" type="rolename" userDefined="true" visible="true"> sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>joueur1</name> <name>joueur1</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>62.0</userOffsetX> <userOffsetX>6.0</userOffsetX>
<userOffsetY>-25.0</userOffsetY> <userOffsetY>-5.0</userOffsetY>
<attached>Joue1::WayPoint::0</attached> <attached>Joue1::WayPoint::0</attached>
<offset_x>8</offset_x> <offset_x>8</offset_x>
<offset_y>8</offset_y> <offset_y>8</offset_y>
@ -933,7 +932,7 @@
<edgeproperty id="Tire::target::multiplicity" <edgeproperty id="Tire::target::multiplicity"
sizeCalculated="true" type="multiplicity" sizeCalculated="true" type="multiplicity"
userDefined="false" visible="true"> userDefined="false" visible="true">
<name>1</name> <name>0..100</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached"> <strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>0.0</userOffsetX> <userOffsetX>0.0</userOffsetX>
<userOffsetY>0.0</userOffsetY> <userOffsetY>0.0</userOffsetY>
@ -973,20 +972,6 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Tire::source::multiplicity"
sizeCalculated="true" type="multiplicity"
userDefined="false" visible="true">
<name>*</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>0.0</userOffsetX>
<userOffsetY>0.0</userOffsetY>
<attached>Tire::WayPoint::0</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>BOTTOM</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
<edgeproperty id="Tire::source::rolename" <edgeproperty id="Tire::source::rolename"
sizeCalculated="true" type="rolename" userDefined="true" visible="true"> sizeCalculated="true" type="rolename" userDefined="true" visible="true">
<name>joueur</name> <name>joueur</name>
@ -1000,6 +985,20 @@
</strategy> </strategy>
<hidden>false</hidden> <hidden>false</hidden>
</edgeproperty> </edgeproperty>
<edgeproperty id="Tire::source::multiplicity"
sizeCalculated="true" type="multiplicity"
userDefined="true" visible="true">
<name>1</name>
<strategy type="org.tzi.use.gui.views.diagrams.elements.positioning.StrategyRelativeToAttached">
<userOffsetX>6.0</userOffsetX>
<userOffsetY>-8.0</userOffsetY>
<attached>Tire::WayPoint::0</attached>
<offset_x>8</offset_x>
<offset_y>8</offset_y>
<placement>BOTTOM</placement>
</strategy>
<hidden>false</hidden>
</edgeproperty>
</properties> </properties>
<waypoints> <waypoints>
<edgeproperty id="Tire::WayPoint::0" sizeCalculated="true" <edgeproperty id="Tire::WayPoint::0" sizeCalculated="true"