CBC (Choice Based Conjoint)
mobile-phone
Choice Based Conjoint

For this setup, upload the dat file on the survey "upload file" page and call the below script for calling the design file


<exec when="init">
def getCodeFile(fname, zipHeader):
  try:
      CodesData = File( "%s/%s" % (gv.survey.path, fname), zipHeader)
  except IOError:
      CodesData = ""
  return CodesData
</exec>

<exec when="init">
cbcd = getCodeFile("md_design.dat", "code")
</exec>

After this copy the question replace list, update attributes (and no. of attributes), update looprows (based on tasks), update question label and update piping of attributes for CBC question accordingly.


  <quota label="cbcQu" overquota="noqual" sheet="CBCversion"/>

  <number 
   label="CBC_Version"
   size="3"
   where="execute,survey,report">
    <title>CBC Version</title>
    <exec>
print p.markers
for x in p.markers:
    if "/CBCversion/varCBC_" in x:
        CBC_Version.val = int(x.split("_")[-1])
        break
    </exec>

  </number>

  <suspend/>

  <define label="att1_list">
    <row label="r1">First-person shooter (FPS)</row>
    <row label="r2">Third-person shooter (TPS) / Action</row>
    <row label="r3">Role-playing (RPG)</row>
    <row label="r4">Strategy</row>
    <row label="r5">Simulation</row>
    <row label="r6">Casual / puzzle / card</row>
    <row label="r7">Real-time strategy</row>
    <row label="r8">Sports</row>
    <row label="r9">Music</row>
    <row label="r10">Fighting</row>
    <row label="r11">Massive online battle arena (MOBA)</row></define>
  <define label="att2_list">
    <row label="r1">Not included (Note: show as blank cell in programmed conjoint)</row>
    <row label="r2">Additional story content is available for purchase in a cash shop</row></define>
  <define label="att3_list">
    <row label="r1">Not included (Note: show as blank cell in programmed conjoint)</row>
    <row label="r2">Additional levels of gameplay are available for purchase in a cash shop</row></define>
  <define label="att4_list">
    <row label="r1">Not included (Note: show as blank cell in programmed conjoint)</row>
    <row label="r2">Additional characters are available for purchase in a cash shop</row></define>
  <define label="att5_list">
    <row label="r1">Not included (Note: show as blank cell in programmed conjoint)</row>
    <row label="r2">In-game items like weapons, vehicles and equipment are available for purchase in a cash shop</row></define>
  <define label="att6_list">
    <row label="r1">Not included (Note: show as blank cell in programmed conjoint)</row>
    <row label="r2">Cosmetic items and customizations for you characters are available for purchase in a cash shop</row></define>
  <define label="att7_list">
    <row label="r1">Not included (Note: show as blank cell in programmed conjoint)</row>
    <row label="r2">Boosters and power-ups are available for purchase in a cash shop</row></define>
  <define label="att8_list">
    <row label="r1">The game features in-game currency that can only be earned</row>
    <row label="r2">The game features in-game currency that can be earned or purchased with real money</row>
    <row label="r3">The game features an in-game currency that can only be earned and a separate currency that can only be purchased with real money</row></define>
  <define label="att9_list">
    <row label="r1">Not included (Note: show as blank cell in programmed conjoint)</row>
    <row label="r2">The game features exclusive in-game items that can only be purchased with real money</row>
    <row label="r3">The game features exclusive in-game items that can be either earned or purchased with real money</row></define>
  <define label="att10_list">
    <row label="r1">The game is free of all advertising</row>
    <row label="r2">The game features advertising</row></define>
  <define label="att11_list">
    <row label="r1">There is no subscription required to play</row>
    <row label="r2">The game requires you to pay a subscription each month in order to play</row></define>
  <define label="att12_list">
    <row label="r1">Game is free</row>
    <row label="r2">Game is available for $2.50</row>
    <row label="r3">Game is available for $5</row>
    <row label="r4">Game is available for $10</row>
    <row label="r5">Game is available for $15</row>
    <row label="r6">Game is available for $20</row>
    <row label="r7">Game is available for $25</row>
    <row label="r8">Game is available for $30</row>
    <row label="r9">Game is available for $40</row>
    <row label="r10">Game is available for $50</row></define>
  <loop label="CBCloop" vars="var1">
    <title>Maxdiff loop</title>
    <block label="CBC">
      <exec>
codes = str(CBC_Version.val) + "x[loopvar: label]"


for x in range(1,4):
	codeF = codes + "x" + str(x)
	cbciter = cbcd.get(codeF)
	if cbciter:
		for n in range(1,13):
			punchQ = allQuestions["Attr%sc%s_[loopvar: label]" % (str(n),str(x))]
			if int(cbciter["attr" + str(n)]) gt 0:
				punchQ.val = punchQ.attr("r" +cbciter["attr" + str(n)]).index
      </exec>

      <select 
     label="Attr1c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 1 for Concept 1</title>
        <insert as="choices" source="att1_list"/>
      </select>

      <select 
     label="Attr2c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 2 for Concept 1</title>
        <insert as="choices" source="att2_list"/>
      </select>

      <select 
     label="Attr3c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 3 for Concept 1</title>
        <insert as="choices" source="att3_list"/>
      </select>

      <select 
     label="Attr4c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 4 for Concept 1</title>
        <insert as="choices" source="att4_list"/>
      </select>

      <select 
     label="Attr5c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 5 for Concept 1</title>
        <insert as="choices" source="att5_list"/>
      </select>

      <select 
     label="Attr6c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 6 for Concept 1</title>
        <insert as="choices" source="att6_list"/>
      </select>

      <select 
     label="Attr7c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 7 for Concept 1</title>
        <insert as="choices" source="att7_list"/>
      </select>

      <select 
     label="Attr8c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 8 for Concept 1</title>
        <insert as="choices" source="att8_list"/>
      </select>

      <select 
     label="Attr9c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 9 for Concept 1</title>
        <insert as="choices" source="att9_list"/>
      </select>

      <select 
     label="Attr10c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 10 for Concept 1</title>
        <insert as="choices" source="att10_list"/>
      </select>

      <select 
     label="Attr11c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 11 for Concept 1</title>
        <insert as="choices" source="att11_list"/>
      </select>

      <select 
     label="Attr12c1_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 12 for Concept 1</title>
        <insert as="choices" source="att12_list"/>
      </select>

      <suspend/>

      <select 
     label="Attr1c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 1 for Concept 2</title>
        <insert as="choices" source="att1_list"/>
      </select>

      <select 
     label="Attr2c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 2 for Concept 2</title>
        <insert as="choices" source="att2_list"/>
      </select>

      <select 
     label="Attr3c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 3 for Concept 2</title>
        <insert as="choices" source="att3_list"/>
      </select>

      <select 
     label="Attr4c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 4 for Concept 2</title>
        <insert as="choices" source="att4_list"/>
      </select>

      <select 
     label="Attr5c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 5 for Concept 2</title>
        <insert as="choices" source="att5_list"/>
      </select>

      <select 
     label="Attr6c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 6 for Concept 2</title>
        <insert as="choices" source="att6_list"/>
      </select>

      <select 
     label="Attr7c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 7 for Concept 2</title>
        <insert as="choices" source="att7_list"/>
      </select>

      <select 
     label="Attr8c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 8 for Concept 2</title>
        <insert as="choices" source="att8_list"/>
      </select>

      <select 
     label="Attr9c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 9 for Concept 2</title>
        <insert as="choices" source="att9_list"/>
      </select>

      <select 
     label="Attr10c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 10 for Concept 2</title>
        <insert as="choices" source="att10_list"/>
      </select>

      <select 
     label="Attr11c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 11 for Concept 2</title>
        <insert as="choices" source="att11_list"/>
      </select>

      <select 
     label="Attr12c2_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 12 for Concept 2</title>
        <insert as="choices" source="att12_list"/>
      </select>

      <suspend/>

      <select 
     label="Attr1c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 1 for Concept 3</title>
        <insert as="choices" source="att1_list"/>
      </select>

      <select 
     label="Attr2c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 2 for Concept 3</title>
        <insert as="choices" source="att2_list"/>
      </select>

      <select 
     label="Attr3c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 3 for Concept 3</title>
        <insert as="choices" source="att3_list"/>
      </select>

      <select 
     label="Attr4c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 4 for Concept 3</title>
        <insert as="choices" source="att4_list"/>
      </select>

      <select 
     label="Attr5c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 5 for Concept 3</title>
        <insert as="choices" source="att5_list"/>
      </select>

      <select 
     label="Attr6c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 6 for Concept 3</title>
        <insert as="choices" source="att6_list"/>
      </select>

      <select 
     label="Attr7c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 7 for Concept 3</title>
        <insert as="choices" source="att7_list"/>
      </select>

      <select 
     label="Attr8c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 8 for Concept 3</title>
        <insert as="choices" source="att8_list"/>
      </select>

      <select 
     label="Attr9c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 9 for Concept 3</title>
        <insert as="choices" source="att9_list"/>
      </select>

      <select 
     label="Attr10c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 10 for Concept 3</title>
        <insert as="choices" source="att10_list"/>
      </select>

      <select 
     label="Attr11c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 11 for Concept 3</title>
        <insert as="choices" source="att11_list"/>
      </select>

      <select 
     label="Attr12c3_[loopvar: label]"
     optional="1"
     where="execute,survey,report">
        <title>Attribute 12 for Concept 3</title>
        <insert as="choices" source="att12_list"/>
      </select>

      <suspend/>

      <radio 
     label="CBCD_[loopvar: label]" surveyDisplay="desktop">
        <title>CBC Demo</title>
        <comment>Select one</comment>
        <row label="ra1" optional="1" where="notdp">Genre</row>
        <row label="ra2" cond="Attr2c3_[loopvar: label].any or Attr2c2_[loopvar: label].any or Attr2c1_[loopvar: label].any" optional="1" where="notdp">Additional story content</row>
        <row label="ra3" cond="Attr3c3_[loopvar: label].any or Attr3c2_[loopvar: label].any or Attr3c1_[loopvar: label].any" optional="1" where="notdp">Additional game levels</row>
        <row label="ra4" cond="Attr4c3_[loopvar: label].any or Attr4c2_[loopvar: label].any or Attr4c1_[loopvar: label].any" optional="1" where="notdp">Additional characters</row>
        <row label="ra5" cond="Attr5c3_[loopvar: label].any or Attr5c2_[loopvar: label].any or Attr5c1_[loopvar: label].any" optional="1" where="notdp">Additional in-game items</row>
        <row label="ra6" cond="Attr6c3_[loopvar: label].any or Attr6c2_[loopvar: label].any or Attr6c1_[loopvar: label].any" optional="1" where="notdp">Additional cosmetic items</row>
        <row label="ra7" cond="Attr7c3_[loopvar: label].any or Attr7c2_[loopvar: label].any or Attr7c1_[loopvar: label].any" optional="1" where="notdp">Additional boosters</row>
        <row label="ra8" cond="Attr8c3_[loopvar: label].any or Attr8c2_[loopvar: label].any or Attr8c1_[loopvar: label].any" optional="1" where="notdp">In-game currency</row>
        <row label="ra9" cond="Attr9c3_[loopvar: label].any or Attr9c2_[loopvar: label].any or Attr9c1_[loopvar: label].any" optional="1" where="notdp">Exclusive items</row>
        <row label="ra10" cond="Attr10c3_[loopvar: label].any or Attr10c2_[loopvar: label].any or Attr10c1_[loopvar: label].any" optional="1" where="notdp">Ads</row>
        <row label="ra11" cond="Attr11c3_[loopvar: label].any or Attr11c2_[loopvar: label].any or Attr11c1_[loopvar: label].any" optional="1" where="notdp">Subscription</row>
        <row label="ra12" optional="1" where="notdp">Upfront game client cost</row>
        <row label="r1" ss:rowClassNames="lastrow"/>
        <style name="question.left" rows="ra1,ra2,ra3,ra4,ra5,ra6,ra7,ra8,ra9,ra10,ra11,ra12"><![CDATA[
\@if this.styles.ss.legendColWidth
    <$(tag) scope="row" class="cell nonempty legend row-legend row-legend-left ${"row-legend-both " if ec.haveRightLegend and ec.haveLeftLegend else ""}row-legend-basic ${"mobile-left-row-legend " if force else ""}$(levels) ${"desktop" if this.grouping.cols else "mobile"} ${"row-legend-both-space " if ec.haveRightLegend and ec.haveLeftLegend and (not row.group or not row.index==0) else "border-collapse "} $(row.styles.ss.rowClassNames)" style="width:${this.styles.ss.legendColWidth}; min-width:${this.styles.ss.legendColWidth}">
        <div class="att_title"><span class="level_text">$(text)</span></div>
    </$(tag)>
\@else
    <$(tag) scope="row" class="cell nonempty legend row-legend row-legend-left ${"row-legend-both " if ec.haveRightLegend and ec.haveLeftLegend else ""}row-legend-basic ${"mobile-left-row-legend " if force else ""}$(levels) ${"desktop" if this.grouping.cols else "mobile"} ${"row-legend-both-space " if ec.haveRightLegend and ec.haveLeftLegend and (row.group or not row.index==0) else "border-collapse "} $(row.styles.ss.rowClassNames)">
        <div class="att_title"><span class="level_text">$(text)</span></div>
    </$(tag)>
\@endif
]]></style>
        <style cols="c1" name="question.element" rows="ra1,ra2,ra3,ra4,ra5,ra6,ra7,ra8,ra9,ra10,ra11,ra12"><![CDATA[
\@if ec.simpleList
<div class="element $(rowStyle) $(levels) $(extraClasses) ${col.group.styles.ss.groupClassNames if col.group else (row.group.styles.ss.groupClassNames if row.group else "")} $(col.styles.ss.colClassNames) $(row.styles.ss.rowClassNames) ${"clickableCell" if isClickable else ""}"$(extra)>
${Attr1c1_[loopvar: label].selected.text if ec.row.label=="ra1" else ""}
${Attr2c1_[loopvar: label].selected.text if ec.row.label=="ra2" else ""}
${Attr3c1_[loopvar: label].selected.text if ec.row.label=="ra3" else ""}
${Attr4c1_[loopvar: label].selected.text if ec.row.label=="ra4" else ""}
${Attr5c1_[loopvar: label].selected.text if ec.row.label=="ra5" else ""}
${Attr6c1_[loopvar: label].selected.text if ec.row.label=="ra6" else ""}
${Attr7c1_[loopvar: label].selected.text if ec.row.label=="ra7" else ""}
${Attr8c1_[loopvar: label].selected.text if ec.row.label=="ra8" else ""}
${Attr9c1_[loopvar: label].selected.text if ec.row.label=="ra9" else ""}
${Attr10c1_[loopvar: label].selected.text if ec.row.label=="ra10" else ""}
${Attr11c1_[loopvar: label].selected.text if ec.row.label=="ra11" else ""}
${Attr12c1_[loopvar: label].selected.text if ec.row.label=="ra12" else ""}
</div>
\@else
<$(tag) $(headers) class="cell nonempty element $(levels) ${"desktop" if this.grouping.cols else "mobile"} border-collapse $(extraClasses) ${col.group.styles.ss.groupClassNames if col.group else (row.group.styles.ss.groupClassNames if row.group else "")} $(col.styles.ss.colClassNames) $(row.styles.ss.rowClassNames) ${"clickableCell" if isClickable else ""}"$(extra)>
${Attr1c1_[loopvar: label].selected.text if ec.row.label=="ra1" else ""}
${Attr2c1_[loopvar: label].selected.text if ec.row.label=="ra2" else ""}
${Attr3c1_[loopvar: label].selected.text if ec.row.label=="ra3" else ""}
${Attr4c1_[loopvar: label].selected.text if ec.row.label=="ra4" else ""}
${Attr5c1_[loopvar: label].selected.text if ec.row.label=="ra5" else ""}
${Attr6c1_[loopvar: label].selected.text if ec.row.label=="ra6" else ""}
${Attr7c1_[loopvar: label].selected.text if ec.row.label=="ra7" else ""}
${Attr8c1_[loopvar: label].selected.text if ec.row.label=="ra8" else ""}
${Attr9c1_[loopvar: label].selected.text if ec.row.label=="ra9" else ""}
${Attr10c1_[loopvar: label].selected.text if ec.row.label=="ra10" else ""}
${Attr11c1_[loopvar: label].selected.text if ec.row.label=="ra11" else ""}
${Attr12c1_[loopvar: label].selected.text if ec.row.label=="ra12" else ""}

</$(tag)>
\@endif
]]></style>
        <style cols="c2" name="question.element" rows="ra1,ra2,ra3,ra4,ra5,ra6,ra7,ra8,ra9,ra10,ra11,ra12"><![CDATA[
\@if ec.simpleList
<div class="element $(rowStyle) $(levels) $(extraClasses) ${col.group.styles.ss.groupClassNames if col.group else (row.group.styles.ss.groupClassNames if row.group else "")} $(col.styles.ss.colClassNames) $(row.styles.ss.rowClassNames) ${"clickableCell" if isClickable else ""}"$(extra)>
${Attr1c2_[loopvar: label].selected.text if ec.row.label=="ra1" else ""}
${Attr2c2_[loopvar: label].selected.text if ec.row.label=="ra2" else ""}
${Attr3c2_[loopvar: label].selected.text if ec.row.label=="ra3" else ""}
${Attr4c2_[loopvar: label].selected.text if ec.row.label=="ra4" else ""}
${Attr5c2_[loopvar: label].selected.text if ec.row.label=="ra5" else ""}
${Attr6c2_[loopvar: label].selected.text if ec.row.label=="ra6" else ""}
${Attr7c2_[loopvar: label].selected.text if ec.row.label=="ra7" else ""}
${Attr8c2_[loopvar: label].selected.text if ec.row.label=="ra8" else ""}
${Attr9c2_[loopvar: label].selected.text if ec.row.label=="ra9" else ""}
${Attr10c2_[loopvar: label].selected.text if ec.row.label=="ra10" else ""}
${Attr11c2_[loopvar: label].selected.text if ec.row.label=="ra11" else ""}
${Attr12c2_[loopvar: label].selected.text if ec.row.label=="ra12" else ""}
</div>
\@else
<$(tag) $(headers) class="cell nonempty element $(levels) ${"desktop" if this.grouping.cols else "mobile"} border-collapse $(extraClasses) ${col.group.styles.ss.groupClassNames if col.group else (row.group.styles.ss.groupClassNames if row.group else "")} $(col.styles.ss.colClassNames) $(row.styles.ss.rowClassNames) ${"clickableCell" if isClickable else ""}"$(extra)>
${Attr1c2_[loopvar: label].selected.text if ec.row.label=="ra1" else ""}
${Attr2c2_[loopvar: label].selected.text if ec.row.label=="ra2" else ""}
${Attr3c2_[loopvar: label].selected.text if ec.row.label=="ra3" else ""}
${Attr4c2_[loopvar: label].selected.text if ec.row.label=="ra4" else ""}
${Attr5c2_[loopvar: label].selected.text if ec.row.label=="ra5" else ""}
${Attr6c2_[loopvar: label].selected.text if ec.row.label=="ra6" else ""}
${Attr7c2_[loopvar: label].selected.text if ec.row.label=="ra7" else ""}
${Attr8c2_[loopvar: label].selected.text if ec.row.label=="ra8" else ""}
${Attr9c2_[loopvar: label].selected.text if ec.row.label=="ra9" else ""}
${Attr10c2_[loopvar: label].selected.text if ec.row.label=="ra10" else ""}
${Attr11c2_[loopvar: label].selected.text if ec.row.label=="ra11" else ""}
${Attr12c2_[loopvar: label].selected.text if ec.row.label=="ra12" else ""}

</$(tag)>
\@endif
]]></style>
        <style cols="c3" name="question.element" rows="ra1,ra2,ra3,ra4,ra5,ra6,ra7,ra8,ra9,ra10,ra11,ra12"><![CDATA[
\@if ec.simpleList
<div class="element $(rowStyle) $(levels) $(extraClasses) ${col.group.styles.ss.groupClassNames if col.group else (row.group.styles.ss.groupClassNames if row.group else "")} $(col.styles.ss.colClassNames) $(row.styles.ss.rowClassNames) ${"clickableCell" if isClickable else ""}"$(extra)>
${Attr1c3_[loopvar: label].selected.text if ec.row.label=="ra1" else ""}
${Attr2c3_[loopvar: label].selected.text if ec.row.label=="ra2" else ""}
${Attr3c3_[loopvar: label].selected.text if ec.row.label=="ra3" else ""}
${Attr4c3_[loopvar: label].selected.text if ec.row.label=="ra4" else ""}
${Attr5c3_[loopvar: label].selected.text if ec.row.label=="ra5" else ""}
${Attr6c3_[loopvar: label].selected.text if ec.row.label=="ra6" else ""}
${Attr7c3_[loopvar: label].selected.text if ec.row.label=="ra7" else ""}
${Attr8c3_[loopvar: label].selected.text if ec.row.label=="ra8" else ""}
${Attr9c3_[loopvar: label].selected.text if ec.row.label=="ra9" else ""}
${Attr10c3_[loopvar: label].selected.text if ec.row.label=="ra10" else ""}
${Attr11c3_[loopvar: label].selected.text if ec.row.label=="ra11" else ""}
${Attr12c3_[loopvar: label].selected.text if ec.row.label=="ra12" else ""}
</div>
\@else
<$(tag) $(headers) class="cell nonempty element $(levels) ${"desktop" if this.grouping.cols else "mobile"} border-collapse $(extraClasses) ${col.group.styles.ss.groupClassNames if col.group else (row.group.styles.ss.groupClassNames if row.group else "")} $(col.styles.ss.colClassNames) $(row.styles.ss.rowClassNames) ${"clickableCell" if isClickable else ""}"$(extra)>
${Attr1c3_[loopvar: label].selected.text if ec.row.label=="ra1" else ""}
${Attr2c3_[loopvar: label].selected.text if ec.row.label=="ra2" else ""}
${Attr3c3_[loopvar: label].selected.text if ec.row.label=="ra3" else ""}
${Attr4c3_[loopvar: label].selected.text if ec.row.label=="ra4" else ""}
${Attr5c3_[loopvar: label].selected.text if ec.row.label=="ra5" else ""}
${Attr6c3_[loopvar: label].selected.text if ec.row.label=="ra6" else ""}
${Attr7c3_[loopvar: label].selected.text if ec.row.label=="ra7" else ""}
${Attr8c3_[loopvar: label].selected.text if ec.row.label=="ra8" else ""}
${Attr9c3_[loopvar: label].selected.text if ec.row.label=="ra9" else ""}
${Attr10c3_[loopvar: label].selected.text if ec.row.label=="ra10" else ""}
${Attr11c3_[loopvar: label].selected.text if ec.row.label=="ra11" else ""}
${Attr12c3_[loopvar: label].selected.text if ec.row.label=="ra12" else ""}

</$(tag)>
\@endif
]]></style>
        <style name="question.after"><![CDATA[
<link rel="stylesheet" href="[rel cbc_style.css]">
]]></style>
<style name='el.noanswer'> <![CDATA[
\@if ec.simpleList
<div class="element">
\@endif
<div class="noansdiv"><span class="cell-sub-wrapper cell-legend-right"><span class="cell-input cell-sub-column">
<input type="radio" id="$(row.checkboxLabel)" name="$(row.checkboxLabel)" value="1" class="input no-answer checkbox" $(value|checkbox)/>
</span><span class="cell-text cell-sub-column"><label for="$(row.checkboxLabel)">$(label)</label></span></span></div>
\@if ec.simpleList
</div>
\@endif
]]></style>
        <col label="c1" value="1">Concept 1</col>
        <col label="c2" value="2">Concept 2</col>
        <col label="c3" value="3">Concept 3</col>
        <noanswer label="n99">None of these</noanswer>
      </radio>
    </block>

    <looprow label="1">
      <loopvar name="var1">1</loopvar>
    </looprow>

    <looprow label="2">
      <loopvar name="var1">2</loopvar>
    </looprow>

    <looprow label="3">
      <loopvar name="var1">3</loopvar>
    </looprow>

    <looprow label="4">
      <loopvar name="var1">4</loopvar>
    </looprow>

    <looprow label="5">
      <loopvar name="var1">5</loopvar>
    </looprow>

    <looprow label="6">
      <loopvar name="var1">6</loopvar>
    </looprow>

    <looprow label="7">
      <loopvar name="var1">7</loopvar>
    </looprow>

    <looprow label="8">
      <loopvar name="var1">8</loopvar>
    </looprow>

    <looprow label="9">
      <loopvar name="var1">9</loopvar>
    </looprow>

    <looprow label="10">
      <loopvar name="var1">10</loopvar>
    </looprow>

    <looprow label="11">
      <loopvar name="var1">11</loopvar>
    </looprow>

    <looprow label="12">
      <loopvar name="var1">12</loopvar>
    </looprow>

    <looprow label="13">
      <loopvar name="var1">13</loopvar>
    </looprow>

    <looprow label="14">
      <loopvar name="var1">14</loopvar>
    </looprow>
  </loop>