mirror of https://github.com/dspinellis/UMLGraph
71 lines
1.0 KiB
Java
71 lines
1.0 KiB
Java
/*
|
|
* Schema model
|
|
* UML User Guide p. 112
|
|
* $Id$
|
|
*/
|
|
|
|
/**
|
|
* @opt operations
|
|
* @opt attributes
|
|
* @opt types
|
|
* @hidden
|
|
*/
|
|
class UMLOptions {}
|
|
|
|
/* Define some types we use */
|
|
/** @hidden */
|
|
class Name {}
|
|
/** @hidden */
|
|
class Number {}
|
|
|
|
/**
|
|
* @has 1..* Member * Student
|
|
* @composed 1..* Has 1..* Department
|
|
*/
|
|
class School {
|
|
Name name;
|
|
String address;
|
|
Number phone;
|
|
void addStudent() {}
|
|
void removeStudent() {}
|
|
void getStudent() {}
|
|
void getAllStudents() {}
|
|
void addDepartment() {}
|
|
void removeDepartment() {}
|
|
void getDepartment() {}
|
|
void getAllDepartments() {}
|
|
}
|
|
|
|
/**
|
|
* @has 1..* AssignedTo 1..* Instructor
|
|
* @assoc 1..* - 1..* Course
|
|
* @assoc 0..* - "0..1 chairperson" Instructor
|
|
*/
|
|
class Department {
|
|
Name name;
|
|
void addInstructor() {}
|
|
void removeInstructor() {}
|
|
void getInstructor() {}
|
|
void getAllInstructors() {}
|
|
}
|
|
|
|
/**
|
|
* @assoc * Attends * Course
|
|
*/
|
|
class Student {
|
|
Name name;
|
|
Number studentID;
|
|
}
|
|
|
|
class Course {
|
|
Name name;
|
|
Number courseID;
|
|
}
|
|
|
|
/**
|
|
* @assoc 1..* Teaches * Course
|
|
*/
|
|
class Instructor {
|
|
Name name;
|
|
}
|