Channel Access Markup Language


CAML is an XML based language for describing various channel access controls. In practice, CAML is used to layout and configure controls for display within a modern, HTML, CSS, SVG and JavaScript standards compliant web browser such as Safari and Firefox. CAML is supported on Linux, Mac OS X and Windows.

CAML communicates with servers using the standard EPICS Channel Access client libraries through the Web CA Plugin. A web browser is used to render the controls and can be integrated with other web content.

The CAML project is managed at SNS in Oak Ridge National Lab and the development work is contracted to Cosy Lab. Special thanks to Matej and his team at Cosy Lab who work on this project.

CAML Controls


  1. BulletPresentation from the 2009 ICALEPCS conference


  1. BulletDocumented XML based language

  2. BulletCAML namespace for integration with XHTML content

  3. BulletUses the Web CA plugin for channel access client access using the standard EPICS client libraries

  4. BulletXSLT transform to display CAML within a web browser

  5. BulletCSS support to enforce formatting standards

Known Issues

  1. BulletThe Slider control causes Safari to crash when present on the same page as an “advanced chart”

  2. BulletPlots are way too slow

Getting CAML

For all platforms, you can download CAML and the Web CA Plugin source code from Cosy Lab.

The EPICS Client Installer for Intel Macs running Leopard or Snow Leopard installs the Web CA Plugin and CAML and is compatible with both 32 and 64 bit web browsers.