-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdomainplot.jh
133 lines (126 loc) · 2.28 KB
/
domainplot.jh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
enum Accesibility
{
PUBLIC,PRIVATE
}
entity Project{
title String required,
description String required minlength(5) maxlength(50),
creationDate LocalDate,
accessibility Accesibility
}
entity Tutorial{
title String required,
description String required
}
entity ExtVideo
{
title String required,
url String required,
isYoutube Boolean required
}
entity SegmentVideo
{
sync Boolean required
}
entity SegmentSequence
{
segmentsequence String required
}
entity Segment
{
sync Boolean required
}
entity Video
{
name String required,
sync Boolean required
}
entity Image{
name String required,
caption String ,
sync Boolean required
}
entity Audio{
name String required,
sync Boolean required
}
entity Tag
{
name String required,
description String required
}
enum OwnershipType{
PROJ,TUTORIAL
}
enum Rights
{
ADMIN,CONTRIBUTOR,REVIEWER
}
entity Ownership
{
type OwnershipType,
right Rights
}
entity Comment
{
content String required
}
relationship OneToOne{
Project{createdByUser} to User{creator}
}
relationship ManyToOne{
Project{ownersAre} to Ownership{ownersOf}
}
relationship ManyToMany{
Project{projectTag} to Tag{tagProjects}
}
relationship OneToMany{
Project{projectComments} to Comment{commentProjects}
}
relationship OneToMany{
Project{projectTut} to Tutorial{tutProj}
}
relationship OneToOne{
Tutorial{createdBy} to User{creatorTutorial}
}
relationship OneToOne{
Tutorial{partOf} to Project{consists}
}
relationship OneToMany{
Tutorial{tutorialcomment} to Comment{commentTutorial}
}
relationship ManyToOne{
Tutorial{ownersProject} to Ownership{projectOwners}
}
relationship OneToOne
{
Tutorial{tutorialExtVideo} to ExtVideo{extVideoTutorial}
}
relationship OneToOne
{
SegmentSequence{segmentSequenceSVideo} to SegmentVideo{segmentVideoSSequence}
}
relationship OneToMany
{
SegmentVideo{segmentVideoSegment} to Segment{segmentSegmentVideo}
}
relationship OneToOne
{
SegmentVideo{segmentVideoTutorial} to Tutorial{tutorialSVideo}
}
relationship OneToOne
{
Image{imageSegment} to Segment{segmentImage}
}
relationship OneToOne
{
Audio{audioSegment} to Segment{segmentAudio}
}
relationship OneToOne
{
Video{videoSegment} to Segment{segmentVideo}
}
relationship ManyToOne
{
Ownership{ownershipUser} to User{userOwnership}
}