Summary of fsgmatch rule formalism

ElementSubelementsAttributesAttribute ValuesOpt/ObligDefault ValueComment
RULESLEX*, RULE+namename of rulesetoptional  
applyname of rule(s) to applyobligatory  
typeSGML | PLAINoptionalPLAIN 
RULEREL+namename of ruleobligatory  
typeSEQ | DISJ | DISJF | PHRASEoptionalSEQPHRASE only used for lexical lookup rules
targrewrite of the stringoptional  
targ_sgXML element to wrap round stringoptional  
arg$1, $2 etcoptional used in lexical lookup rules
REL(CONSTR | REL | ARG)*typeDIRECT | REF | GROUPoptionalDIRECTGROUP used to nest subsequences of RELs
varA, B, C etcoptional  
matchstring to be matchedobligatory value is a regular expression when type="DIRECT", a rulename when type="REF" and DISJF | DISJ | SEQ when type="GROUP"
m_modPLAIN | STAR | QUEST | PLUS | TEST | TEST-NOoptionalPLAIN  
rewriterewrite of stringoptional  
CONSTR check_inalias for lexicon (defined in a LEX element)obligatory  
check_tagstag(s) associated with string in lexiconoptional  
check_modNO | LOWERCASE | FIRST-LOWERCASE | UPPERCASE | FIRST-UPPERCASEoptionalNO 
ARG bind$1, $2 etcobligatory used to fix value for variable in a RULE arg attribute
LEX typeWRD | PHRASEoptionalWRDPHRASE to be used if lexical entries might be multi-word entries
file_namelocation of lexicon fileobligatory  
aliasalias used to refer to lexicon in a CONSTR check_in attributeobligatory