anchor.diff:          | {has_ver1=1;} ver1=attr_expression_ver1
           | {has_ver2=1;} ver2=attr_expression_ver2
           | {has_cond=1;} cond=attr_expression_cond
  +        | attr_expression_default
           | anyattribute
           )*
           ( TAG_CLOSE
  
positive.code:     :   { tagMode && !attrMode }?=> 'cond'
      ;
  
  NAME
      :   { tagMode && !attrMode }?=> (UCLETTER | LCLETTER) (UCLETTER | LCLETTER | DIGIT)*
      |   { tagMode && attrMode }?=> (UCLETTER | LCLETTER) (UCLETTER | LCLETTER | DIGIT | '_' | ' ' | '?')*
  
negative.code:     :   TAG_START_OPTION
          ( value=attr_int_value
          | name=attr_constant_name 
          | attr_expression_default
          | anyattribute
          )*
          ( TAG_CLOSE doc=SHORTDOC* TAG_END_OPTION
  