Friday, January 22, 2010

Site Definition Vs Site Template

Choosing the Site template is the first decision that the developer makes while designing the SharePoint / MOSS portal. But What is really a site template? Is it same as the site definition? Time to take a deeper look into this.

Site Definition as well as the site template defines the content of a the portal. This specifies what all the web site will contain. This may include content types, lists, features, Web parts, event handlers, Navigation elements etc.

In a layman's term, site definition is nothing but a xml file that defines what all are the items that needs to be included in the new site that is being provisioned. In contrast with Site template is built on top of the site definition, recording the changes on the site dentition.

When to Use Site Definitions

Customizing portal sites or SharePoint sites using site definitions is apt for third-party developers and server administrators. Site definition requires access to the file system of the Web server. The

Administrator should always be involved in the deployment of site definitions.

Although deploying a site definition requires more work, site definitions typically perform better when cached on the file system instead of in the database. In addition, you can achieve a higher level of customization by directly editing all the schema files without depending on the existing site definition as a site template does. Also, if you want to introduce new file types, view styles, and drop-down edit menus, you need to edit the schema files that make up the site definition.

Custom site definitions are upgrade independent. Subsequent upgrades to MOSS Products and Technologies may overwrite existing default site definitions. Using custom site definitions excludes your sites from potential upgrade issues.

However, there is no easy way to modify site definitions once they are deployed. There is always the possibility of breaking existing deployed sites derived from the site definition once you modify an existing site definition. You can only add to the site definition once it is deployed.

When to Use Site Templates

Site template when compared to site definitions, are easy to create and deploy. You can make all customizations through the user interface. Also, you do not need to be a server administrator on the Web server to create and deploy site templates. Modifying a site template will not create issues in existing sites created by the template. It also eases the deployment as the template data is stored centrally in the configuration database.

Site templates are slower than the site definition as they are stored in the database. Templates in the database are compiled and executed every time a page is rendered. WSS does some performance optimization whereby it stores templates on the local Web server and a ghost of the page in the configuration database. However, you can easily prevent WSS from using a copy of the page by using Web Folders to open, modify, and save it. From this point forward, the database is used to render the page.

Site templates only work on SharePoint sites that are not portal sites (not based on the SPS templates). Furthermore, site templates are not ideally suited for a development environment. In effect, they are still customizations of a site definition. If the site definition does not exist on the server, the site template fails.

Generally, site templates are not as efficient as site definitions in a large-scale environment


Here is the list of the site definitions available on the MOSS 2007


ID Name Type
STS#0 Team Site WSS
STS#1 Blank Site WSS
STS#2 Document Workspace WSS
MPS#0 Basic Meeting Workspace WSS
MPS#1 Blank Meeting Workspace WSS
MPS#2 Decision Meeting Workspace WSS
MPS#3 Social Meeting Workspace WSS
MPS#4 Multipage Meeting Workspace WSS
CENTRALADMIN#0 Central Admin Site WSS
WIKI#0 Wiki Site WSS
BLOG#0 Blog WSS
BDR#0 Document Center MOSS
OFFILE#1 Records Center MOSS
OSRV#0 Shared Services Administration Site MOSS
SPS#0 SharePoint Portal Server Site MOSS
SPSPERS#0 SharePoint Portal Server Personal Space MOSS
SPSMSITE#0 Personalization Site MOSS
SPSMSITE#0 Contents area Template MOSS
SPSTOPIC#0 Topic area template MOSS
SPSNEWS#0 News Site MOSS
CMSPUBLISHING#0 Publishing Site MOSS
BLANKINTERNET#0 Publishing Site MOSS
BLANKINTERNET#1 Press Releases Site MOSS
BLANKINTERNET#2 Publishing Site with Workflow MOSS
SPSNHOME#0 News Site MOSS
SPSSITES#0 Site Directory MOSS
SPSCOMMU#0 Community area template MOSS
SPSREPORTCENTER#0 Report Center MOSS
SPSPORTAL#0 Collaboration Portal MOSS
SRCHCEN#0 Search Center with Tabs MOSS
PROFILES#0 Profiles MOSS
BLANKINTERNETCONTAINER#0 Publishing Portal MOSS
SPSMSITEHOST#0 My Site Host MOSS
SRCHCENTERLITE#0 Search Center MOSS


Time to see how it maps to 2010

No comments:

Post a Comment