CML is CrowdFlower Markup Language, a set of tools for creating questions within the CrowdFlower Platform. CML is made up of helper tags, similar in format and syntax to standard HTML, which make defining forms to collect information from our On-Demand Workforce quick and painless.
While the built-in interactive form builder, otherwise known as the graphical editor, will automatically generate most of these helper tags for you, an understanding of CML will allow you to fully realize the utility of the platform.
When building a task on CrowdFlower, CML and HTML will play nicely together, so long as you are aware of how you are combining the two. CML can be written inside the Code Editor in the Build Job section.
The following article will act as an index, linking to a variety of CML-related resources. For a comprehensive overview of all CML, as well as an interactive preview of how it works, please see our GitHub repository.
At the heart of CML are its helper tags, which enable the creation of CML Form Elements. The following is a list of all of the available Form Elements along with articles describing their use:
- cml:text - Single line text input
- cml:textarea - Multi-line text input
- cml:checkbox - Single checkbox
- cml:checkboxes - Multiple related checkboxes
- cml:radios - Multiple radio buttons
- cml:select - Drop-down menu
- cml:ratings - Multiple radios in a single line
- cml:hours - Hours of operation input tool
- cml:taxonomy - Tree search and input tool
- cml:image_annotation - Image annotation tool
There are two additional helper tags that do not create new form elements but instead modify the behavior of existing elements with which they are associated:
The behavior of Form Elements in your job can be modified through the use of various attributes added within the opening helper tag. An example of an attribute would be
validates within the following:
<cml:text name="text_field" validates="required" />
Take a look at this article for an in-depth explanation of the available attributes.
CML Logic allows you to automatically show or hide CML Form Elements within your task depending on the responses provided by a contributor. Take a look at this article for a detailed guide on using logic in the platform.
Before a contributor can submit a task, their responses must first pass a series of checks known as "validations". Adding validations is easy and allows you to prevent the submission of poor-quality or incorrectly formatted responses. Take a look at this article for a list and description of all of the available validations on the platform.
Because of the gigantic on-demand workforce available through the CrowdFlower platform, requesting responses from multiple people for the same question is not only feasible, but one of the best methods to ensure high-quality results. Aggregation is the consolidation of one or more contributor responses into a summarized result. Take a look at this article on aggregation to see how it functions on the platform.