|
This web page provides detailed information about
the database design of the SunriseXP database, as implemented for the Microsoft SQL Server database.
Specifically, the page provides the SQL statements used to create each database table, along with a
description of the intended use of the table.
1. Core Module

This module supports the core infrastructure capabilities of the SunriseXP system.
SR_LOG_EVENT
This table us used to record events, such as errors, warnings or other conditions.
2. Module Management Module

This module defines the information that is tracked for modules and
applications. A single Microsoft SQL Server database can be used to maintain content and
data for multiple applications.
SR_APPLICATION
This table defines the master list of applications using the database, where
each application is typically (although not necessarily) a distinct web site. The "app_key" column
defines a generated key that can be used to look up an application ID; it provides support so
that multiple web sites can share the same database (although sharing is not generally the
preferred situation).
SR_APP_MODULE
This table tracks which modules have been "activated" and made available for
use by each application.
SR_MODULE
This module defines the master list of available modules.
3. Account Manager Module

SR_PERMISSION_LOOKUP
This lookup table defines the list of permissions that are
available and can be assigned to individuals, i.e. - user accounts.
SR_STATE_LOOKUP
This lookup table stores the definitive list of states within the United
States of America.
SR_USERS
This table stores generic information about a user, or, more accurately, a
user account.
SR_USER_PROFILE
This table stores detailed information about a person, and is
associated with a particular user ID. There may be zero or one profile associated with
a user account; this is enforced by software.
SR_USER_PERMISSIONS
This associative table records the list of permissions,
if any, that have been assigned to a user account.
4. Content Management Module

SR_ASSIGNED_CATEGORIES
This associative table records the list of categories,
if any, that have been assigned to a content item.
SR_CATEGORY
This lookup table defines categories that can be used to classify content items.
SR_CONTENT
This table defines the content items that can be displayed
using the content management features of the web site. The table contains
summary information about each content item. Additional content may
be found in the SR_PAGE table.
There are a variety of dates associated with content items. The date columns are described below:
date_created: The date that the content item was first stored in the database.
date_published: The date that the content item will be viewable by users; this
may be a future date.
date_updated: The date that the content item was last updated. Upon initial
entry, the "date_created" and "date_updated" will be the same.
display_date: The date to be displayed with a content item. For example,
a content item may be entered into database and published (made viewable) on October 10, but the
content might originally have been distributed six months earlier in hardcopy. In this case, a
display date of April 10 can be displayed to reflect when the content was originally made
available.
For the Content Management Module, the date shown with a content item is the
"date_published" value, unless the "date_displayed" is defined.
SR_CONTENT_GROUP
This table defines content groups, which can be though of as "channels" of content. For
example, they can be used to support multiple distinct blogs per site. This table may eventually be renamed
to make the channel designation more apparent.
SR_CONTENT_TYPE_LOOKUP
This lookup table defines the types of content items that
are available for display. Note that the content item types also specify a module ID, allowing
different modules to handle their own content types (and allowing modules to ignore other types).
SR_PAGE
This table defines any pages associated with content items.
Note that content items do not have to have pages associated with them.
SR_PAGE_VIEW_ROLLUP
This table is used to record montly information about page views, where the
information is typically extracted from web logs. Note that, despite the name of the table, the
stats recorded are the number of page views for a specified content item for a specified month.
5. Event Manager Module

This module builds upon the Content Manager module to provide
events, i.e. - appointments that can be scheduled for a specified date. Note that events
are suitable for display in a list or a calendar.
SR_EVENT
This lookup table defines events, i.e. - scheduled activities.
6. HOA Module

This module builds upon the Account Manager module to provide
features useful for a web site that functions as a community hub for a Home Owners
Association (HOA).
SR_HOA_USER
This table contains supplemental profile information about
the members of a Home Owners Association.
SR_NEIGHBORHOOD_LOOKUP
This lookup table defines any neighborhoods that may comprise a
community.
|