7. The product of claim 6 , wherein the instructions to group the remaining subsequences into groups includes instructions to: for each group, identify any portion of the string that is delimited by and does not include source code associated with the sub-sequences of the group, and identify and add to the group one or more sub-sequences still under consideration and associated with the identified portion of string.
7. The product of claim 6 , wherein the instructions to group the remaining subsequences into groups includes instructions to: for each group, identify any portion of the string that is delimited by and does not include source code associated with the sub-sequences of the group, and identify and add to the group one or more sub-sequences still under consideration and associated with the identified portion of string. 8. The product of claim 7 , wherein the instructions to determine the sequence in which tags occur in the string includes instructions to: generate a tokenized version of the string, the tokenized version including tag tokens, each of which representing a corresponding tag in the string, the sequence and sub-sequences of tag tokens in the tokenized version being the same as the sequence and sub-sequences of tags in the string; and use the tokenized version to identify the sequence and sub-sequences in which tags occur in the string.