In my last post I discussed the differences between Choice, Lookup and Managed Metadata Columns as possible alternatives for each other, particularly the Choice Column. After examining many of the similarities and differences, I indicated three possible solutions based on each type of Column; when to use and why they would be useful. In this post I will focus on the Managed Metadata Column and the Term Store. As the Term Store is really the source of the Managed Metadata Column, understanding the Term Store's functions will enable better management and assist with deciding on using the Managed Metadata Column as a replacement or alternative to the Choice or even Lookup Columns.
Term Store Basics
A Term Store is a database of terms, stored in a hierarchical manner and organized by a company's taxonomy. It is the primary management tool of a managed metadata system for SharePoint 2010, and thus provides a number of special functions to not only control but also delegate and apply terms and term management. All Term Stores are bound up with a Managed Metadata Service Application, and while you can be associated with multiple Managed Metadata Service Applications, you may only configure one Term Store per Managed Metadata Service Application. Terms in the Term Store are first organized into security groupings called Term Groups, which help define who can manage and who can contribute to Term Sets. Term Sets represent the different hierarchies, beginning at the Term Set level, that an organization may design and support. There are certainly maximums for both Term Sets and Term Stores, but in this scenario it may not become so important an issue. The Managed Metadata Service Application drives an organization's taxonomy more than it does a set of choices for a Choice column, and thus since Choice sets may be smaller in depth and number, the maximum size may not impact the creation of such sets. Finally, Terms make up the main body of the Term Sets, and although there are several levels that the Terms may branch down, again for Choice sets this may not be a concern, as one or two levels may prove to be enough.
After a Managed Metadata Service Application has been deployed, a Term Store may be configured for use as noted previously. Depending on how this will be integrated, this Term Store may be part of the single Managed Metadata Service or may be part of an auxiliary Service. If Content Type Syndication is in use, the Site Columns in the Content Type Hub can pull from this Term Store and be published to other Site Collections so long as the associated Managed Metadata Service is connected to the destination Site Collections that are consuming from the Content Type Hub. Since they can be bound up into the same Managed Metadata Service, this makes management simpler.
The Term Store, the Term Group and the Term Set all have particular configurations that may impact how a user will both consume as well as contribute to the Choice-based terms. Each level of this hierarchy presents different decision points for the implementation.
- Term Store – Since this will house all Groups and Sets, the Term Store can be assigned an administrator different from the Farm Administrator, to indicate role separation. This role can then create and manage Term Groups, which in turn will create administrators for Term Sets.
- Term Group – A security configuration to determine who can create and edit Term Sets and who can additionally add administrators to the Term Sets. If this Choice set is managed apart from the user base, Contributors can be a select management group for editing the Term Sets.
- Term Sets – All Terms reside in Term Sets, and Term Sets can be configured for Open Submission, which will allow users to enter and manage their own terms. Also, the Contact field may be supplied an email address so feedback suggestions may be made if direct editing is not allowable.
Examining the Deployment
In this scenario a Primary Managed Metadata Service Application (from this point forward abbreviated as MMS) and a Secondary MMS built for Choice sets. The Primary will function as the standard taxonomy service while the Secondary will only act as a Choice set source. The Secondary has been enabled with a Content Type Hub and will provide Content Type Syndication for the environment. The Secondary MMS will contain at least one Term Group for User-Defined Sets, and will hold at least one Term Set for General Choices. From these sets, the Managed Metadata Column will be constructed. Because of the requirements for configuring these, we will not review the stages in this post.
First, we configure the Term Store for the Term Sets for our Choice Sets:
1) Open Term Store Management under Site Administration from Site Settings.
2) Create a new Term Group for the Choice sets to be managed by users. At this point a set of Managers and Contributors could be assigned. The assigned Group Manager should be responsible for controlling all the Term Sets for this group. If Contributors will be managing Suggestions, they can be assigned as well as the Group Managers.
3) Create a new Term Set to represent the sets of choices. For single level, the Term Set would start the default Category. This would allow individual groups of term sets to be managed separately from each other, since we can set the Submission Policy to Open. If we needed the Term Set to be Suggestion Only, we can configure a contact email address that the Contributors or Group Manager could view to review the suggestions. For multiple level, such as creating the Term Set root as a separate submission policy group and using first-level terms as the actual start of the Choice sets, the top-level terms and the choices beneath them need to be created.
4) At this point our Choice set is ready to go. As more sets are needed, additional Term Sets or top-level terms can be created. If Terms as Choices need to be duplicated or reused, copy and reuse features are available. However, copies of Terms do not update the original source, while reused terms allow all connected Terms to be updated as well. This is particularly valuable when a Choice is created and should be reused rather than simply copied, such as with departments or locations.
5) We could now create custom lists or use existing lists and add a Managed Metadata Column. Note than when we add in our column, we can choose single or multiple items and either single term or full path. The full path would display a hierarchy, but may not be as useful if this will be a single level of choices.
6) After the Managed Metadata Column has been added, we will have a simple open field to add in our choices. Since this will not be obvious, additional information may be necessary, such as a Description for the choices or to click the Tags icon to open the Select Dialog Box.
7) The user may use the hierarchical list to now see and select their choices. If a Contact email address was configured for Feedback only, the Send Feedback link would open up their mail client to communicate their suggestions to the Contributors or Managers.
This configuration can easily deploy a Managed Metadata Column connected to our Choices term sets, but if we need our column to be centrally managed, we need to build out Content Type Syndication and use Site Columns. This will be the topic for my next post.
The requirement already is complex enough that it requires a Farm Administrator to configure either a special Term Group for the Choices Term Sets, or provide a completely separate MMS if the management is more permissible. However, once the initial Term Groups, Term Sets and first-level terms are in place, deciding upon Feedback or Open Submission will be a business practice decision. Finally, if the Column will be centrally managed or localized to the Site Collection, additional configurations may be necessary.