Notifications/Data model

Draft only

Introduction
There are four key data objects required to maintain Echo in its initial state:
 * An event type (is there a better name?) is a type of event that can occur. For example: "talk page edited", "article expanded", etc.
 * A subscription describes the relationship between a user who wants to receive notifications about events.
 * An event is a specific instance of an event type.
 * A notification ties a user to an event.

Event Type

 * No attributes for now

Subscription

 * User
 * Event Type
 * Page title (if applicable)
 * Notification settings

Event

 * Timestamp
 * Event type
 * Event variant
 * Agent (user ID)
 * Page title (if applicable)
 * Subscription ID

Notification

 * Timestamp
 * Event
 * User
 * Read timestamp