<blocklet>
Blocks of Macro Language code defined with <blocklet> allow for
parameterized variables and block-control forms without defining a named block.
Description
The <blocklet> form is similar to <block> in that
the contents of a <blocklet> are expanded and executed (after any
parameter substitutions). Similarly, block-control forms such as <for>
and <quote> may be used in a <blocklet> in the same
way they are used in a <block>.
However, a <blocklet> is unnamed; no name attribute is
provided. Since the block cannot be referenced, the <blocklet> cannot be
called using <call> or <insert>.
Syntax
<blocklet "[USER_DEFINED_VAR_1]="[VALUE_1]" ...
[USER_DEFINED_VAR_N]="[VALUE_N]">
<note>Macro Language code with parameterized variables goes here</note>
</blocklet>
Attributes
[USER_DEFINED_VAR_x]- Accepts a string that will act as a user-defined variable. The variable name must
begin with a lowercase alphabetic character and consist only of lowercase alphanumeric
characters, digits, and/or underscores.
The block element may include any number of additional attributes, which may be used as parameters in the Macro Language code contained within the element. The value of a user-defined variable (e.g.,
my_var) is substituted wherever a scalar expression containing a reference to it (e.g.,{@my_var}) appears within the block element.
Example
The following example an example of including Macro Language code inside a
<blocklet>. The Macro Language code contains a block-control form
(<if>) as well as variable substitution (e.g.,
{@include}, {@foo}). However, since it is not being
called externally by any code, it does not need to have a name; therefore, it can be in a
<blocklet> instead of a <block>.
<blocklet foo="" include="1"> <set> <foo> a,b,c; <if test="{@include}"> 1,2,3; </if> </foo> </set> <quote t="{@foo}"> <table>{@t} </table> </quote> </blocklet>

