Introduction to Content Types
Content types, a core concept used throughout the functionality and services offered in Windows SharePoint Services 3.0, are designed to help users organize their SharePoint content in a more meaningful way. A content type is a reusable collection of settings you want to apply to a certain category of content. Content types enable you to manage the metadata and behaviors of a document or item type in a centralized, reusable way.
For example, consider the following two types of documents: software specifications and legal contracts. It is reasonable that you might want to store documents of those two types in the same document library. However, the metadata you would want to gather and store about each of these document types would be very different. In addition, you would most likely want to assign very different workflows to the two types of documents.
Content Types Encapsulate Data Requirements
Content types enable you to store multiple different types of content in the same document library or list. In the preceding example, you could define two content types, named Specification and Contract. Each content type would include different columns for gathering and storing item metadata, as well as different workflows assigned to them. Yet items of both content types could be stored in the same document library.
You can think of a content type as a refinement and extension of a Windows SharePoint Services 2.0 list, which by default defined a single data structure, or schema, to which all items on that list had to adhere. In Windows SharePoint Services 2.0, the schema of an item was inextricably bound to its location. When you defined a list or document library, you also defined the columns for that list or library, in effect defining the data schema for all items stored in that location. Each column represented an additional piece of data you were tracking for all items on the list.
For more information about columns, see Columns.
Content types are a means of encapsulating a data schema and making it independent of a SharePoint list location. In Windows SharePoint Services 3.0, you can make multiple schemas, in the form of multiple content types, available on the same list or document library. The Specification content type might have the following metadata columns: Project Lead, Developer, and Test Lead. The Contract content type, on the other hand, might have these columns: Lawyer and Signer. Yet specifications and contracts can live side-by-side in the same list or document library.
Content Type Settings
You can further extend content type functionality by using them to assign additional settings, such as workflows, or even custom attributes, to your items.
A content type can include the following information:
The metadata, or properties, you want to assign to this type. These are represented by columns added to the list or document library when you add the content type.
Custom New, Edit, and Display forms to use with this content type.
Workflows available for items of this content type. These can be defined to start automatically based on a selected event or condition, or through user selection.
For document content types, the document template on which to base documents of this type.
Any information necessary for custom solutions associated with this content type. You can store this information in the content type as one or more XML documents.
Content Types Enable Content Standardization
Because content types can be defined independently of any specific list or document library, you can make a given content type available for the lists on multiple SharePoint sites. This enables you to centrally define and manage the types of content you store in your site collection. For example, you could use your Specification content type to ensure that all software specifications track the same metadata, even if those specifications are stored across multiple sites.
Content Types are File Format Independent
Content types are independent of file formats. For document libraries, you can specify a document template; when the user requests a new document of this content type, Windows SharePoint Services creates a new document based on the template. However, users can still upload a document based on a different template, or even of a completely different file type.
For example, suppose you create a content type to represent a business plan. This content type could be applied to any file format. You might have the following:
Microsoft Office Word documents containing background information
Microsoft Office Excel documents containing a financial plan
Microsoft Office PowerPoint presentations for the venture capital pitch
Windows Media files of demos
SharePoint list items containing the specified metadata
All of these files could be assigned the Business Plan content type.
You can also assign content types to SharePoint items that do not have a file at all, such as list items or folders. Content types created for documents can be applied only to document libraries; likewise, content types created for list items can be applied only to lists. Content types created for folders can be applied to either document libraries or lists.
Content Type Creation
You can create column and content types in three ways:
Using the Windows SharePoint Services user interface
Using the Windows SharePoint Services object model
Deploying a Feature that installs the content type based on an XML definition file. For more information, see Working with Features.
Content types created at the site level can be applied to child sites or lists. For more information, see Site and List Content Types.