SP2010 MySites – Part Two: Anatomy

MyProfile

This is the second article in a series which explores the SharePoint 2010 MySite features. This article will examine the various elements that get brought together to form a MySite in SharePoint 2010. Gaining a detailed understanding of these elements will help us to target areas during customisations. As with most areas of SharePoint I believe it’s important to understand what you have before cracking open Visual Studio to make customisation.

If you’ve never setup MySites before there is information in TechNet http://technet.microsoft.com/en-us/library/ee624362.aspx.

Series contents:

  1. Overview, which details the MySite functionality provided by SP2010
  2. Anatomy, we delve inside the MySite and dissect its inner secrets – This Article
  3. Customisation for Branding, how to change the look and feel
  4. Customisation of My Content page, how to change the page layout and contents
  5. Customisation of a MySite Blog, how to alter the Blog
  6. The MySite centric intranet, putting the MySite at the centre of the universe

The MySite Host

 

The MySite Host is the shared site collection which provides shared elements within the MySite such as profile page, newsfeed page. This site is created as the root site collection of a web application configured for MySites.

MySite Host site definition

The site definition is located in {SharePointRoot}\TEMPLATE\SiteTemplates\SPSMSITEHOST\

Top bar navigation

The definition provisions the following global navigation nodes:

  • ‘My Newsfeed’ which goes to the default.aspx page.
  • ‘My Content’ which goes to the _layouts/mysite.aspx page.
  • ‘My Profile’ which goes to the person.aspx page.

image

Quick Launch navigation

The definition provisions the following quick launch navigation nodes:

  • ‘Overview’ which goes to the person.aspx page.
  • ‘Organization’ which goes to the organizationview.aspx page.
  • ‘Content’ which goes to the personcontent.aspx page.
  • ‘Tags and Notes’ which goes to the _layouts/thoughts.aspx page.
  • ‘Colleagues’ which goes to the _layouts/MyContactLinks.aspx page.
  • ‘Memberships’ which goes to the _layouts/MyMemberships.aspx page.

image

Configuration 0

The primary configuration activates the following Site features:

  • ‘My Site Host’ {49571CD1-B6A1-43a3-BF75-955ACC79C8D8} located in {SharePointRoot}\TEMPLATE\FEATURES\MySiteHost\Feature.xml.
  • ‘My Site Layouts’ {6928B0E5-5707-46a1-AE16-D6E52522D52B} located in {SharePointRoot}\TEMPLATE\FEATURES\MySiteLayouts\feature.xml.

The primary configuration activates the following Web features:

  • ‘My Site Navigation’ {6ADFF05C-D581-4c05-A6B9-920F15EC6FD9} located in {SharePointRoot}\TEMPLATE\FEATURES\MySiteNavigation\Feature.xml.
  • ‘Shared Picture Library for Organizations logos’ {5EDE0A86-C772-4f1d-A120-72E734B3400C} located in {SharePointRoot}\TEMPLATE\FEATURES\MySiteHostPictureLibrary\Feature.xml.
  • ‘Team Collaboration Lists’ {00BFEA71-4EA5-48D4-A4AD-7EA5C011ABE5} located in {SharePointRoot}\TEMPLATE\FEATURES\TeamCollab\feature.xml.

Default Module provisions the following files:

  • blog.xsl
  • tagprofile.aspx
  • person.aspx
  • default.aspx

Blog xsl

The blog.xsl is used for the blog web part.

Tagprofile.aspx

The tag profile page displays the tag profile information. It is reached from the tags and notes page tag hyperlinks.

The web parts provisioned to this page are:

image

Person.aspx

The person profile page displays the information about an individual profile. It is reached from the ‘My Profile’ link in the global navigation or from the people search results links for other individuals.

The web parts provisioned to this page are:

image

Default.aspx

The default page displays the individuals news feed. This is all the activity from their colleagues.

The web parts provisioned to this page are:

image

The MySite Personal

 

The MySite Personal is the individual MySite site collection which provides elements within the MySite. This site is created as a site collection of a web application configured for MySites under a managed path, normally ‘personal’. The site collection is created when an individual requests access to the Mysite.aspx for the first time.

MySite Personal site definition

The site definition is located in {SharePointRoot}\TEMPLATE\SiteTemplates\SPSPERS\

Top bar navigation

The definition provisions no global navigation nodes.

Quick Launch navigation

The definition provisions the following quick launch navigation nodes:

  • ‘Documents’ as an area.
  • ‘Pictures’ as an area.
  • ‘Libraries’ as an area.

Configuration 0

The primary configuration activates no Site features.

The primary configuration activates the following Web features:

  • ‘Personalization Site’ {ED5E77F7-C7B1-4961-A659-0DE93080FA36} located in {SharePointRoot}\TEMPLATE\FEATURES\PersonalizationSite\feature.xml.
  • ‘My Site Navigation’ {6ADFF05C-D581-4c05-A6B9-920F15EC6FD9} located in {SharePointRoot}\TEMPLATE\FEATURES\MySiteNavigation\Feature.xml.
  • ‘Team Collaboration Lists’ {00BFEA71-4EA5-48D4-A4AD-7EA5C011ABE5} located in {SharePointRoot}\TEMPLATE\FEATURES\TeamCollab\feature.xml.

Default Module provisions the following files:

  • public.aspx
  • default.aspx

Public.aspx

The public page contains a redirection control.

There are no web parts provisioned to this page.

Default.aspx

The default page is the content view for the individuals personal MySite.

The web parts provisioned to this page are:

The web parts are then manipulated during the feature activation to give the final result below.

image

What’s next?

Hopefully this has given you an insight into what makes up the SharePoint 2010 MySite. In the next article we’ll examine in more detail how to customise the branding and other visual elements.

7 comments

  1. Very nice post. I guess public.aspx is not part of SPSPERS template and hence not provisioned when the personal site is created.

    public.aspx belongs to SPSMSITE template which has the redirection control, but I’m not sure if this template is used anywhere.

  2. Hi Wes

    Thanks for sharing these details. Really helps us understand more about how all the underlying parts work together.

    Few points for your consideration….

    SharePoint standard terminology (as we know) is often ambiguous and hence confusing. This is certainly the case with My Site….

    What is “the” My Site HOST?? I have been confused for years!

    There are really two of these – each used for a different purpose

    1 A selected SP – web application
    - used to HOST
    - a separate SP – site collection for each user
    - as a personal – site collection
    - each created, based on SP – single-site (TEMPLATE) = SPSPERS
    - can then be changed freely by that specific user

    2 A selected SP – site collection
    - used to HOST
    - a few standard “template” pages
    - within a SP – single-site (INSTANCE)
    - based on SP – single-site (TEMPLATE) = SPSMSITEHOST
    - that really provides a “front-end” to a specific associated
    - SP – UPS – application (INSTANCE) with associated databases
    - profile database
    - social database
    - synch database

    The “template” pages get user-specific information
    - NOT from the
    - SP – content database (associated with the SP – site collection (INSTANCE) )
    - but from the
    - SP – UPS – application (INSTANCE)

    The SP – UPS – application (INSTANCE)
    - can be considered as a wrapper around
    - Forefront Identity Manager services

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>