RfcAgiler  Pattern construction and analysis SSL









      A sequence identifier hierarchy is created, and patterns are generated by
      describing the contents of each sequence identifier, setting subsequences,
      and setting variable identifiers.

      The figure below shows a sequence identifier created under the file identifier $File[1].
      out_62 

  (1) Pattern structure
       The pattern construction is $Seq{3] under $Seq[1], $Seq[5] under $Seq[3],
       $Seq[2] after $Seq[1], $Seq[2 ] followed by $Seq[4].
       Sequences in the same layer can be moved up and down,
       so you can change the pattern configuration.
 

 (2) Pattern analysis
       The order of pattern analysis is
           a. $Seq[1] (parse unconditionally)
           b. $Seq[3] (parse if $Seq[3] is set in the contents of $Seq[1])

           c. $Seq[5] (parse if $Seq[5] is set in the contents of $Seq[3])
 
         
e. $Seq[2] (parse unconditionally)
           f. $Seq[4] (parse unconditionally)

    1. Parsing $Seq[1]
       out_63   

        The variable identifier $Var[28] is a loop (repetition),
       so it repeats for the number of instances $Var[28].

       $Var[28] is a variable whose element name is --arbitrary--of Lclass.

       Since we have $Seq[3], the contents of $Seq[3] will be expanded here.
 
       If there is no $Seq[3] in the contents, $Seq[3] is not expanded.

    2. Parsing $Seq[3]
       out_64

       Since there is no loop over variable identifiers, the contents of $Seq[3] are
       processed only once, expanding to $Seq[3] above the contents of $Seq[1].

       $Var[39] is S class and the element name is fixed, so there is no loop (repetition).
       There is $Seq[5], so the contents of $Seq[5] are expanded here.
       If there is no $Seq[5] in the contents, $Seq[5] will not be expanded.

    3. Parsing $Seq[5]
      out_65

       Variable identifiers $Var[57], $Var[58], $Var[59] are loops (repetition),
      so the number of instances $Var[57], $Var[58], $Var[59]
I repeat.
      $Var[57],$Var[58],$Var[59] are three keywords for state transitions.

    4. Parsing $Seq[2]
       out_66 

       $Seq[2] has no subsequences and variable identifiers,
       so the contents are added after the contents expanded in $Seq[1].

    5. Parsing $Seq[4]
       out_67  

       $Seq[4] has no subsequences and variable identifiers,
       so its contents are added after the contents expanded in $Seq[2].

      Please refer to "9.2. Output check" for the check of the analysis result.