title: Please critique E-R diagram of datamodel
body: <p>I'm building the data model for the website of a student club at my university and I need some feedback on what I have so far.</p>
  
  <p>Every term students become members by paying a membership fee. This membership fee entitles them to attend all the club's activities less social events during that term. To attend these social events they are required to purchase a ticket.</p>
  
  <p>The club's activities involved courses of 8 to 10 weekly classes, workshops, and the aforementioned events.</p>
  
  <p>We would like to be able to model members every term and track registration and attendance to courses ( just registration ), individual classes ( attendance ), workshops ( attendance and registration), and events (attendance and registration).</p>
  
  <p>We want to be able to see what member of the executive was involved in which activity.</p>
  
  <p>We want the executive to be able to upload articles (text), pictures, music, and video and control who has access to these items. I used a group solution because I think granting access at user/piece of content level is too tedious.</p>
  
  <p>Please take a look and give me some feedback. I'm trying to design a model that is easy to maintain and adapt to new requirements and that is robust, and flexible when it comes to modelling club and member activity.</p>
  
  <p>The password hash will be a part of the student entity. It's currently not showing on the digram.</p>
  
  <p>You can find the diagram below.</p>
  
  <p>EDIT1: </p>
  
  <p>Added legend.</p>
  
  <p>At the top, the rectangle around the Student--Membership--Term is called an aggregation. This means that when used in relationship Registration, for example, we can look at this aggregation as an entity with primary key (student_id, term).</p>
  
  <p>EDIT2: The triangle with the ISA label on it denotes specialization of the top entity into child entities. When translating into a schema we can choose to create a relation for each, or just the children.</p>