-
Notifications
You must be signed in to change notification settings - Fork 0
Class Diagram
JEleniel edited this page Oct 3, 2024
·
1 revision
%%{init: {'theme':'dark'}}%%
classDiagram
class Sex {
<<enumeration>>
Male
Female
Hermaphrodite
}
class BirthType {
<<enumeration>>
Egg laying
Marsupial
Live birth
Other
}
class Species {
+string CommonName
+bool HasSexes
+bool CanChangeSexes
+bool IsParthenogenic
}
class Phenotype {
+string Name
+string Description
}
class Trait {
+string Name
+string Description
}
Species -->"1" BirthType : has
Species -->"*" Phenotype : has
Phenotype -->"1..*" Trait : is expressed by
class Animal {
+string Identifier
+enum BirthSex
+date DateBorn
+string DistinctiveMarkings
}
Animal -->"1" Species : is of a
Animal -->"n" Phenotype : has a\ntrait for each
Animal -->"1..*" Animal : is a child of
Animal -->"1" Sex : has
class Picture {
+date DateTaken
+string Description
+blob Image
}
Animal -->"*" Picture : has
class GrowthRecord {
+date DateRecorded
+real Weight
+real Height
+real Length
+real Width
}
Animal -->"*" GrowthRecord : has
class VeterinaryPractice {
+string Name
+address Address
+string Phone
+string Fax
}
class Veterinarian {
+string Name
}
VeterinaryPractice "1"-->"1..*" Veterinarian : employs
class HealthRecord {
+date DateRecorded
+string Type
+string Details
}
Animal "1"-->"*" HealthRecord : has
HealthRecord "1"-->"1" Veterinarian :was examined by