Share via

Introduction to Collaborative Application Markup Language (CAML)

Applies to: SharePoint Foundation 2010

Collaborative Application Markup Language (CAML) is an XML-based language that is used in Microsoft SharePoint Foundation to define the fields and views that are used in sites and lists.


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 SharePoint Foundation 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 SharePoint Foundation Web service to interact remotely with a deployment

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

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

Rendering with CAML

CAML is used for two types of rendering in SharePoint Foundation: 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


Site Types: WebTemplates and Site Definitions

Overview of Creating Custom Site Definitions