The primary advantage of encapsulating content components within blocks is the ability to use the \cs{MakeBlockIndex} command anywhere in the document body to rapidly generate an index of all blocks of the same type in a specific group. Furthermore, block indices are equipped with cross-reference anchors, allowing you to \blclink{Add Block Index Link-U}(add block index links) elsewhere in the document to help readers navigate directly to the index. Thanks to the hierarchical tree structure of groups, an index generated for a specific group will automatically encompass the block entries from all its descendant subgroups. Cross-reference anchors for these subgroup indices are also generated simultaneously. \UserCommand{Generate Block Index}<\cs{MakeBlockIndex}>{ \cs{MakeBlockIndex} \{\meta{scope path}\} [\meta{block type list}] <\meta{custom parameter}> }[ - \meta{scope path} : Specifies the group path for the blocks to be included in the index. ][ - \meta{block type list} : Specifies the list of regular block types to be included in the index, separated by \texttt{,} . If this argument is empty, the index will include all block types by default. - \meta{custom parameter} : Used in \seclink{Preamble/StyleConfiguration} to achieve various complex typesetting logic. ] The scope path serves as the unique identifier for cross-referencing a group index. So you \textcolor{red}{cannot generate two block indices with overlapping scopes}, even if they specify different block type lists. If generating overlapping block indices is strictly necessary, you can use the following command to create a temporary block index that does not generate anchors: \UserCommand{Generate Temporary Block Index}<\cs{MakeBlockIndex*}>{ \cs{MakeBlockIndex*} \{\meta{scope path}\} [\meta{block type list}] <\meta{custom parameter}> } \textcolor{red}{Please do not use block index generation commands within the arguments of blocks or other commands}. \newpage