2.4.1.15 Repeating Section Control

A repeating section control acts as a container for other controls that can appear multiple times in the same form (1). The following table describes the symbols for a repeating section control.

Symbol

Description

REPEATING_SECTION_CALL

The first part of the repeating section control that indicates where the repeating sections is rendered.

REPEATING_SECTION_BODY_ WITHOUT_CONDITIONAL_HIDING

The second part of the repeating section that defines the properties of the repeating section and its content.

REPEATING_SECTION_BODY_ WITHOUT_CONDITIONAL_HIDING

The second part of the repeating section that defines the properties of the repeating section and its content. This part is used when the section is conditionally hidden.

REPEATING_SECTION MUST consist of a REPEATING_SECTION_CALL at the point in the XSL where the control appears, which is either the body of the main template or another XSL template, and a REPEATING_SECTION_BODY that defines the section and appears as a separate XSL template. TEMPLATE_MODE_ID values in REPEATING_SECTION_CALL and REPEATING_SECTION_BODY MUST match.

In any production defined in this section, any use of a TAB_INDEX with the same subscript MUST have an identical yield.

In any production defined in this section, any use of a CONTROL_ID with the same subscript MUST have an identical yield.

REPEATING_SECTION_CALL:

 SIMPLE_SECTION_CALL | 
 (CHECK_FOR_GETDOM_BEGIN1
 <xsl:apply-templates select="(GROUP_XPATH/)?RELATIVE_REPEATING_GROUP_XPATH" mode="TEMPLATE_MODE_ID1"/>
     (<div class="optionalPlaceholder" xd:xmlToEdit="XML_TO_EDIT_NAME" tabIndex="TABINDEX1" xd:action="xCollection::insert" align="ALIGN" style="STYLE_WIDTH">ANY_STRING</div>)?
 CHECK_FOR_GETDOM_END1) | 
 (CHECK_FOR_GETDOM_BEGIN1
 (<xsl:variable name=(&quot;filterParentHasNewRows(CONTROL_ID1)&quot;) select=&quot;xdXDocument:GetNamedNodeProperty(RELATIVE_GROUP_XPATH1,&quot;filterHasNewRows&quot;, &quot;false&quot;)&quot;/>
 <xsl:variable name=(&quot;filterParentVersion(CONTROL_ID1)&quot;) select=&quot;xdXDocument:GetNamedNodeProperty(RELATIVE_GROUP_XPATH1,&quot;parentFilterVersion&quot;,&quot;0&quot;)&quot;/>)
 <xsl:apply-templates select="(GROUP_XPATH/)?RELATIVE_REPEATING_GROUP_XPATH([PREDICATE_XPATH or ($filterParentHasNewRows(CONTROL_ID1)= "true" and xdXDocument:GetNamedNodeProperty(., "filterVersion", "0") > $filterParentVersion(CONTROL_ID1))]) " mode="TEMPLATE_MODE_ID1"/>
     (<div class="optionalPlaceholder" xd:xmlToEdit="XML_TO_EDIT_NAME" tabIndex="TABINDEX1" xd:action="xCollection::insert" align="ALIGN" style="STYLE_WIDTH">ANY_STRING</div>)?
 CHECK_FOR_GETDOM_END1)
  

REPEATING_SECTION_BODY: REPEATING_SECTION_BODY_WITHOUT_CONDITIONAL_HIDING or REPEATING_SECTION_BODY_WITH_CONDITIONAL_HIDING.

REPEATING_SECTION_BODY_WITHOUT_CONDITIONAL_HIDING:

 <xsl:template match="RELATIVE_REPEATING_GROUP_XPATH" mode="TEMPLATE_MODE_ID1">
     <div class="xdRepeatingSection xdRepeating" title="ANY_STRING" (style="SECTION_STYLE")? align="ALIGN" xd:xctname="RepeatingSection" xd:CtrlId="CONTROL_ID1" (tabIndex="-1")? xd:widgetIndex="TABINDEX1" (xd:postbackModel="POSTBACKMODEL")?>
         XML_HTML_4_1_WITH_CONTROLS
         (<xsl:attribute name="style">SECTION_STYLE(<xsl:choose>
                 (<xsl:when test="BOOLEAN_XPATH_EXPRESSION">STYLE_CAPTION</xsl:when>|
                 <xsl:when test="BOOLEAN_XPATH_EXPRESSION">STYLE_BACKGROUND_COLOR; STYLE_CAPTION</xsl:when>)+
             </xsl:choose>)?
             (<xsl:if test="BOOLEAN_XPATH_EXPRESSION">STYLE_DISABLE_CHILD_XML_TO_EDIT</xsl:if>)*
         </xsl:attribute>)?
     </div>
 </xsl:template>

REPEATING_SECTION_BODY_WITH_CONDITIONAL_HIDING:

 <xsl:template match="RELATIVE_REPEATING_GROUP_XPATH" mode="TEMPLATE_MODE_ID1">
     <xsl:if test="BOOLEAN_XPATH_EXPRESSION">
         <div class="xdRepeatingSection xdRepeating" title="ANY_STRING" (style="SECTION_STYLE")? align="ALIGN" xd:xctname="RepeatingSection" xd:CtrlId="CONTROL_ID1" (tabIndex="-1")? xd:widgetIndex="TABINDEX1" (xd:postbackModel="POSTBACKMODEL")? HIDDEN_FORMATTING_CAPTION>
             XML_HTML_4_1_WITH_CONTROLS
             (<xsl:attribute name="style">SECTION_STYLE(<xsl:choose>
                     (<xsl:when test="BOOLEAN_XPATH_EXPRESSION">STYLE_CAPTION</xsl:when>|
                     <xsl:when test="BOOLEAN_XPATH_EXPRESSION">STYLE_BACKGROUND_COLOR; STYLE_CAPTION</xsl:when>)+
                 </xsl:choose>)?
                 (<xsl:if test="BOOLEAN_XPATH_EXPRESSION">STYLE_DISABLE_CHILD_XML_TO_EDIT</xsl:if>)*
             </xsl:attribute>)?
         </div>
     </xsl:if>
 </xsl:template>

The following table lists control-specific attributes used by the repeating section control.

Attribute

Section

xd:action

2.4.2.1

xd:CtrlId

2.4.2.10

xd:postbackModel

2.4.2.29

xd:widgetIndex

2.4.2.37.10

xd:xctname

2.4.2.35

xd:xmlToEdit

2.4.2.36