Introduction to Collaborative Application Markup Language (CAML)
Applies to: SharePoint 2016 | SharePoint Foundation 2013 | SharePoint Online | SharePoint Server 2013
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 about 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: