A <part> construct typically corresponds to a section of livedoc.  It might be team choice elements, the safety section, etc.


A <part> construct:

  1. introduces a section with an optional title
  2. describes the purpose of a section with zero or more paragraphs in the body of the <part> (ie between the <part> and </part> tags).
  3. zero or more nested <part>s describing any sub-sections
  4. contains an optional series of <element> constructs describing inputs for the section (more here)


Here is an example:


<part name="ext-script" desc_clid="ext-script-desc" title="Script of Presentation" output="heading">

       If your team is presenting in a language other than English, you must provide a transcript or 

       subtitles of the dialogue in English for any video you submit. Teams that are presenting in English

       may submit a transcript or use subtitles, but it is not required. Transcripts and subtitles must only include spoken 

       dialogue. If your team includes non-dialogue information (staging directions, plot synopsis, etc.), this will not be read by the

       Appraisers and will not affect your team's scores.

       <br/><br/>

       If you are submitting a transcript, please upload it as a PDF below. 

       <element type="attachment" clid="tc-script" name="tc-script" submit="optional">

               Video Script

       </element>

</part>


The <part> is presented in the following order:

    1. title
    2. description
    3. nested <part>s in order
    4. <element>s in order


<part> constructs can have a number of attributes that control how they are displayed in the livedoc:


  • name: a unique name associates with the part 
  • title: the title for the section - generally the heading text
  • type: one of the following that typically controls formatting of elements with the part
    • simple: no special formatting
    • list:: elements should be a bulleted list
    • number-list:: elements should be a numbered list
    • table: element describe a table (not currently being used)
    • substitute: simple but look for substitutions that need to be made (it is better to use the substitute attribute) 
    • expense-table: the construct for collecting expense related elements
  • part_type: one of the following types that control presentation of nested parts - this works in conjunction with the list-element attribute
    • none: nested parts are not indented - TCEs are an example
    • list: nested parts should be a bulleted list
    • number-list: nested parts should be a number list
  • list_element: if set to 1, the part will be bulleted based on the part_type of the parent part
  • substitute: if 1 the description is scanned for values that need to be substituted
  • output: an attribute that controls when the title and description are included in the output
    • all: title and heading emitted
    • heading: only heading emitted
    • none: neither the title or heading emitted
  • summary: TDFs have a summary of the elements with an answer in the upper right corner of the livedoc. summary=1 says this is a summary item.  summary_name supplies the label for the summary count.  Each element within the <part> that has a response will increment the summary count by 1.
  • lid / clid: lid for title
  • desc_lid / desc_clid: lid for the description
  • attrs: additional attributes of the <part>.  A <part> will generate and html <div>.  The attributes are given to this <div>.  A common use is for limiting width of a <part) (ie width=80%)
  • if: controls whether the <part> is displayed.  The value is an expression such as online_forms=1. If the value is true, the part is displayed otherwise it is not.  This is used to control descriptive text based on properties of the tournament.