Full Text Search: The Key to Better Natural Language Queries for NoSQL in Node.js
Content types are a new feature introduced in Windows SharePoint Services (WSS) 3.0. To leverage this feature appropriately, users can't just rely on the basic documentation. What you'll find in the real world is that companies are implementing the various components of content types without leveraging the full power of using the components of content types together. Once you've been able to move beyond using folders in your document libraries and you've adopted the use of metadata (or columns), it's important to understand how you can leverage content types to take your SharePoint Document Libraries and Lists to the next level.
To bring a real context to content types, I will be walking through various real-world examples. These will allow you to ultimately apply content types to your own business needs.
Definition of Content Types
A content type represents settings that apply to a certain kind of content. What makes one piece of content similar to another? Do they share a common set of metadata (for example, author, purpose, and so forth)? Do you perform the same actions on these documents after they've been created? Do these documents have the same lifespan? If the answer to these questions is "yes!" you will need a way to group the information together. In SharePoint Portal 2003, you achieved this via separate document libraries for each "type" of document. But what if these groups of documents really should be stored together with other groups of documents that live by a different set of metadata and rules? In SharePoint 2007, content types can be used as the grouping method and provide a much better answer to using separate document libraries.
Content types allow you to store different types of content in the same document library or list. Even though the different types of content live in the same library, they can abide by different sets of rules. A single content type consists of the following core elements:
- A document template that should be used for this content
You can specify the document type and template you want to use as a base for new items of a specific content type. Many document templates can be specified for a single document library.
- A set of metadata that is assigned to this content
Metadata is used to classify your content in a document library. In SharePoint, metadata is referred to as "columns" in the list or document library. A different set of columns can be specified for each type of document or content type in the document library.
- A set of workflows that belong to this content
You can associate a workflow to a content type, not document libraries, and the workflow then can be initiated for a document of that content type. The advantage is that, if a specific content type is reused in a different document library, the workflow settings for that content type are preserved. In addition, the workflow can be configured to initiate automatically or manually when new items are added or existing items are modified for that specific content type.
- Information management policies to apply to this content
Policies are a set of rules for a type of content which enable you to manage content in terms of auditing, retention, bar codes, and document labels.
- Document conversion to make available for this content
Document conversion components transform documents from one format to another. You can associate one or more installed document convertors to a specific content type so that documents of that content type can be implicitly converted into another format.
Figure 1: Document Template
Figure 2: Meeting Minutes Metadata
Figure 3: Agenda Metadata
Figure 4: Workflow
Figure 5: Information Management Policies
Beyond these core elements, a content type also can be extended with custom features. These will not be covered in this article.
Now that content types have been defined, it's time to look at the specific examples.