Introduction to Collaborative Application Markup Language (CAML)

This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

Collaborative Application Markup Language (CAML) is an XML-based language that is used in Windows SharePoint Services to define the fields and views used sites and lists. CAML is also used to define tables in the Windows SharePoint Services database during site provisioning.

Note

CAML is case-sensitive.

Site Customization with CAML

CAML can be used in various ways to customize a SharePoint site, including the following:

  • In script or code that implements members of the Windows SharePoint Services object model, where CAML strings are passed through method parameters, assigned to properties, or returned by methods and properties

  • In SOAP messaging that passes CAML strings to a Windows SharePoint Services Web service to interact remotely with a deployment

  • In front-end site definitions used to instantiate SharePoint sites

  • In Windows SharePoint Services Features to add specific functionality within a particular scope

Rendering with CAML

CAML is used for two types of rendering in Windows SharePoint Services: to define the type of data that is contained within a field, and to construct HTML that is displayed in the browser. For information on the two major uses of CAML, see Data-Defining Elements and HTML-Rendering Elements.

Programming with CAML

The following programming tasks and overview topics illustrate various ways in which CAML is used to customize site and list definitions:

See Also

Concepts

Working with Site Templates and Definitions

Guidelines for Using Custom Site Definitions, Configurations, and Templates