SharePoint Hierarchy

I writing this post to let others understand the basics of the SharePoint hierarchy and the Object Model. I know as a developer it can get confusing with the terminologies. This post I would like to address the main areas of the hierarchy and explain their purposes: 


The farm is a collection of

  • front end web servers – these are the web site or also known as web applications
  • application servers – these are the servers that provide the back end services such as searching, office services and etc.
  • databases servers – these are the servers that stores the configuration content of the whole farm.

In the SharePoint Object Model the SPFarm class is the first tier of the hierarchy, this class consist of two properties:

  • Servers – this property gets all the servers in the farm in a collection of SPServer objects.
  • Services – this property gets all the services in the farm in a collection of SPService objects.

Web Application:

In a SharePoint farm you can one or more web applications. Web applications are standalone ASP.NET web application hosted on IIS running on its own application pool. With in a web application it can consist of one or more site collections or collection of web sites.

In the SharePoint Object model SPWebApplication class is the second tier of the hierarchy that represents an Internet Information Services (IIS) Web application that is installed on the server farm.

Site Collection:

Site collection is a collection of web sites in a web application and can define boundary of many things like user permissions and it wont affect other site collections.

In the SharePoint Object Model the SPSite class is the third tier in the hierarchy, it represents a collection of site or a collection of SPSite objects.


Site is a collection of:

  • Pages
  • Lists
  • Libraries
  • Related settings

In a site collection there can only be one top level site, but you can have multiple level of subsites and multiple subsite in the same level. As a programmer Site is also commonly referred to as the web.

In the SharePoint Object Model the SPWeb (this is the confusing part, I know its was referred as Site but remember a site is a web) this is the bottom part of the hierarchy. SPWeb represents a web site in SharePoint.