@startuml hide circle hide empty members ' skinparam linetype ortho note "Voir les contraintes dans l'uml de base" as N1 class Client class Classe_espece { nomClasse : string {key} } class Espece { nomEspece : string {key} } class Animal { nom : string poids : float taille : float naissance : date } package XML <> { class Veterinaire class Traitement class Posologie { debut : date duree : int nbJournalier : int } class Medicament { nomMolec : string {key} description : string espece_autoriser() : bool } } ' Association Traitement "0..*" <-- "1" Animal : prescrit à > ' Association Veterinaire "1" -- "0..*" Traitement : prescrit > ' Association Animal "1..*" <-d- "1" Client : possede < ' Association et groupe d'association Traitement "0..*" <-- "1..*" Medicament : liste > (Traitement, Medicament) .. Posologie ' Composition class_espece et espece Classe_espece -- "1..*" Espece : appartient < ' Association Espece -- "1..*" Animal : appartient < @enduml