Enterprise Content Management (ECM) Development in SharePoint Server 2010

Learn about ECM features, concepts, procedures, and code samples that you can use to start working with the ECM object model in SharePoint Server 2010.

Applies to: SharePoint Server 2010

Enterprise Content Management, or ECM, enables the management, storage, retention, workflow, and delivery of documents and other content types across the enterprise.

What Is Enterprise Content Management (ECM) in SharePoint?

In Microsoft SharePoint Server 2010, ECM provides an expanded subset of options, an expanded scope, and is more extensible than in previous versions. ECM features are available to everyone in the enterprise, are easy to use, and support a broad range of content from the formal and structured to the informal and unstructured. ECM features and functionality are also highly extensible and scalable.

Managing Digital Assets in SharePoint

Digital asset management (DAM) includes functionality that supports the ingestion, annotation, storage, retrieval, and rendering of digital content, including audio, video, and images.

Managing Documents in SharePoint

Document management (DM) includes functionality to create, store, and track documents, document sets, and other types of content. The feature area includes a content organizer, a template for a Document Center, and infrastructure required to support the creation of document sets. It also includes technology that you can use to navigate through collections of documents and filter based on metadata, and a way to locate documents based on metadata defaults.

Managing Records and eDiscovery in SharePoint

Records management (RM) includes functionality used to identify documents as records, and ways to manage those records throughout their life cycle—identifying and creating records, eDiscovery or hold, auditing, expiration, and disposal. In SharePoint Server 2010, records management supports managing records in an archive or repository, and supports in-place records management.

Managing Enterprise Metadata in SharePoint

Enterprise metadata, or managed metadata, is a hierarchical collection of centrally managed terms that you can define and then use as metadata throughout SharePoint Server 2010 and other Microsoft Office 2010 applications. The metadata is managed because terms and term sets (collections of terms) are managed independently of the columns or fields that require them.

Managing Web Content in SharePoint

Web content management (WCM) enables the configuration, deployment, customization, and optimization of sites, site collections, pages, Web Parts, and documents.

This section provides an overview of new conceptual topics included for ECM.

Table 1. ECM conceptual topics in the SharePoint SDK

Topic Title

Description

Managing Rich Media Assets in SharePoint Server 2010 (ECM)

Introduces the Digital Asset Management (DAM) feature, supported scenarios, and programmability model.

Introducing Media Content Types in SharePoint Server 2010 (ECM)

Introduces the three new rich media content types (Audio, Image, Video) and their capabilities.

Walkthroughs for SharePoint Server 2010 (ECM): Creating and Customizing a Video Sharing Site

Walks through how to create a video sharing site in a five-part series.

Developing with Document Management Features in SharePoint Server 2010 (ECM)

Introduces the Document Management feature area, which includes features such as the Content Organizer, Document Sets, and DocID.

Content Organizer Feature Overview for SharePoint Server 2010 Developers (ECM)

Introduces the Content Organizer feature, which is an advanced document routing engine that is used for both document management and records management scenarios.

Document Sets in SharePoint Server 2010 (ECM)

Introduces the Document Sets feature, which is a way of collecting individual documents related to a single work product into one functional set.

Document IDs and the DocID Service in SharePoint Server 2010 (ECM)

Introduces the Document ID feature and its associated service.

Location-Based Metadata Defaults in SharePoint Server 2010 (ECM)

Explains how locations consistently manage the valid application of custom metadata to fields and items on server applications and client applications.

Metadata Navigation and Filtering in SharePoint Server 2010 (ECM)

Introduces metadata and filtering, which ties enterprise metadata to searchable indices.

Developing with SharePoint Server 2010 Records and eDiscovery Features (ECM)

Introduces the Records Management feature area, including new functionality such as In-Place Records Management, support for multisite collection searches, and changes to hold reports.

Managing Enterprise Metadata in SharePoint Server 2010 (ECM)

Introduces the Enterprise Metadata Management (EMM) feature and its associated concepts and programming model.

The ECM Programming Model in SharePoint

You can use the ECM programming model to extend the functionality of ECM and create custom solutions. The model includes methods and functions that support three types of programming: an API for server-side programming, a client object model, and Web services for client-side programming. Table 2 provides an overview of the namespaces and some notable types in the ECM object model.

Table 2. Namespaces and notable types in the ECM object model in SharePoint

Feature Area

Namespace

Description

Notable Types

Digital Asset Management

Microsoft.SharePoint.Publishing.Fields

Contains fields that are specific to DAM and WCM.

ImageField

ImageFieldValue

MediaField

MediaFieldValue

Microsoft.SharePoint.Publishing.WebControls

Provides Web controls for DAM and WCM, including media controls, the Content By Query Web Part, the Summary Link Web Part, variations, hyperlinks and URLs, console infrastructure, and publishing page controls.

MediaWebPart

Document Management

Microsoft.Office.DocumentManagement

Contains the API for Document ID and metadata navigation defaults.

DocumentId

DocumentIdProvider

MetadataDefaults

Microsoft.Office.DocumentManagement.DocSite

Contains the type that sets the document site feature receiver.

SetupDocSiteFeatureReceiver

Microsoft.Office.DocumentManagement.DocumentSets

Contains types that provide document sets functionality.

DocumentSet

DocumentSetTemplate

DocumentSetVersion

DocumentSetVersionCollection

Microsoft.Office.DocumentManagement.MetadataNavigation

Contains types that provide metadata navigation defaults and filtering functionality.

MetadataNavigationSettings

Microsoft.Office.DocumentManagement.Server

Contains the type that sets the multiple language event receiver.

Microsoft.Office.DocumentManagement.WebControls

Contains the base document container, field control, and library fields for multiple language support.

Microsoft.Office.Server.WebControls

Contains Web controls for document ID, document sets, metadata navigation, and large page libraries.

Records Management and eDiscovery

Microsoft.Office.RecordsManagement.Holds

Contains the eDiscovery and holds API.

IHoldsHandler

HoldHandlerResult

Microsoft.Office.RecordsManagement.InformationPolicy

Contains the information policy API.

ListPolicySettings

Microsoft.Office.RecordsManagement.PolicyFeatures

Contains the API that generates barcodes, manages retention and expiration, and provides auditing and labeling functionality.

Microsoft.Office.RecordsManagement.RecordsRepository

Provides the API that manages records archives, including the document router, record declaration functionality, and the records repository.

EcmDocumentRouter

EcmDocumentRouterRule

ICustomRouter

IRecordDeclarationHandler

RecordOperationResult

Microsoft.Office.RecordsManagement.Reporting

Provides the reporting API for records management.

AuditLogTrimmingReportCallout

IReportDataSource

IReportGenerator

Microsoft.Office.RecordsManagement.SearchAndProcess

Provides search and process interfaces and related API.

IProcess

ISearchEnumerator

ISearchParameters

ISearchProvider

SearchAndProcessItem

Workflow

Microsoft.Office.Workflow

Contains the API for bulk workflows.

Web Content Management

Microsoft.SharePoint.Publishing

The Web content management API, used to create and manage publishing sites.

IPublishingPageRouter

PublishingTimerJobsFeatureHandler

SiteDataResults

Microsoft.SharePoint.Publishing.Administration

The content deployment API for Web content management.

ContentDeploymentSqlSnapshotSetting

PathAuthenticationOption

Microsoft.SharePoint.Publishing.Administration.WebServices

Contains the remote import API for content deployment.

Microsoft.SharePoint.Publishing.Fields

Contains fields that are specific to DAM and WCM.

Microsoft.SharePoint.Publishing.Navigation

Provides navigation functionality for publishing sites.

PortalNavigation

PortalSiteMapDataSourceSwitch

SiteNavigationSettings

SiteNavigationSettingsWriter

Microsoft.SharePoint.Publishing.WebControls

Provides Web controls for DAM and WCM, including media controls, the Content By Query Web Part, the Summary Link Web Part, variations, hyperlinks and URLs, console infrastructure, and publishing page controls.

FileExtensionValidator

InsertMediaRibbonButton

MediaFieldControl

MediaWebPart

Microsoft.SharePoint.Publishing.WebControls.EditingMenuActions

Provides editing menu actions that support Web controls for DAM and WCM.

EditListItemPropertiesAction

PageLayoutAction

SchedulingAction

Microsoft.SharePoint.Publishing.WebServices

Provides Web services that support WCM, including a publishing service and a publishing toolbox service.

Enterprise Metadata Management

Microsoft.SharePoint.Taxonomy

Provides the core pieces of the metadata and taxonomy API, including the building blocks of the managed metadata system, such as term, term set, group, and term management.

Group

Label

TaxonomyField

TaxonomyFieldControl

TaxonomyFieldValue

TaxonomySession

TaxonomyWebTaggingControl

Term

TermSet

TermSetItem

TermStore

Microsoft.SharePoint.Taxonomy.ContentTypeSync

Provides the content type synchronization API, which publishes synchronized content types and reports on their status.

ContentTypePublisher

Microsoft.SharePoint.Taxonomy.Generic

Provides generic dictionary objects and collection objects.

Microsoft.SharePoint.Taxonomy.WebServices

Provides Web services that support term operations and term store operations, such as the TaxonomyClientService Web service.

TaxonomyClientService

See Also

Concepts

Enterprise Development with SharePoint Server 2010

Programming Overviews

SharePoint Server 2010 General Reference

Other Resources

What's New in SharePoint Server 2010

Setting Up the Development Environment for SharePoint 2010 on Windows Vista, Windows 7, and Windows Server 2008

Video: Using the SharePoint 2010 SDK Help

Enterprise Content Management Resource Center

SharePoint Developer Center

SharePoint Developer Team Blog

SharePoint Stack Exchange