Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Class diagramObject diagram of meta-objects

PlantUML Macro
abstract class Named {
	String name
}
class OrgUnit extends Named {
   void fire(Person person)
}
class Person extends Named {
}
OrgUnit "works-in" <--> "workers *" Person

PlantUML Macro
object "~#c1 : EClass" as Named {
	name = "Named"
	abstract = true
}
object "~#c1 : EAttribute" as nameAttr {
	name = "name"
	lower = 0
	upper = 1
}
object "~#dt1 : EDataType" as EString {
	name = "EString"
	instanceClassName = "java.lang.String"
}
nameAttr --> "eType" EString
Named *--> "eStructuralFeatures" nameAttr
 
object "~#c2 : EClass" as OrgUnit {
	name = "OrgUnit"
}
OrgUnit --> "eSuperTypes" Named
object "~#c3 : EClass" as Person {
	name = "Person"
}
Person --> "eSuperTypes" Named
object "~#m1 : EOperation" as fire {
	name = "fire"
}
object "~#p1 : EParameter" as personParam {
	name = "person"
}
fire *--> "eParameters" personParam
OrgUnit *--> "eOperations" fire
 
object "~#r1 : EReference" as worksInRef {
	name = "works-in"
	lower = 0
	upper = 1
}
worksInRef --> "eType": OrgUnit
Person *--> "eStructuralFeatures" worksInRef
 
object "~#r2 : EReference" as workersRef {
	name = "workers"
 	lower = 0
	upper = -1 // unbounded
}
workersRef --> "eType": Person
OrgUnit *--> "eStructuralFeatures" workersRef
 
workers "eOpposite" <--> "eOpposite" worksInRef

...