diff --git a/sbvr-parser.ometajs b/sbvr-parser.ometajs index 931c345..dd24867 100644 --- a/sbvr-parser.ometajs +++ b/sbvr-parser.ometajs @@ -675,6 +675,15 @@ export ometa SBVRParser <: SBVRLibs { } return term; }, + AttrTermFormSynonym = + {_.last(this.lines)}:factType + {_.last(factType)}:attrs + {_.findLast(attrs, {0: 'TermForm'})}:termForm + ( ?(!termForm) + {throw new Error('Term form synonyms require a term form first')} + )? + AddIdentifier(termForm[1][0], termForm[1][1]), + AttrReferenceType = seq('informative') | seq('strict'), @@ -877,6 +886,7 @@ defaultAllowedAttrLists = { FactType: [ 'Synonymous Form:', 'Term Form:', + 'Term Form Synonym:', 'Reference Type:' ].concat(defaultAllowedAttrLists), Rule: [