Sign in
Register
Welcome, Guest!
Get Sueetie
Marketplace
CMS
Blogs
Sueetie News
The Business of Community
Sueetie Discussion Roundup
Forums
All Forums
Announcements
Setup and Configuration
Bugs
Everyday Use
Media
Wiki
About Sueetie
Sueetie Features
Gummy Bear Web Package
Atomo Development
Sueetie ChangeLog
All Pages
Categories
Sueetie Manifesto
Groups
Contact Us
Search
[CP]
About Sueetie
Features
Atomo Development
Gummy Bear
ChangeLog
All Pages
Categories
Search
Welcome
Guest
, you are in:
<root>
Namespace
Back
Data Core: Unification
Modified on 2009/04/17 00:51
by
daveburke
Categorized as
Database Topics
Tags:
no tags for this item
<div class="WikiTop"> This page described the core elements of the Sueetie Data Schema that we like to refer to as the "Unification" affect. </div> ==The Unification Explained== The Sueetie Framework and its accompanying data schema sit "on top" of the great apps that comprise the Sueetie Online Community. It never modifies existing data objects, but rather extends them or provides supplementary data structure to serve the purpose of Sueetie to either enhance the application or integrate it with other site functions. The Unification Affect is a collection of tables, views and stored procedures, whose main purpose is to tie the disparate application data together in a single unifying structure. While the relationships to the application's data destination may vary, the centralized Unification structure brings a sense of order to multiple datasources functioning as one. The primary tables of Unification are Sueetie_Applications and Sueetie_Content, along with Sueetie_ApplicationTypes and Sueetie_ContentTypes. ===Sueetie_Applications=== For definition, each application in a Sueetie Community is an, um, ''Application.'' This wiki is an application, as is the Site Blog, the Forums area, and the Media Gallery. Four applications. A Group is not an application, but each blog within a group is an application, as is the group's forums, wiki and media gallery. Each application has a groupID, or "0" for no group association. The data below represents the four main applications at the top level of a Sueetie community. This model easily accommodates new applications. Applications in Sueetie Groups would be listed here as well, with each having its associated GroupID key (associated to the Sueetie_Groups table key.) {BR} [image|Sueetie_Application|http://sueetie.org/x/site/2009/fav0417g.jpg] {BR}{BR} ===Sueetie_ApplicationType=== The Sueetie_ApplicationType table helps to define the Application, refine queries and relationships. It is very simple as you can see. You would add to this table if you added another type of application and wanted to integrate it into Sueetie searching, favorite tagging, reporting, and other framework services. An example might be a Classifieds area or E-Commerce application. {BR} [image|Sueetie_ApplicationType|http://sueetie.org/x/site/2009/fav0417i.jpg] {BR} ===Sueetie_Content=== Sueetie_Content is the main unifying agent in Sueetie Data.Core. All essential post data will find its way to Sueetie_Content. Blog Posts and Comments (of all blogs), Forum posts, wiki pages and media gallery objects. The actual ''content'' is stored in the native application's storage objects, but Sueetie_Content contains KeyIDs to that data, designated by ContentID, along with ContentType and ApplicationID. {BR} [image|Sueetie_Content|http://sueetie.org/x/site/2009/fav0417e.jpg] {BR} The data shown above is from the Site's BlogEngine.NET blog. "SourceID" keys on Sueetie Blog Post and Comment tables created with a BlogEngine.NET Extension, to transport XML File Storage to SQL. (See [PatternsBlogData|BlogEngine.NET and Sueetie Data Integration] for more information.) Back to Sueetie_Content, ContentTypeID delimits items queried by SourceID (since there is overlap with integer key indexes in various application tables) along with ApplicationID. UserID is the author of the content. A permalink is created and DateTimeCreated. ===Sueetie_ContentType=== We wanted to enable analytics and reporting at the content type level, so we thought about the type of content that comprise a Sueetie Site. While more content types are easily added, below are the currently supported ContentTypes. {BR} [image|Sueetie_ContentType|http://sueetie.org/x/site/2009/fav0417f.jpg] ==The Unification Affect In Action== {BR} A good example of the Unifying work of these core data objects is in the collection of user favorites. Because we have a centralized data object referencing all site content, all we need to record for an item tagged as a user favorite is the UserID and a ContentID Key. The Sueetie_Content and its relationships with the Core supporting tables and the native application's storage location provides all of the information we will need for any Favorites presentation, analysis and processing. {BR} [image|Sueetie_ContentType|http://sueetie.org/x/site/2009/fav0417d.jpg]
ScrewTurn Wiki
version 3.0.2.500.