10.34. Poll Tool for OLX


EdX does not support this tool.

You can run polls in your course so that your students can share opinions on different questions.



Creating a poll requires you to export your course, edit some of your course’s XML files in a text editor, and then re-import your course. We recommend that you create a backup copy of your course before you create the poll. We also recommend that you only edit the files that will contain polls in the text editor if you are very familiar with editing XML.

10.34.1. Terminology

Sections, subsections, units, and components have different names in the Course Outline view and in the list of files that you see after you export your course and open the .xml files for editing. The following table lists the names of these elements in the Course Outline view and in a list of files.

Course Outline View

File List








Discussion, HTML, problem, or video

For example, when you want to find a specific section in your course, you look in the Chapter folder when you open the list of files that your course contains. To find a unit, you look in the Vertical folder.

10.34.2. Create a Poll

  1. In the unit where you want to create the poll, create components that contain all the content that you want except for the poll. Make a note of the 32-digit unit ID that appears in the Unit Identifier field under Unit Location.

  2. Export your course. For information about how to do this, see Exporting and Importing a Course. Save the .tar.gz file that contains your course in a memorable location so that you can find it easily.

  3. Locate the .tar.gz file that contains your course, and then unpack the .tar.gz file so that you can see its contents in a list of folders and files.

  4. In the list of folders and files, open the Vertical folder.


    If your unit is not published, open the Drafts folder, and then open the Vertical folder in the Drafts folder.

  5. In the Vertical folder, locate the .xml file that has the same name as the unit ID that you noted in step 1, and then open the file in a text editor such as Sublime 2. For example, if the unit ID is e461de7fe2b84ebeabe1a97683360d31, you open the e461de7fe2b84ebeabe1a97683360d31.xml file.

    The file contains a list of all the components in the unit, together with the URL names of the components. For example, the following file contains an HTML component followed by a discussion component.

    <vertical display_name="Test Unit">
     <html url_name="b59c54e2f6fc4cf69ba3a43c49097d0b"/>
     <discussion url_name="8320c3d511484f3b96bdedfd4a44ac8b"/>
  6. Add the following poll code in the location where you want the poll. Change the text of the prompt to the text that you want.

    <poll_question display_name="Poll Question">
      <p>Text of the prompt</p>
      <answer id="yes">Yes</answer>
      <answer id="no">No</answer>

    In the example above, if you wanted your poll to appear between the HTML component and the discussion component in the unit, your code would resemble the following.

    <vertical display_name="Test Unit">
     <html url_name="b59c54e2f6fc4cf69ba3a43c49097d0b"/>
     <poll_question display_name="Poll Question">
       <p>Text of the prompt</p>
       <answer id="yes">Yes</answer>
       <answer id="no">No</answer>
     <discussion url_name="8320c3d511484f3b96bdedfd4a44ac8b"/>
  7. After you add the poll code, save and close the .xml file.

  8. Re-package your course as a .tar.gz file.

  9. In Studio, re-import your course. You can now review the poll question and answers that you added in Studio.


  • Although polls render correctly in Studio, you cannot edit them in Studio. You will need to follow the export/import process outlined above to make any edits to your polls.

  • A .csv file that contains student responses to the problem is not currently available for polls. However, you can obtain the aggregate data directly in the problem.

10.34.3. Format description

The main tag of poll module input is:

<poll_question> ... </poll_question>

poll_question can include any number of the following tags: any xml and answer tag. All inner xml, except for answer tags, we call “question”. poll_question tag

Xmodule for creating poll functionality - voting system. The following attributes can be specified for this tag:

name - Name of xmodule.
[display_name| AUTOGENERATE] - Display name of xmodule. When this attribute is not defined - display name autogenerate with some hash.
[reset | False] - Can reset/revote many time (value = True/False) answer tag

Define one of the possible answer for poll module. The following attributes can be specified for this tag:

id - unique identifier (using to identify the different answers)

Inner text - Display text for answer choice.

10.34.4. Example Example of poll

<poll_question name="second_question" display_name="Second question">
    <p>How old are you?</p>
    <answer id="less18">&lt; 18</answer>
    <answer id="10_25">from 10 to 25</answer>
    <answer id="more25">&gt; 25</answer>
</poll_question> Example of poll with unable reset functionality

<poll_question name="first_question_with_reset" display_name="First question with reset"
    <h3>Your gender</h3>
    <p>You are man or woman?</p>
    <answer id="man">Man</answer>
    <answer id="woman">Woman</answer>