// $ANTLR 3.3 Nov 30, 2010 12:50:56 BELScriptWalker.g 2014-05-14 13:14:52 package org.openbel.framework.common.bel.parser; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Set; import java.util.Map; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.LinkedHashSet; import java.util.Arrays; import java.util.List; import java.util.ArrayList; import java.util.Date; import org.openbel.bel.model.BELDocument; import org.openbel.bel.model.BELDocumentHeader; import org.openbel.bel.model.BELAnnotation; import org.openbel.bel.model.BELCitation; import org.openbel.bel.model.BELEvidence; import org.openbel.bel.model.BELAnnotationDefinition; import org.openbel.bel.model.BELAnnotationType; import org.openbel.bel.model.BELNamespaceDefinition; import org.openbel.bel.model.BELDocumentProperty; import org.openbel.bel.model.BELStatement; import org.openbel.bel.model.BELStatementGroup; import org.openbel.bel.model.BELParseErrorException; import org.openbel.bel.model.BELParseWarningException; import org.openbel.bel.model.BELParseErrorException.DefineAnnotationBeforeUsageException; import org.openbel.bel.model.BELParseErrorException.SetDocumentPropertiesFirstException; import org.openbel.bel.model.BELParseErrorException.DocumentNameException; import org.openbel.bel.model.BELParseErrorException.DocumentDescriptionException; import org.openbel.bel.model.BELParseErrorException.DocumentVersionException; import org.openbel.bel.model.BELParseErrorException.UnsetDocumentPropertiesException; import org.openbel.bel.model.BELParseWarningException.UnsetUndefinedAnnotationException; import org.openbel.bel.model.BELParseErrorException.NamespaceUndefinedException; import org.openbel.bel.model.BELParseErrorException.InvalidCitationException; import org.openbel.bel.model.BELParseErrorException.InvalidEvidenceException; import org.openbel.framework.common.enums.FunctionEnum; import org.antlr.runtime.*; import org.antlr.runtime.tree.*;import java.util.Stack; import java.util.List; import java.util.ArrayList; public class BELScriptWalker extends TreeParser { public static final String[] tokenNames = new String[] { "<invalid>", "<EOR>", "<DOWN>", "<UP>", "NEWLINE", "DOCUMENT_COMMENT", "DOCUMENT_KEYWORD", "OBJECT_IDENT", "VALUE_LIST", "STATEMENT_GROUP_KEYWORD", "IDENT_LIST", "QUOTED_VALUE", "OPEN_PAREN", "CLOSE_PAREN", "STATEMENT_COMMENT", "NS_PREFIX", "COMMA", "LETTER", "DIGIT", "EscapeSequence", "WS", "UnicodeEscape", "OctalEscape", "HexDigit", "'SET'", "'='", "'UNSET'", "'DEFINE'", "'DEFAULT'", "'NAMESPACE'", "'AS'", "'URL'", "'ANNOTATION'", "'PATTERN'", "'LIST'", "'Authors'", "'ContactInfo'", "'Copyright'", "'Description'", "'Disclaimer'", "'Licenses'", "'Name'", "'Version'", "','", "'proteinAbundance'", "'p'", "'rnaAbundance'", "'r'", "'abundance'", "'a'", "'microRNAAbundance'", "'m'", "'geneAbundance'", "'g'", "'biologicalProcess'", "'bp'", "'pathology'", "'path'", "'complexAbundance'", "'complex'", "'translocation'", "'tloc'", "'cellSecretion'", "'sec'", "'cellSurfaceExpression'", "'surf'", "'reaction'", "'rxn'", "'compositeAbundance'", "'composite'", "'fusion'", "'fus'", "'degradation'", "'deg'", "'molecularActivity'", "'act'", "'catalyticActivity'", "'cat'", "'kinaseActivity'", "'kin'", "'phosphataseActivity'", "'phos'", "'peptidaseActivity'", "'pep'", "'ribosylationActivity'", "'ribo'", "'transcriptionalActivity'", "'tscript'", "'transportActivity'", "'tport'", "'gtpBoundActivity'", "'gtp'", "'chaperoneActivity'", "'chap'", "'proteinModification'", "'pmod'", "'substitution'", "'sub'", "'truncation'", "'trunc'", "'reactants'", "'products'", "'list'", "'increases'", "'->'", "'decreases'", "'-|'", "'directlyIncreases'", "'=>'", "'directlyDecreases'", "'=|'", "'causesNoChange'", "'positiveCorrelation'", "'negativeCorrelation'", "'translatedTo'", "'>>'", "'transcribedTo'", "':>'", "'isA'", "'subProcessOf'", "'rateLimitingStepOf'", "'biomarkerFor'", "'prognosticBiomarkerFor'", "'orthologous'", "'analogous'", "'association'", "'--'", "'hasMembers'", "'hasComponents'", "'hasMember'", "'hasComponent'" }; public static final int EOF=-1; public static final int T__24=24; public static final int T__25=25; public static final int T__26=26; public static final int T__27=27; public static final int T__28=28; public static final int T__29=29; public static final int T__30=30; public static final int T__31=31; public static final int T__32=32; public static final int T__33=33; public static final int T__34=34; public static final int T__35=35; public static final int T__36=36; public static final int T__37=37; public static final int T__38=38; public static final int T__39=39; public static final int T__40=40; public static final int T__41=41; public static final int T__42=42; public static final int T__43=43; public static final int T__44=44; public static final int T__45=45; public static final int T__46=46; public static final int T__47=47; public static final int T__48=48; public static final int T__49=49; public static final int T__50=50; public static final int T__51=51; public static final int T__52=52; public static final int T__53=53; public static final int T__54=54; public static final int T__55=55; public static final int T__56=56; public static final int T__57=57; public static final int T__58=58; public static final int T__59=59; public static final int T__60=60; public static final int T__61=61; public static final int T__62=62; public static final int T__63=63; public static final int T__64=64; public static final int T__65=65; public static final int T__66=66; public static final int T__67=67; public static final int T__68=68; public static final int T__69=69; public static final int T__70=70; public static final int T__71=71; public static final int T__72=72; public static final int T__73=73; public static final int T__74=74; public static final int T__75=75; public static final int T__76=76; public static final int T__77=77; public static final int T__78=78; public static final int T__79=79; public static final int T__80=80; public static final int T__81=81; public static final int T__82=82; public static final int T__83=83; public static final int T__84=84; public static final int T__85=85; public static final int T__86=86; public static final int T__87=87; public static final int T__88=88; public static final int T__89=89; public static final int T__90=90; public static final int T__91=91; public static final int T__92=92; public static final int T__93=93; public static final int T__94=94; public static final int T__95=95; public static final int T__96=96; public static final int T__97=97; public static final int T__98=98; public static final int T__99=99; public static final int T__100=100; public static final int T__101=101; public static final int T__102=102; public static final int T__103=103; public static final int T__104=104; public static final int T__105=105; public static final int T__106=106; public static final int T__107=107; public static final int T__108=108; public static final int T__109=109; public static final int T__110=110; public static final int T__111=111; public static final int T__112=112; public static final int T__113=113; public static final int T__114=114; public static final int T__115=115; public static final int T__116=116; public static final int T__117=117; public static final int T__118=118; public static final int T__119=119; public static final int T__120=120; public static final int T__121=121; public static final int T__122=122; public static final int T__123=123; public static final int T__124=124; public static final int T__125=125; public static final int T__126=126; public static final int T__127=127; public static final int T__128=128; public static final int T__129=129; public static final int T__130=130; public static final int NEWLINE=4; public static final int DOCUMENT_COMMENT=5; public static final int DOCUMENT_KEYWORD=6; public static final int OBJECT_IDENT=7; public static final int VALUE_LIST=8; public static final int STATEMENT_GROUP_KEYWORD=9; public static final int IDENT_LIST=10; public static final int QUOTED_VALUE=11; public static final int OPEN_PAREN=12; public static final int CLOSE_PAREN=13; public static final int STATEMENT_COMMENT=14; public static final int NS_PREFIX=15; public static final int COMMA=16; public static final int LETTER=17; public static final int DIGIT=18; public static final int EscapeSequence=19; public static final int WS=20; public static final int UnicodeEscape=21; public static final int OctalEscape=22; public static final int HexDigit=23; // delegates // delegators public BELScriptWalker(TreeNodeStream input) { this(input, new RecognizerSharedState()); } public BELScriptWalker(TreeNodeStream input, RecognizerSharedState state) { super(input, state); } protected TreeAdaptor adaptor = new CommonTreeAdaptor(); public void setTreeAdaptor(TreeAdaptor adaptor) { this.adaptor = adaptor; } public TreeAdaptor getTreeAdaptor() { return adaptor; } public String[] getTokenNames() { return BELScriptWalker.tokenNames; } public String getGrammarFileName() { return "BELScriptWalker.g"; } private final Map<BELDocumentProperty, String> docprop = new HashMap<BELDocumentProperty, String>(); private int lastDocumentPropertyLocation = 0; private final Set<BELAnnotationDefinition> adlist = new LinkedHashSet<BELAnnotationDefinition>(); private final Map<String, BELAnnotationDefinition> definedAnnotations = new LinkedHashMap<String, BELAnnotationDefinition>(); private final Map<String, BELNamespaceDefinition> definedNamespaces = new LinkedHashMap<String, BELNamespaceDefinition>(); private final Set<BELNamespaceDefinition> nslist = new LinkedHashSet<BELNamespaceDefinition>(); private BELStatementGroup activeStatementGroup; private BELStatementGroup documentStatementGroup = new BELStatementGroup(); private List<BELStatementGroup> statementGroups = new ArrayList<BELStatementGroup>(); private final Map<String, BELAnnotation> sgAnnotationContext = new LinkedHashMap<String, BELAnnotation>(); private final Map<String, BELAnnotation> annotationContext = new LinkedHashMap<String, BELAnnotation>(); private BELCitation citationContext; private BELEvidence evidenceContext; private final List<BELStatement> stmtlist = new ArrayList<BELStatement>(); private final List<BELParseErrorException> syntaxErrors = new ArrayList<BELParseErrorException>(); private final List<BELParseWarningException> syntaxWarnings = new ArrayList<BELParseWarningException>(); private static final SimpleDateFormat iso8601DateFormat = new SimpleDateFormat("yyyy-MM-dd"); public List<BELParseErrorException> getSyntaxErrors() { return syntaxErrors; } public List<BELParseWarningException> getSyntaxWarnings() { return syntaxWarnings; } @Override public void emitErrorMessage(String msg) { } public void addError(BELParseErrorException e) { syntaxErrors.add(e); } public void addWarning(BELParseWarningException e) { syntaxWarnings.add(e); } public static class document_return extends TreeRuleReturnScope { public BELDocument doc; CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "document" // BELScriptWalker.g:96:1: document returns [BELDocument doc] : ( NEWLINE | DOCUMENT_COMMENT | record )+ EOF ; public final BELScriptWalker.document_return document() throws RecognitionException { BELScriptWalker.document_return retval = new BELScriptWalker.document_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree NEWLINE1=null; CommonTree DOCUMENT_COMMENT2=null; CommonTree EOF4=null; BELScriptWalker.record_return record3 = null; CommonTree NEWLINE1_tree=null; CommonTree DOCUMENT_COMMENT2_tree=null; CommonTree EOF4_tree=null; try { // BELScriptWalker.g:96:35: ( ( NEWLINE | DOCUMENT_COMMENT | record )+ EOF ) // BELScriptWalker.g:97:5: ( NEWLINE | DOCUMENT_COMMENT | record )+ EOF { root_0 = (CommonTree)adaptor.nil(); // BELScriptWalker.g:97:5: ( NEWLINE | DOCUMENT_COMMENT | record )+ int cnt1=0; loop1: do { int alt1=4; switch ( input.LA(1) ) { case NEWLINE: { alt1=1; } break; case DOCUMENT_COMMENT: { alt1=2; } break; case 24: case 26: case 27: case 44: case 45: case 46: case 47: case 48: case 49: case 50: case 51: case 52: case 53: case 54: case 55: case 56: case 57: case 58: case 59: case 60: case 61: case 62: case 63: case 64: case 65: case 66: case 67: case 68: case 69: case 70: case 71: case 72: case 73: case 74: case 75: case 76: case 77: case 78: case 79: case 80: case 81: case 82: case 83: case 84: case 85: case 86: case 87: case 88: case 89: case 90: case 91: case 92: case 93: case 94: case 95: case 96: case 97: case 98: case 99: case 100: case 101: case 102: { alt1=3; } break; } switch (alt1) { case 1 : // BELScriptWalker.g:97:6: NEWLINE { _last = (CommonTree)input.LT(1); NEWLINE1=(CommonTree)match(input,NEWLINE,FOLLOW_NEWLINE_in_document67); NEWLINE1_tree = (CommonTree)adaptor.dupNode(NEWLINE1); adaptor.addChild(root_0, NEWLINE1_tree); } break; case 2 : // BELScriptWalker.g:97:16: DOCUMENT_COMMENT { _last = (CommonTree)input.LT(1); DOCUMENT_COMMENT2=(CommonTree)match(input,DOCUMENT_COMMENT,FOLLOW_DOCUMENT_COMMENT_in_document71); DOCUMENT_COMMENT2_tree = (CommonTree)adaptor.dupNode(DOCUMENT_COMMENT2); adaptor.addChild(root_0, DOCUMENT_COMMENT2_tree); } break; case 3 : // BELScriptWalker.g:97:35: record { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_record_in_document75); record3=record(); state._fsp--; adaptor.addChild(root_0, record3.getTree()); } break; default : if ( cnt1 >= 1 ) break loop1; EarlyExitException eee = new EarlyExitException(1, input); throw eee; } cnt1++; } while (true); _last = (CommonTree)input.LT(1); EOF4=(CommonTree)match(input,EOF,FOLLOW_EOF_in_document79); EOF4_tree = (CommonTree)adaptor.dupNode(EOF4); adaptor.addChild(root_0, EOF4_tree); if (!docprop.containsKey(BELDocumentProperty.NAME)) { addError(new DocumentNameException(lastDocumentPropertyLocation, 0)); } else if (!docprop.containsKey(BELDocumentProperty.DESCRIPTION)) { addError(new DocumentDescriptionException(lastDocumentPropertyLocation, 0)); } else if (!docprop.containsKey(BELDocumentProperty.VERSION)) { addError(new DocumentVersionException(lastDocumentPropertyLocation, 0)); } else { if (documentStatementGroup.getStatements().isEmpty()) { // statements are only contained in explicitly-defined statement groups retval.doc = new BELDocument(BELDocumentHeader.create(docprop), adlist, nslist, statementGroups); } else { // statements are defined in the implicit document statement group and possibly child statement groups documentStatementGroup.setChildStatementGroups(statementGroups); retval.doc = new BELDocument(BELDocumentHeader.create(docprop), adlist, nslist, Arrays.asList(documentStatementGroup)); } } } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "document" public static class record_return extends TreeRuleReturnScope { CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "record" // BELScriptWalker.g:117:1: record : ( define_namespace | define_annotation | set_annotation | set_document | set_statement_group | unset_statement_group | unset | statement ) ; public final BELScriptWalker.record_return record() throws RecognitionException { BELScriptWalker.record_return retval = new BELScriptWalker.record_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; BELScriptWalker.define_namespace_return define_namespace5 = null; BELScriptWalker.define_annotation_return define_annotation6 = null; BELScriptWalker.set_annotation_return set_annotation7 = null; BELScriptWalker.set_document_return set_document8 = null; BELScriptWalker.set_statement_group_return set_statement_group9 = null; BELScriptWalker.unset_statement_group_return unset_statement_group10 = null; BELScriptWalker.unset_return unset11 = null; BELScriptWalker.statement_return statement12 = null; try { // BELScriptWalker.g:117:7: ( ( define_namespace | define_annotation | set_annotation | set_document | set_statement_group | unset_statement_group | unset | statement ) ) // BELScriptWalker.g:118:5: ( define_namespace | define_annotation | set_annotation | set_document | set_statement_group | unset_statement_group | unset | statement ) { root_0 = (CommonTree)adaptor.nil(); // BELScriptWalker.g:118:5: ( define_namespace | define_annotation | set_annotation | set_document | set_statement_group | unset_statement_group | unset | statement ) int alt2=8; alt2 = dfa2.predict(input); switch (alt2) { case 1 : // BELScriptWalker.g:118:6: define_namespace { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_define_namespace_in_record98); define_namespace5=define_namespace(); state._fsp--; adaptor.addChild(root_0, define_namespace5.getTree()); } break; case 2 : // BELScriptWalker.g:118:25: define_annotation { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_define_annotation_in_record102); define_annotation6=define_annotation(); state._fsp--; adaptor.addChild(root_0, define_annotation6.getTree()); } break; case 3 : // BELScriptWalker.g:118:45: set_annotation { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_set_annotation_in_record106); set_annotation7=set_annotation(); state._fsp--; adaptor.addChild(root_0, set_annotation7.getTree()); } break; case 4 : // BELScriptWalker.g:118:62: set_document { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_set_document_in_record110); set_document8=set_document(); state._fsp--; adaptor.addChild(root_0, set_document8.getTree()); } break; case 5 : // BELScriptWalker.g:118:77: set_statement_group { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_set_statement_group_in_record114); set_statement_group9=set_statement_group(); state._fsp--; adaptor.addChild(root_0, set_statement_group9.getTree()); } break; case 6 : // BELScriptWalker.g:118:99: unset_statement_group { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_unset_statement_group_in_record118); unset_statement_group10=unset_statement_group(); state._fsp--; adaptor.addChild(root_0, unset_statement_group10.getTree()); } break; case 7 : // BELScriptWalker.g:118:123: unset { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_unset_in_record122); unset11=unset(); state._fsp--; adaptor.addChild(root_0, unset11.getTree()); } break; case 8 : // BELScriptWalker.g:118:131: statement { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_statement_in_record126); statement12=statement(); state._fsp--; adaptor.addChild(root_0, statement12.getTree()); } break; } } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "record" public static class set_document_return extends TreeRuleReturnScope { CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "set_document" // BELScriptWalker.g:121:1: set_document : ( 'SET' dkt= DOCUMENT_KEYWORD ) prop= document_property '=' (qv= QUOTED_VALUE | oi= OBJECT_IDENT ) ; public final BELScriptWalker.set_document_return set_document() throws RecognitionException { BELScriptWalker.set_document_return retval = new BELScriptWalker.set_document_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree dkt=null; CommonTree qv=null; CommonTree oi=null; CommonTree string_literal13=null; CommonTree char_literal14=null; BELScriptWalker.document_property_return prop = null; CommonTree dkt_tree=null; CommonTree qv_tree=null; CommonTree oi_tree=null; CommonTree string_literal13_tree=null; CommonTree char_literal14_tree=null; try { // BELScriptWalker.g:121:13: ( ( 'SET' dkt= DOCUMENT_KEYWORD ) prop= document_property '=' (qv= QUOTED_VALUE | oi= OBJECT_IDENT ) ) // BELScriptWalker.g:122:5: ( 'SET' dkt= DOCUMENT_KEYWORD ) prop= document_property '=' (qv= QUOTED_VALUE | oi= OBJECT_IDENT ) { root_0 = (CommonTree)adaptor.nil(); // BELScriptWalker.g:122:5: ( 'SET' dkt= DOCUMENT_KEYWORD ) // BELScriptWalker.g:122:6: 'SET' dkt= DOCUMENT_KEYWORD { _last = (CommonTree)input.LT(1); string_literal13=(CommonTree)match(input,24,FOLLOW_24_in_set_document144); string_literal13_tree = (CommonTree)adaptor.dupNode(string_literal13); adaptor.addChild(root_0, string_literal13_tree); _last = (CommonTree)input.LT(1); dkt=(CommonTree)match(input,DOCUMENT_KEYWORD,FOLLOW_DOCUMENT_KEYWORD_in_set_document148); dkt_tree = (CommonTree)adaptor.dupNode(dkt); adaptor.addChild(root_0, dkt_tree); } _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_document_property_in_set_document153); prop=document_property(); state._fsp--; adaptor.addChild(root_0, prop.getTree()); _last = (CommonTree)input.LT(1); char_literal14=(CommonTree)match(input,25,FOLLOW_25_in_set_document155); char_literal14_tree = (CommonTree)adaptor.dupNode(char_literal14); adaptor.addChild(root_0, char_literal14_tree); // BELScriptWalker.g:122:61: (qv= QUOTED_VALUE | oi= OBJECT_IDENT ) int alt3=2; int LA3_0 = input.LA(1); if ( (LA3_0==QUOTED_VALUE) ) { alt3=1; } else if ( (LA3_0==OBJECT_IDENT) ) { alt3=2; } else { NoViableAltException nvae = new NoViableAltException("", 3, 0, input); throw nvae; } switch (alt3) { case 1 : // BELScriptWalker.g:122:62: qv= QUOTED_VALUE { _last = (CommonTree)input.LT(1); qv=(CommonTree)match(input,QUOTED_VALUE,FOLLOW_QUOTED_VALUE_in_set_document160); qv_tree = (CommonTree)adaptor.dupNode(qv); adaptor.addChild(root_0, qv_tree); } break; case 2 : // BELScriptWalker.g:122:80: oi= OBJECT_IDENT { _last = (CommonTree)input.LT(1); oi=(CommonTree)match(input,OBJECT_IDENT,FOLLOW_OBJECT_IDENT_in_set_document166); oi_tree = (CommonTree)adaptor.dupNode(oi); adaptor.addChild(root_0, oi_tree); } break; } if (!annotationContext.isEmpty() || !stmtlist.isEmpty()) { addError(new SetDocumentPropertiesFirstException(dkt.getLine(), dkt.getCharPositionInLine())); } final String keywordValue; if (qv != null) { keywordValue = qv.toString(); } else if (oi != null) { keywordValue = oi.toString(); } else { throw new IllegalStateException("Did not understand document keyword value, expecting quoted value or object identifier."); } docprop.put(prop.r, keywordValue); lastDocumentPropertyLocation = dkt.getLine(); } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "set_document" public static class set_statement_group_return extends TreeRuleReturnScope { CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "set_statement_group" // BELScriptWalker.g:141:1: set_statement_group : 'SET' STATEMENT_GROUP_KEYWORD '=' (qv= QUOTED_VALUE | oi= OBJECT_IDENT ) ; public final BELScriptWalker.set_statement_group_return set_statement_group() throws RecognitionException { BELScriptWalker.set_statement_group_return retval = new BELScriptWalker.set_statement_group_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree qv=null; CommonTree oi=null; CommonTree string_literal15=null; CommonTree STATEMENT_GROUP_KEYWORD16=null; CommonTree char_literal17=null; CommonTree qv_tree=null; CommonTree oi_tree=null; CommonTree string_literal15_tree=null; CommonTree STATEMENT_GROUP_KEYWORD16_tree=null; CommonTree char_literal17_tree=null; try { // BELScriptWalker.g:141:20: ( 'SET' STATEMENT_GROUP_KEYWORD '=' (qv= QUOTED_VALUE | oi= OBJECT_IDENT ) ) // BELScriptWalker.g:142:5: 'SET' STATEMENT_GROUP_KEYWORD '=' (qv= QUOTED_VALUE | oi= OBJECT_IDENT ) { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); string_literal15=(CommonTree)match(input,24,FOLLOW_24_in_set_statement_group185); string_literal15_tree = (CommonTree)adaptor.dupNode(string_literal15); adaptor.addChild(root_0, string_literal15_tree); _last = (CommonTree)input.LT(1); STATEMENT_GROUP_KEYWORD16=(CommonTree)match(input,STATEMENT_GROUP_KEYWORD,FOLLOW_STATEMENT_GROUP_KEYWORD_in_set_statement_group187); STATEMENT_GROUP_KEYWORD16_tree = (CommonTree)adaptor.dupNode(STATEMENT_GROUP_KEYWORD16); adaptor.addChild(root_0, STATEMENT_GROUP_KEYWORD16_tree); _last = (CommonTree)input.LT(1); char_literal17=(CommonTree)match(input,25,FOLLOW_25_in_set_statement_group189); char_literal17_tree = (CommonTree)adaptor.dupNode(char_literal17); adaptor.addChild(root_0, char_literal17_tree); // BELScriptWalker.g:142:39: (qv= QUOTED_VALUE | oi= OBJECT_IDENT ) int alt4=2; int LA4_0 = input.LA(1); if ( (LA4_0==QUOTED_VALUE) ) { alt4=1; } else if ( (LA4_0==OBJECT_IDENT) ) { alt4=2; } else { NoViableAltException nvae = new NoViableAltException("", 4, 0, input); throw nvae; } switch (alt4) { case 1 : // BELScriptWalker.g:142:40: qv= QUOTED_VALUE { _last = (CommonTree)input.LT(1); qv=(CommonTree)match(input,QUOTED_VALUE,FOLLOW_QUOTED_VALUE_in_set_statement_group194); qv_tree = (CommonTree)adaptor.dupNode(qv); adaptor.addChild(root_0, qv_tree); } break; case 2 : // BELScriptWalker.g:142:58: oi= OBJECT_IDENT { _last = (CommonTree)input.LT(1); oi=(CommonTree)match(input,OBJECT_IDENT,FOLLOW_OBJECT_IDENT_in_set_statement_group200); oi_tree = (CommonTree)adaptor.dupNode(oi); adaptor.addChild(root_0, oi_tree); } break; } final String name; if (qv != null) { name = qv.toString(); } else if (oi != null) { name = oi.toString(); } else { throw new IllegalStateException("Did not understand statement group value, expecting quoted value or object identifier."); } activeStatementGroup = new BELStatementGroup(name); statementGroups.add(activeStatementGroup); } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "set_statement_group" public static class set_annotation_return extends TreeRuleReturnScope { CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "set_annotation" // BELScriptWalker.g:157:1: set_annotation : 'SET' an= OBJECT_IDENT '=' (qv= QUOTED_VALUE | list= VALUE_LIST | oi= OBJECT_IDENT ) ; public final BELScriptWalker.set_annotation_return set_annotation() throws RecognitionException { BELScriptWalker.set_annotation_return retval = new BELScriptWalker.set_annotation_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree an=null; CommonTree qv=null; CommonTree list=null; CommonTree oi=null; CommonTree string_literal18=null; CommonTree char_literal19=null; CommonTree an_tree=null; CommonTree qv_tree=null; CommonTree list_tree=null; CommonTree oi_tree=null; CommonTree string_literal18_tree=null; CommonTree char_literal19_tree=null; try { // BELScriptWalker.g:157:15: ( 'SET' an= OBJECT_IDENT '=' (qv= QUOTED_VALUE | list= VALUE_LIST | oi= OBJECT_IDENT ) ) // BELScriptWalker.g:158:5: 'SET' an= OBJECT_IDENT '=' (qv= QUOTED_VALUE | list= VALUE_LIST | oi= OBJECT_IDENT ) { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); string_literal18=(CommonTree)match(input,24,FOLLOW_24_in_set_annotation219); string_literal18_tree = (CommonTree)adaptor.dupNode(string_literal18); adaptor.addChild(root_0, string_literal18_tree); _last = (CommonTree)input.LT(1); an=(CommonTree)match(input,OBJECT_IDENT,FOLLOW_OBJECT_IDENT_in_set_annotation223); an_tree = (CommonTree)adaptor.dupNode(an); adaptor.addChild(root_0, an_tree); _last = (CommonTree)input.LT(1); char_literal19=(CommonTree)match(input,25,FOLLOW_25_in_set_annotation225); char_literal19_tree = (CommonTree)adaptor.dupNode(char_literal19); adaptor.addChild(root_0, char_literal19_tree); // BELScriptWalker.g:158:31: (qv= QUOTED_VALUE | list= VALUE_LIST | oi= OBJECT_IDENT ) int alt5=3; switch ( input.LA(1) ) { case QUOTED_VALUE: { alt5=1; } break; case VALUE_LIST: { alt5=2; } break; case OBJECT_IDENT: { alt5=3; } break; default: NoViableAltException nvae = new NoViableAltException("", 5, 0, input); throw nvae; } switch (alt5) { case 1 : // BELScriptWalker.g:158:32: qv= QUOTED_VALUE { _last = (CommonTree)input.LT(1); qv=(CommonTree)match(input,QUOTED_VALUE,FOLLOW_QUOTED_VALUE_in_set_annotation230); qv_tree = (CommonTree)adaptor.dupNode(qv); adaptor.addChild(root_0, qv_tree); } break; case 2 : // BELScriptWalker.g:158:50: list= VALUE_LIST { _last = (CommonTree)input.LT(1); list=(CommonTree)match(input,VALUE_LIST,FOLLOW_VALUE_LIST_in_set_annotation236); list_tree = (CommonTree)adaptor.dupNode(list); adaptor.addChild(root_0, list_tree); } break; case 3 : // BELScriptWalker.g:158:68: oi= OBJECT_IDENT { _last = (CommonTree)input.LT(1); oi=(CommonTree)match(input,OBJECT_IDENT,FOLLOW_OBJECT_IDENT_in_set_annotation242); oi_tree = (CommonTree)adaptor.dupNode(oi); adaptor.addChild(root_0, oi_tree); } break; } final String name = an.getText(); BELAnnotationDefinition ad = definedAnnotations.get(name); if (ad != null) { // read annotation value final BELAnnotation annotation; if (qv != null) { annotation = new BELAnnotation(ad, qv.getText()); } else if (oi != null) { annotation = new BELAnnotation(ad, oi.getText()); } else { if (list == null) { throw new IllegalStateException("Did not understand annotation value, expecting annotation list form."); } String listvalues = list.getText(); listvalues = listvalues.substring(1, listvalues.length() - 1); annotation = new BELAnnotation(ad, Arrays.asList(ParserUtil.parseListRecord(listvalues))); } if (activeStatementGroup != null) { // add to local statement group scope sgAnnotationContext.put(name, annotation); } else { // add to main statement group scope annotationContext.put(name, annotation); } } else if (!name.equals("Citation") && !name.equals("Evidence")) { // throw if annotation is not defined and it's not the intrinsics: Citation or EvidenceLine addError(new DefineAnnotationBeforeUsageException(an.getLine(), an.getCharPositionInLine())); } if (name.equals("Citation")) { // redefinition of citation so clear out citation context citationContext = null; if (list == null) { addError(new InvalidCitationException(an.getLine(), an.getCharPositionInLine())); } else { String listvalues = list.getText(); String[] tokens = ParserUtil.parseListRecord(listvalues); String type = null; String cname = null; String reference = null; Date publicationDate = null; String[] authors = null; String comment = null; // (required) parse type if (tokens.length > 0 && tokens[0] != null) { type = tokens[0]; if (!("Book".equals(type) || "Journal".equals(type) || "Online Resource".equals(type) || "Other".equals(type) || "PubMed".equals(type))) { addError(new InvalidCitationException(an.getLine(), an.getCharPositionInLine())); } } else { addError(new InvalidCitationException(an.getLine(), an.getCharPositionInLine())); } // (required) parse name if (tokens.length > 1 && tokens[1] != null) { if ("".equals(tokens[1].trim())) { addError(new InvalidCitationException(an.getLine(), an.getCharPositionInLine())); } else { cname = tokens[1]; } } else { addError(new InvalidCitationException(an.getLine(), an.getCharPositionInLine())); } // (required) parse reference if (tokens.length > 2 && tokens[2] != null) { if ("".equals(tokens[2].trim())) { addError(new InvalidCitationException(an.getLine(), an.getCharPositionInLine())); } else { reference = tokens[2]; } } // (optional) parse date of publication if (tokens.length > 3 && tokens[3] != null) { if (!"".equals(tokens[3].trim())) { try { publicationDate = iso8601DateFormat.parse(tokens[3]); } catch (ParseException e) { addError(new InvalidCitationException(an.getLine(), an.getCharPositionInLine())); } if (publicationDate == null) { addError(new InvalidCitationException(an.getLine(), an.getCharPositionInLine())); } } } // (optional) parse authors if (tokens.length > 4 && tokens[4] != null) { authors = ParserUtil.parseValueSeparated(tokens[4]); } // (optional) parse comments if (tokens.length > 5 && tokens[5] != null) { comment = tokens[5]; } citationContext = new BELCitation(type, cname, publicationDate, reference, authors == null ? null : Arrays.asList(authors), comment); } } else if (name.equals("Evidence")) { // redefinition of evidence so clear out evidence context evidenceContext = null; if (qv == null || "".equals(qv.getText().trim())) { addError(new InvalidEvidenceException(an.getLine(), an.getCharPositionInLine())); } else { evidenceContext = new BELEvidence(qv.getText()); } } } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "set_annotation" public static class unset_statement_group_return extends TreeRuleReturnScope { CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "unset_statement_group" // BELScriptWalker.g:278:1: unset_statement_group : 'UNSET' STATEMENT_GROUP_KEYWORD ; public final BELScriptWalker.unset_statement_group_return unset_statement_group() throws RecognitionException { BELScriptWalker.unset_statement_group_return retval = new BELScriptWalker.unset_statement_group_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree string_literal20=null; CommonTree STATEMENT_GROUP_KEYWORD21=null; CommonTree string_literal20_tree=null; CommonTree STATEMENT_GROUP_KEYWORD21_tree=null; try { // BELScriptWalker.g:278:22: ( 'UNSET' STATEMENT_GROUP_KEYWORD ) // BELScriptWalker.g:279:5: 'UNSET' STATEMENT_GROUP_KEYWORD { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); string_literal20=(CommonTree)match(input,26,FOLLOW_26_in_unset_statement_group261); string_literal20_tree = (CommonTree)adaptor.dupNode(string_literal20); adaptor.addChild(root_0, string_literal20_tree); _last = (CommonTree)input.LT(1); STATEMENT_GROUP_KEYWORD21=(CommonTree)match(input,STATEMENT_GROUP_KEYWORD,FOLLOW_STATEMENT_GROUP_KEYWORD_in_unset_statement_group263); STATEMENT_GROUP_KEYWORD21_tree = (CommonTree)adaptor.dupNode(STATEMENT_GROUP_KEYWORD21); adaptor.addChild(root_0, STATEMENT_GROUP_KEYWORD21_tree); activeStatementGroup = null; sgAnnotationContext.clear(); } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "unset_statement_group" public static class unset_return extends TreeRuleReturnScope { CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "unset" // BELScriptWalker.g:285:1: unset : 'UNSET' (an= OBJECT_IDENT | list= IDENT_LIST ) ; public final BELScriptWalker.unset_return unset() throws RecognitionException { BELScriptWalker.unset_return retval = new BELScriptWalker.unset_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree an=null; CommonTree list=null; CommonTree string_literal22=null; CommonTree an_tree=null; CommonTree list_tree=null; CommonTree string_literal22_tree=null; try { // BELScriptWalker.g:285:6: ( 'UNSET' (an= OBJECT_IDENT | list= IDENT_LIST ) ) // BELScriptWalker.g:286:5: 'UNSET' (an= OBJECT_IDENT | list= IDENT_LIST ) { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); string_literal22=(CommonTree)match(input,26,FOLLOW_26_in_unset281); string_literal22_tree = (CommonTree)adaptor.dupNode(string_literal22); adaptor.addChild(root_0, string_literal22_tree); // BELScriptWalker.g:286:13: (an= OBJECT_IDENT | list= IDENT_LIST ) int alt6=2; int LA6_0 = input.LA(1); if ( (LA6_0==OBJECT_IDENT) ) { alt6=1; } else if ( (LA6_0==IDENT_LIST) ) { alt6=2; } else { NoViableAltException nvae = new NoViableAltException("", 6, 0, input); throw nvae; } switch (alt6) { case 1 : // BELScriptWalker.g:286:14: an= OBJECT_IDENT { _last = (CommonTree)input.LT(1); an=(CommonTree)match(input,OBJECT_IDENT,FOLLOW_OBJECT_IDENT_in_unset286); an_tree = (CommonTree)adaptor.dupNode(an); adaptor.addChild(root_0, an_tree); } break; case 2 : // BELScriptWalker.g:286:32: list= IDENT_LIST { _last = (CommonTree)input.LT(1); list=(CommonTree)match(input,IDENT_LIST,FOLLOW_IDENT_LIST_in_unset292); list_tree = (CommonTree)adaptor.dupNode(list); adaptor.addChild(root_0, list_tree); } break; } if (an != null) { String annotationName = an.getText(); if ("ALL".equals(annotationName)) { if (activeStatementGroup == null) annotationContext.clear(); else sgAnnotationContext.clear(); } else if (definedAnnotations.containsKey(annotationName)) { if (activeStatementGroup == null) annotationContext.remove(annotationName); else sgAnnotationContext.remove(annotationName); } else if (docprop.containsKey(BELDocumentProperty.getDocumentProperty(annotationName))) { addError(new UnsetDocumentPropertiesException(an.getLine(), an.getCharPositionInLine())); } else { addWarning(new UnsetUndefinedAnnotationException(an.getLine(), an.getCharPositionInLine())); } } } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "unset" public static class define_namespace_return extends TreeRuleReturnScope { CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "define_namespace" // BELScriptWalker.g:308:1: define_namespace : ( 'DEFINE' ( (isdefault= 'DEFAULT' )? 'NAMESPACE' ) ) name= OBJECT_IDENT 'AS' 'URL' rloc= QUOTED_VALUE ; public final BELScriptWalker.define_namespace_return define_namespace() throws RecognitionException { BELScriptWalker.define_namespace_return retval = new BELScriptWalker.define_namespace_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree isdefault=null; CommonTree name=null; CommonTree rloc=null; CommonTree string_literal23=null; CommonTree string_literal24=null; CommonTree string_literal25=null; CommonTree string_literal26=null; CommonTree isdefault_tree=null; CommonTree name_tree=null; CommonTree rloc_tree=null; CommonTree string_literal23_tree=null; CommonTree string_literal24_tree=null; CommonTree string_literal25_tree=null; CommonTree string_literal26_tree=null; try { // BELScriptWalker.g:308:17: ( ( 'DEFINE' ( (isdefault= 'DEFAULT' )? 'NAMESPACE' ) ) name= OBJECT_IDENT 'AS' 'URL' rloc= QUOTED_VALUE ) // BELScriptWalker.g:309:5: ( 'DEFINE' ( (isdefault= 'DEFAULT' )? 'NAMESPACE' ) ) name= OBJECT_IDENT 'AS' 'URL' rloc= QUOTED_VALUE { root_0 = (CommonTree)adaptor.nil(); // BELScriptWalker.g:309:5: ( 'DEFINE' ( (isdefault= 'DEFAULT' )? 'NAMESPACE' ) ) // BELScriptWalker.g:309:6: 'DEFINE' ( (isdefault= 'DEFAULT' )? 'NAMESPACE' ) { _last = (CommonTree)input.LT(1); string_literal23=(CommonTree)match(input,27,FOLLOW_27_in_define_namespace312); string_literal23_tree = (CommonTree)adaptor.dupNode(string_literal23); adaptor.addChild(root_0, string_literal23_tree); // BELScriptWalker.g:309:15: ( (isdefault= 'DEFAULT' )? 'NAMESPACE' ) // BELScriptWalker.g:309:16: (isdefault= 'DEFAULT' )? 'NAMESPACE' { // BELScriptWalker.g:309:16: (isdefault= 'DEFAULT' )? int alt7=2; int LA7_0 = input.LA(1); if ( (LA7_0==28) ) { alt7=1; } switch (alt7) { case 1 : // BELScriptWalker.g:309:17: isdefault= 'DEFAULT' { _last = (CommonTree)input.LT(1); isdefault=(CommonTree)match(input,28,FOLLOW_28_in_define_namespace318); isdefault_tree = (CommonTree)adaptor.dupNode(isdefault); adaptor.addChild(root_0, isdefault_tree); } break; } _last = (CommonTree)input.LT(1); string_literal24=(CommonTree)match(input,29,FOLLOW_29_in_define_namespace322); string_literal24_tree = (CommonTree)adaptor.dupNode(string_literal24); adaptor.addChild(root_0, string_literal24_tree); } } _last = (CommonTree)input.LT(1); name=(CommonTree)match(input,OBJECT_IDENT,FOLLOW_OBJECT_IDENT_in_define_namespace328); name_tree = (CommonTree)adaptor.dupNode(name); adaptor.addChild(root_0, name_tree); _last = (CommonTree)input.LT(1); string_literal25=(CommonTree)match(input,30,FOLLOW_30_in_define_namespace330); string_literal25_tree = (CommonTree)adaptor.dupNode(string_literal25); adaptor.addChild(root_0, string_literal25_tree); _last = (CommonTree)input.LT(1); string_literal26=(CommonTree)match(input,31,FOLLOW_31_in_define_namespace332); string_literal26_tree = (CommonTree)adaptor.dupNode(string_literal26); adaptor.addChild(root_0, string_literal26_tree); _last = (CommonTree)input.LT(1); rloc=(CommonTree)match(input,QUOTED_VALUE,FOLLOW_QUOTED_VALUE_in_define_namespace336); rloc_tree = (CommonTree)adaptor.dupNode(rloc); adaptor.addChild(root_0, rloc_tree); final String nametext = name.getText(); final String rloctext = rloc.getText(); BELNamespaceDefinition belnsd; if (isdefault != null) { belnsd = new BELNamespaceDefinition(nametext, rloctext, true); } else { belnsd = new BELNamespaceDefinition(nametext, rloctext, false); } nslist.add(belnsd); definedNamespaces.put(nametext, belnsd); } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "define_namespace" public static class define_annotation_return extends TreeRuleReturnScope { CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "define_annotation" // BELScriptWalker.g:325:1: define_annotation : ( 'DEFINE' 'ANNOTATION' ) name= OBJECT_IDENT 'AS' ( ( (type= 'URL' | type= 'PATTERN' ) value= QUOTED_VALUE ) | (type= 'LIST' value= VALUE_LIST ) ) ; public final BELScriptWalker.define_annotation_return define_annotation() throws RecognitionException { BELScriptWalker.define_annotation_return retval = new BELScriptWalker.define_annotation_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree name=null; CommonTree type=null; CommonTree value=null; CommonTree string_literal27=null; CommonTree string_literal28=null; CommonTree string_literal29=null; CommonTree name_tree=null; CommonTree type_tree=null; CommonTree value_tree=null; CommonTree string_literal27_tree=null; CommonTree string_literal28_tree=null; CommonTree string_literal29_tree=null; try { // BELScriptWalker.g:325:18: ( ( 'DEFINE' 'ANNOTATION' ) name= OBJECT_IDENT 'AS' ( ( (type= 'URL' | type= 'PATTERN' ) value= QUOTED_VALUE ) | (type= 'LIST' value= VALUE_LIST ) ) ) // BELScriptWalker.g:326:5: ( 'DEFINE' 'ANNOTATION' ) name= OBJECT_IDENT 'AS' ( ( (type= 'URL' | type= 'PATTERN' ) value= QUOTED_VALUE ) | (type= 'LIST' value= VALUE_LIST ) ) { root_0 = (CommonTree)adaptor.nil(); // BELScriptWalker.g:326:5: ( 'DEFINE' 'ANNOTATION' ) // BELScriptWalker.g:326:6: 'DEFINE' 'ANNOTATION' { _last = (CommonTree)input.LT(1); string_literal27=(CommonTree)match(input,27,FOLLOW_27_in_define_annotation355); string_literal27_tree = (CommonTree)adaptor.dupNode(string_literal27); adaptor.addChild(root_0, string_literal27_tree); _last = (CommonTree)input.LT(1); string_literal28=(CommonTree)match(input,32,FOLLOW_32_in_define_annotation357); string_literal28_tree = (CommonTree)adaptor.dupNode(string_literal28); adaptor.addChild(root_0, string_literal28_tree); } _last = (CommonTree)input.LT(1); name=(CommonTree)match(input,OBJECT_IDENT,FOLLOW_OBJECT_IDENT_in_define_annotation362); name_tree = (CommonTree)adaptor.dupNode(name); adaptor.addChild(root_0, name_tree); _last = (CommonTree)input.LT(1); string_literal29=(CommonTree)match(input,30,FOLLOW_30_in_define_annotation364); string_literal29_tree = (CommonTree)adaptor.dupNode(string_literal29); adaptor.addChild(root_0, string_literal29_tree); // BELScriptWalker.g:326:52: ( ( (type= 'URL' | type= 'PATTERN' ) value= QUOTED_VALUE ) | (type= 'LIST' value= VALUE_LIST ) ) int alt9=2; int LA9_0 = input.LA(1); if ( (LA9_0==31||LA9_0==33) ) { alt9=1; } else if ( (LA9_0==34) ) { alt9=2; } else { NoViableAltException nvae = new NoViableAltException("", 9, 0, input); throw nvae; } switch (alt9) { case 1 : // BELScriptWalker.g:326:53: ( (type= 'URL' | type= 'PATTERN' ) value= QUOTED_VALUE ) { // BELScriptWalker.g:326:53: ( (type= 'URL' | type= 'PATTERN' ) value= QUOTED_VALUE ) // BELScriptWalker.g:326:54: (type= 'URL' | type= 'PATTERN' ) value= QUOTED_VALUE { // BELScriptWalker.g:326:54: (type= 'URL' | type= 'PATTERN' ) int alt8=2; int LA8_0 = input.LA(1); if ( (LA8_0==31) ) { alt8=1; } else if ( (LA8_0==33) ) { alt8=2; } else { NoViableAltException nvae = new NoViableAltException("", 8, 0, input); throw nvae; } switch (alt8) { case 1 : // BELScriptWalker.g:326:55: type= 'URL' { _last = (CommonTree)input.LT(1); type=(CommonTree)match(input,31,FOLLOW_31_in_define_annotation371); type_tree = (CommonTree)adaptor.dupNode(type); adaptor.addChild(root_0, type_tree); } break; case 2 : // BELScriptWalker.g:326:68: type= 'PATTERN' { _last = (CommonTree)input.LT(1); type=(CommonTree)match(input,33,FOLLOW_33_in_define_annotation377); type_tree = (CommonTree)adaptor.dupNode(type); adaptor.addChild(root_0, type_tree); } break; } _last = (CommonTree)input.LT(1); value=(CommonTree)match(input,QUOTED_VALUE,FOLLOW_QUOTED_VALUE_in_define_annotation382); value_tree = (CommonTree)adaptor.dupNode(value); adaptor.addChild(root_0, value_tree); } } break; case 2 : // BELScriptWalker.g:326:106: (type= 'LIST' value= VALUE_LIST ) { // BELScriptWalker.g:326:106: (type= 'LIST' value= VALUE_LIST ) // BELScriptWalker.g:326:107: type= 'LIST' value= VALUE_LIST { _last = (CommonTree)input.LT(1); type=(CommonTree)match(input,34,FOLLOW_34_in_define_annotation390); type_tree = (CommonTree)adaptor.dupNode(type); adaptor.addChild(root_0, type_tree); _last = (CommonTree)input.LT(1); value=(CommonTree)match(input,VALUE_LIST,FOLLOW_VALUE_LIST_in_define_annotation394); value_tree = (CommonTree)adaptor.dupNode(value); adaptor.addChild(root_0, value_tree); } } break; } final String nametext = name.getText(); if (type != null && value != null) { final String typetext = type.toString(); String valuetext = value.toString(); BELAnnotationType atype; BELAnnotationDefinition ad; if ("URL".equals(typetext)) { atype = BELAnnotationType.URL; ad = new BELAnnotationDefinition(nametext, atype, valuetext); } else if ("PATTERN".equals(typetext)) { atype = BELAnnotationType.PATTERN; ad = new BELAnnotationDefinition(nametext, atype, valuetext); } else { atype = BELAnnotationType.LIST; valuetext = valuetext.substring(1, valuetext.length() - 1); ad = new BELAnnotationDefinition(nametext, atype, Arrays.asList(ParserUtil.parseListRecord(valuetext))); } adlist.add(ad); definedAnnotations.put(nametext, ad); } } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "define_annotation" public static class document_property_return extends TreeRuleReturnScope { public BELDocumentProperty r; CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "document_property" // BELScriptWalker.g:353:1: document_property returns [BELDocumentProperty r] : (pv= 'Authors' | pv= 'ContactInfo' | pv= 'Copyright' | pv= 'Description' | pv= 'Disclaimer' | pv= 'Licenses' | pv= 'Name' | pv= 'Version' ); public final BELScriptWalker.document_property_return document_property() throws RecognitionException { BELScriptWalker.document_property_return retval = new BELScriptWalker.document_property_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree pv=null; CommonTree pv_tree=null; try { // BELScriptWalker.g:353:50: (pv= 'Authors' | pv= 'ContactInfo' | pv= 'Copyright' | pv= 'Description' | pv= 'Disclaimer' | pv= 'Licenses' | pv= 'Name' | pv= 'Version' ) int alt10=8; switch ( input.LA(1) ) { case 35: { alt10=1; } break; case 36: { alt10=2; } break; case 37: { alt10=3; } break; case 38: { alt10=4; } break; case 39: { alt10=5; } break; case 40: { alt10=6; } break; case 41: { alt10=7; } break; case 42: { alt10=8; } break; default: NoViableAltException nvae = new NoViableAltException("", 10, 0, input); throw nvae; } switch (alt10) { case 1 : // BELScriptWalker.g:354:5: pv= 'Authors' { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pv=(CommonTree)match(input,35,FOLLOW_35_in_document_property420); pv_tree = (CommonTree)adaptor.dupNode(pv); adaptor.addChild(root_0, pv_tree); retval.r = BELDocumentProperty.getDocumentProperty(pv.getText()); } break; case 2 : // BELScriptWalker.g:355:5: pv= 'ContactInfo' { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pv=(CommonTree)match(input,36,FOLLOW_36_in_document_property436); pv_tree = (CommonTree)adaptor.dupNode(pv); adaptor.addChild(root_0, pv_tree); retval.r = BELDocumentProperty.getDocumentProperty(pv.getText()); } break; case 3 : // BELScriptWalker.g:356:5: pv= 'Copyright' { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pv=(CommonTree)match(input,37,FOLLOW_37_in_document_property448); pv_tree = (CommonTree)adaptor.dupNode(pv); adaptor.addChild(root_0, pv_tree); retval.r = BELDocumentProperty.getDocumentProperty(pv.getText()); } break; case 4 : // BELScriptWalker.g:357:5: pv= 'Description' { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pv=(CommonTree)match(input,38,FOLLOW_38_in_document_property462); pv_tree = (CommonTree)adaptor.dupNode(pv); adaptor.addChild(root_0, pv_tree); retval.r = BELDocumentProperty.getDocumentProperty(pv.getText()); } break; case 5 : // BELScriptWalker.g:358:5: pv= 'Disclaimer' { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pv=(CommonTree)match(input,39,FOLLOW_39_in_document_property474); pv_tree = (CommonTree)adaptor.dupNode(pv); adaptor.addChild(root_0, pv_tree); retval.r = BELDocumentProperty.getDocumentProperty(pv.getText()); } break; case 6 : // BELScriptWalker.g:359:5: pv= 'Licenses' { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pv=(CommonTree)match(input,40,FOLLOW_40_in_document_property487); pv_tree = (CommonTree)adaptor.dupNode(pv); adaptor.addChild(root_0, pv_tree); retval.r = BELDocumentProperty.getDocumentProperty(pv.getText()); } break; case 7 : // BELScriptWalker.g:360:5: pv= 'Name' { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pv=(CommonTree)match(input,41,FOLLOW_41_in_document_property502); pv_tree = (CommonTree)adaptor.dupNode(pv); adaptor.addChild(root_0, pv_tree); retval.r = BELDocumentProperty.getDocumentProperty(pv.getText()); } break; case 8 : // BELScriptWalker.g:361:5: pv= 'Version' { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pv=(CommonTree)match(input,42,FOLLOW_42_in_document_property521); pv_tree = (CommonTree)adaptor.dupNode(pv); adaptor.addChild(root_0, pv_tree); retval.r = BELDocumentProperty.getDocumentProperty(pv.getText()); } break; } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "document_property" public static class statement_return extends TreeRuleReturnScope { CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "statement" // BELScriptWalker.g:364:1: statement : st= outer_term (rel= relationship ( ( OPEN_PAREN nst= outer_term nrel= relationship not= outer_term CLOSE_PAREN ) | ot= outer_term ) )? (comment= STATEMENT_COMMENT )? ; public final BELScriptWalker.statement_return statement() throws RecognitionException { BELScriptWalker.statement_return retval = new BELScriptWalker.statement_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree comment=null; CommonTree OPEN_PAREN30=null; CommonTree CLOSE_PAREN31=null; BELScriptWalker.outer_term_return st = null; BELScriptWalker.relationship_return rel = null; BELScriptWalker.outer_term_return nst = null; BELScriptWalker.relationship_return nrel = null; BELScriptWalker.outer_term_return not = null; BELScriptWalker.outer_term_return ot = null; CommonTree comment_tree=null; CommonTree OPEN_PAREN30_tree=null; CommonTree CLOSE_PAREN31_tree=null; try { // BELScriptWalker.g:364:10: (st= outer_term (rel= relationship ( ( OPEN_PAREN nst= outer_term nrel= relationship not= outer_term CLOSE_PAREN ) | ot= outer_term ) )? (comment= STATEMENT_COMMENT )? ) // BELScriptWalker.g:365:5: st= outer_term (rel= relationship ( ( OPEN_PAREN nst= outer_term nrel= relationship not= outer_term CLOSE_PAREN ) | ot= outer_term ) )? (comment= STATEMENT_COMMENT )? { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_outer_term_in_statement545); st=outer_term(); state._fsp--; adaptor.addChild(root_0, st.getTree()); // BELScriptWalker.g:365:19: (rel= relationship ( ( OPEN_PAREN nst= outer_term nrel= relationship not= outer_term CLOSE_PAREN ) | ot= outer_term ) )? int alt12=2; int LA12_0 = input.LA(1); if ( ((LA12_0>=103 && LA12_0<=130)) ) { alt12=1; } switch (alt12) { case 1 : // BELScriptWalker.g:365:20: rel= relationship ( ( OPEN_PAREN nst= outer_term nrel= relationship not= outer_term CLOSE_PAREN ) | ot= outer_term ) { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_relationship_in_statement550); rel=relationship(); state._fsp--; adaptor.addChild(root_0, rel.getTree()); // BELScriptWalker.g:365:37: ( ( OPEN_PAREN nst= outer_term nrel= relationship not= outer_term CLOSE_PAREN ) | ot= outer_term ) int alt11=2; int LA11_0 = input.LA(1); if ( (LA11_0==OPEN_PAREN) ) { alt11=1; } else if ( ((LA11_0>=44 && LA11_0<=102)) ) { alt11=2; } else { NoViableAltException nvae = new NoViableAltException("", 11, 0, input); throw nvae; } switch (alt11) { case 1 : // BELScriptWalker.g:365:38: ( OPEN_PAREN nst= outer_term nrel= relationship not= outer_term CLOSE_PAREN ) { // BELScriptWalker.g:365:38: ( OPEN_PAREN nst= outer_term nrel= relationship not= outer_term CLOSE_PAREN ) // BELScriptWalker.g:365:39: OPEN_PAREN nst= outer_term nrel= relationship not= outer_term CLOSE_PAREN { _last = (CommonTree)input.LT(1); OPEN_PAREN30=(CommonTree)match(input,OPEN_PAREN,FOLLOW_OPEN_PAREN_in_statement554); OPEN_PAREN30_tree = (CommonTree)adaptor.dupNode(OPEN_PAREN30); adaptor.addChild(root_0, OPEN_PAREN30_tree); _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_outer_term_in_statement558); nst=outer_term(); state._fsp--; adaptor.addChild(root_0, nst.getTree()); _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_relationship_in_statement562); nrel=relationship(); state._fsp--; adaptor.addChild(root_0, nrel.getTree()); _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_outer_term_in_statement566); not=outer_term(); state._fsp--; adaptor.addChild(root_0, not.getTree()); _last = (CommonTree)input.LT(1); CLOSE_PAREN31=(CommonTree)match(input,CLOSE_PAREN,FOLLOW_CLOSE_PAREN_in_statement568); CLOSE_PAREN31_tree = (CommonTree)adaptor.dupNode(CLOSE_PAREN31); adaptor.addChild(root_0, CLOSE_PAREN31_tree); } } break; case 2 : // BELScriptWalker.g:365:113: ot= outer_term { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_outer_term_in_statement575); ot=outer_term(); state._fsp--; adaptor.addChild(root_0, ot.getTree()); } break; } } break; } // BELScriptWalker.g:365:137: (comment= STATEMENT_COMMENT )? int alt13=2; int LA13_0 = input.LA(1); if ( (LA13_0==STATEMENT_COMMENT) ) { alt13=1; } switch (alt13) { case 1 : // BELScriptWalker.g:365:137: comment= STATEMENT_COMMENT { _last = (CommonTree)input.LT(1); comment=(CommonTree)match(input,STATEMENT_COMMENT,FOLLOW_STATEMENT_COMMENT_in_statement582); comment_tree = (CommonTree)adaptor.dupNode(comment); adaptor.addChild(root_0, comment_tree); } break; } final StringBuilder stmtBuilder = new StringBuilder(); stmtBuilder.append(st.r); if (rel != null) { stmtBuilder.append(" ").append(rel.r); if (ot != null) { stmtBuilder.append(" ").append(ot.r); } else { stmtBuilder.append("("); if (nst != null && nrel != null && not != null) { stmtBuilder.append(nst.r).append(" ").append(nrel.r).append(" ").append(not.r); } stmtBuilder.append(")"); } } String commentText = null; if (comment != null) { commentText = comment.getText(); } // build effective annotations from main statement group context and then local statement group context, if any final Map<String, BELAnnotation> effectiveAnnotations = new LinkedHashMap<String, BELAnnotation>(annotationContext); if (activeStatementGroup != null) { effectiveAnnotations.putAll(sgAnnotationContext); } final List<BELAnnotation> annotations = new ArrayList<BELAnnotation>(effectiveAnnotations.values()); // build statement and keep track of it for validation purposes final BELStatement stmt = new BELStatement(stmtBuilder.toString(), annotations, citationContext, evidenceContext, commentText); stmtlist.add(stmt); // add statement to scoped statement group if (activeStatementGroup != null) { activeStatementGroup.getStatements().add(stmt); } else { documentStatementGroup.getStatements().add(stmt); } } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "statement" public static class outer_term_return extends TreeRuleReturnScope { public String r; CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "outer_term" // BELScriptWalker.g:410:1: outer_term returns [String r] : f= function op= OPEN_PAREN ( (c= ',' )? a= argument )* cp= CLOSE_PAREN ; public final BELScriptWalker.outer_term_return outer_term() throws RecognitionException { BELScriptWalker.outer_term_return retval = new BELScriptWalker.outer_term_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree op=null; CommonTree c=null; CommonTree cp=null; BELScriptWalker.function_return f = null; BELScriptWalker.argument_return a = null; CommonTree op_tree=null; CommonTree c_tree=null; CommonTree cp_tree=null; final StringBuilder tBuilder = new StringBuilder(); try { // BELScriptWalker.g:414:1: (f= function op= OPEN_PAREN ( (c= ',' )? a= argument )* cp= CLOSE_PAREN ) // BELScriptWalker.g:415:5: f= function op= OPEN_PAREN ( (c= ',' )? a= argument )* cp= CLOSE_PAREN { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_function_in_outer_term613); f=function(); state._fsp--; adaptor.addChild(root_0, f.getTree()); tBuilder.append(f.r); _last = (CommonTree)input.LT(1); op=(CommonTree)match(input,OPEN_PAREN,FOLLOW_OPEN_PAREN_in_outer_term619); op_tree = (CommonTree)adaptor.dupNode(op); adaptor.addChild(root_0, op_tree); tBuilder.append(op.getText()); // BELScriptWalker.g:419:7: ( (c= ',' )? a= argument )* loop15: do { int alt15=2; int LA15_0 = input.LA(1); if ( (LA15_0==OBJECT_IDENT||LA15_0==QUOTED_VALUE||LA15_0==NS_PREFIX||(LA15_0>=43 && LA15_0<=102)) ) { alt15=1; } switch (alt15) { case 1 : // BELScriptWalker.g:419:8: (c= ',' )? a= argument { // BELScriptWalker.g:419:9: (c= ',' )? int alt14=2; int LA14_0 = input.LA(1); if ( (LA14_0==43) ) { alt14=1; } switch (alt14) { case 1 : // BELScriptWalker.g:419:9: c= ',' { _last = (CommonTree)input.LT(1); c=(CommonTree)match(input,43,FOLLOW_43_in_outer_term626); c_tree = (CommonTree)adaptor.dupNode(c); adaptor.addChild(root_0, c_tree); } break; } if (c != null) { tBuilder.append(c.getText()); } _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_argument_in_outer_term633); a=argument(); state._fsp--; adaptor.addChild(root_0, a.getTree()); tBuilder.append(a.r); } break; default : break loop15; } } while (true); _last = (CommonTree)input.LT(1); cp=(CommonTree)match(input,CLOSE_PAREN,FOLLOW_CLOSE_PAREN_in_outer_term641); cp_tree = (CommonTree)adaptor.dupNode(cp); adaptor.addChild(root_0, cp_tree); tBuilder.append(cp.getText()); retval.r = tBuilder.toString(); } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "outer_term" public static class argument_return extends TreeRuleReturnScope { public String r; CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "argument" // BELScriptWalker.g:431:1: argument returns [String r] : (p= param | t= term ); public final BELScriptWalker.argument_return argument() throws RecognitionException { BELScriptWalker.argument_return retval = new BELScriptWalker.argument_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; BELScriptWalker.param_return p = null; BELScriptWalker.term_return t = null; try { // BELScriptWalker.g:431:28: (p= param | t= term ) int alt16=2; int LA16_0 = input.LA(1); if ( (LA16_0==OBJECT_IDENT||LA16_0==QUOTED_VALUE||LA16_0==NS_PREFIX) ) { alt16=1; } else if ( ((LA16_0>=44 && LA16_0<=102)) ) { alt16=2; } else { NoViableAltException nvae = new NoViableAltException("", 16, 0, input); throw nvae; } switch (alt16) { case 1 : // BELScriptWalker.g:432:5: p= param { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_param_in_argument665); p=param(); state._fsp--; adaptor.addChild(root_0, p.getTree()); retval.r = p.r; } break; case 2 : // BELScriptWalker.g:435:5: t= term { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_term_in_argument677); t=term(); state._fsp--; adaptor.addChild(root_0, t.getTree()); retval.r = t.r; } break; } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "argument" public static class term_return extends TreeRuleReturnScope { public String r; CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "term" // BELScriptWalker.g:440:1: term returns [String r] : f= function op= OPEN_PAREN ( (c= ',' )? (t= term | p= param ) )* cp= CLOSE_PAREN ; public final BELScriptWalker.term_return term() throws RecognitionException { BELScriptWalker.term_return retval = new BELScriptWalker.term_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree op=null; CommonTree c=null; CommonTree cp=null; BELScriptWalker.function_return f = null; BELScriptWalker.term_return t = null; BELScriptWalker.param_return p = null; CommonTree op_tree=null; CommonTree c_tree=null; CommonTree cp_tree=null; final StringBuilder termBuilder = new StringBuilder(); try { // BELScriptWalker.g:444:1: (f= function op= OPEN_PAREN ( (c= ',' )? (t= term | p= param ) )* cp= CLOSE_PAREN ) // BELScriptWalker.g:445:5: f= function op= OPEN_PAREN ( (c= ',' )? (t= term | p= param ) )* cp= CLOSE_PAREN { root_0 = (CommonTree)adaptor.nil(); _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_function_in_term707); f=function(); state._fsp--; adaptor.addChild(root_0, f.getTree()); termBuilder.append(f.r); _last = (CommonTree)input.LT(1); op=(CommonTree)match(input,OPEN_PAREN,FOLLOW_OPEN_PAREN_in_term713); op_tree = (CommonTree)adaptor.dupNode(op); adaptor.addChild(root_0, op_tree); termBuilder.append(op.getText()); // BELScriptWalker.g:449:6: ( (c= ',' )? (t= term | p= param ) )* loop19: do { int alt19=2; int LA19_0 = input.LA(1); if ( (LA19_0==OBJECT_IDENT||LA19_0==QUOTED_VALUE||LA19_0==NS_PREFIX||(LA19_0>=43 && LA19_0<=102)) ) { alt19=1; } switch (alt19) { case 1 : // BELScriptWalker.g:449:7: (c= ',' )? (t= term | p= param ) { // BELScriptWalker.g:449:8: (c= ',' )? int alt17=2; int LA17_0 = input.LA(1); if ( (LA17_0==43) ) { alt17=1; } switch (alt17) { case 1 : // BELScriptWalker.g:449:8: c= ',' { _last = (CommonTree)input.LT(1); c=(CommonTree)match(input,43,FOLLOW_43_in_term719); c_tree = (CommonTree)adaptor.dupNode(c); adaptor.addChild(root_0, c_tree); } break; } if (c != null) { termBuilder.append(c.getText()); } // BELScriptWalker.g:453:7: (t= term | p= param ) int alt18=2; int LA18_0 = input.LA(1); if ( ((LA18_0>=44 && LA18_0<=102)) ) { alt18=1; } else if ( (LA18_0==OBJECT_IDENT||LA18_0==QUOTED_VALUE||LA18_0==NS_PREFIX) ) { alt18=2; } else { NoViableAltException nvae = new NoViableAltException("", 18, 0, input); throw nvae; } switch (alt18) { case 1 : // BELScriptWalker.g:453:8: t= term { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_term_in_term727); t=term(); state._fsp--; adaptor.addChild(root_0, t.getTree()); termBuilder.append(t.r); } break; case 2 : // BELScriptWalker.g:455:9: p= param { _last = (CommonTree)input.LT(1); pushFollow(FOLLOW_param_in_term735); p=param(); state._fsp--; adaptor.addChild(root_0, p.getTree()); termBuilder.append(p.r); } break; } } break; default : break loop19; } } while (true); _last = (CommonTree)input.LT(1); cp=(CommonTree)match(input,CLOSE_PAREN,FOLLOW_CLOSE_PAREN_in_term744); cp_tree = (CommonTree)adaptor.dupNode(cp); adaptor.addChild(root_0, cp_tree); termBuilder.append(cp.getText()); retval.r = termBuilder.toString(); } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "term" public static class param_return extends TreeRuleReturnScope { public String r; CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "param" // BELScriptWalker.g:464:10: fragment param returns [String r] : (nsp= NS_PREFIX )? (id= OBJECT_IDENT | quo= QUOTED_VALUE ) ; public final BELScriptWalker.param_return param() throws RecognitionException { BELScriptWalker.param_return retval = new BELScriptWalker.param_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree nsp=null; CommonTree id=null; CommonTree quo=null; CommonTree nsp_tree=null; CommonTree id_tree=null; CommonTree quo_tree=null; try { // BELScriptWalker.g:464:34: ( (nsp= NS_PREFIX )? (id= OBJECT_IDENT | quo= QUOTED_VALUE ) ) // BELScriptWalker.g:465:5: (nsp= NS_PREFIX )? (id= OBJECT_IDENT | quo= QUOTED_VALUE ) { root_0 = (CommonTree)adaptor.nil(); // BELScriptWalker.g:465:8: (nsp= NS_PREFIX )? int alt20=2; int LA20_0 = input.LA(1); if ( (LA20_0==NS_PREFIX) ) { alt20=1; } switch (alt20) { case 1 : // BELScriptWalker.g:465:8: nsp= NS_PREFIX { _last = (CommonTree)input.LT(1); nsp=(CommonTree)match(input,NS_PREFIX,FOLLOW_NS_PREFIX_in_param772); nsp_tree = (CommonTree)adaptor.dupNode(nsp); adaptor.addChild(root_0, nsp_tree); } break; } // BELScriptWalker.g:465:20: (id= OBJECT_IDENT | quo= QUOTED_VALUE ) int alt21=2; int LA21_0 = input.LA(1); if ( (LA21_0==OBJECT_IDENT) ) { alt21=1; } else if ( (LA21_0==QUOTED_VALUE) ) { alt21=2; } else { NoViableAltException nvae = new NoViableAltException("", 21, 0, input); throw nvae; } switch (alt21) { case 1 : // BELScriptWalker.g:465:21: id= OBJECT_IDENT { _last = (CommonTree)input.LT(1); id=(CommonTree)match(input,OBJECT_IDENT,FOLLOW_OBJECT_IDENT_in_param778); id_tree = (CommonTree)adaptor.dupNode(id); adaptor.addChild(root_0, id_tree); } break; case 2 : // BELScriptWalker.g:465:39: quo= QUOTED_VALUE { _last = (CommonTree)input.LT(1); quo=(CommonTree)match(input,QUOTED_VALUE,FOLLOW_QUOTED_VALUE_in_param784); quo_tree = (CommonTree)adaptor.dupNode(quo); adaptor.addChild(root_0, quo_tree); } break; } final StringBuilder pBuilder = new StringBuilder(); if (nsp != null) { String prefix = nsp.getText(); if (!definedNamespaces.containsKey(prefix.substring(0, prefix.length() - 1))) { addError(new NamespaceUndefinedException(nsp.getLine(), nsp.getCharPositionInLine())); } pBuilder.append(prefix); } if (id != null) { pBuilder.append(id.getText()); } if (quo != null) { pBuilder.append(quo.getText()); } retval.r = pBuilder.toString(); } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "param" public static class function_return extends TreeRuleReturnScope { public String r; CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "function" // BELScriptWalker.g:489:1: function returns [String r] : (fv= 'proteinAbundance' | fv= 'p' | fv= 'rnaAbundance' | fv= 'r' | fv= 'abundance' | fv= 'a' | fv= 'microRNAAbundance' | fv= 'm' | fv= 'geneAbundance' | fv= 'g' | fv= 'biologicalProcess' | fv= 'bp' | fv= 'pathology' | fv= 'path' | fv= 'complexAbundance' | fv= 'complex' | fv= 'translocation' | fv= 'tloc' | fv= 'cellSecretion' | fv= 'sec' | fv= 'cellSurfaceExpression' | fv= 'surf' | fv= 'reaction' | fv= 'rxn' | fv= 'compositeAbundance' | fv= 'composite' | fv= 'fusion' | fv= 'fus' | fv= 'degradation' | fv= 'deg' | fv= 'molecularActivity' | fv= 'act' | fv= 'catalyticActivity' | fv= 'cat' | fv= 'kinaseActivity' | fv= 'kin' | fv= 'phosphataseActivity' | fv= 'phos' | fv= 'peptidaseActivity' | fv= 'pep' | fv= 'ribosylationActivity' | fv= 'ribo' | fv= 'transcriptionalActivity' | fv= 'tscript' | fv= 'transportActivity' | fv= 'tport' | fv= 'gtpBoundActivity' | fv= 'gtp' | fv= 'chaperoneActivity' | fv= 'chap' | fv= 'proteinModification' | fv= 'pmod' | fv= 'substitution' | fv= 'sub' | fv= 'truncation' | fv= 'trunc' | fv= 'reactants' | fv= 'products' | fv= 'list' ) ; public final BELScriptWalker.function_return function() throws RecognitionException { BELScriptWalker.function_return retval = new BELScriptWalker.function_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree fv=null; CommonTree fv_tree=null; try { // BELScriptWalker.g:489:28: ( (fv= 'proteinAbundance' | fv= 'p' | fv= 'rnaAbundance' | fv= 'r' | fv= 'abundance' | fv= 'a' | fv= 'microRNAAbundance' | fv= 'm' | fv= 'geneAbundance' | fv= 'g' | fv= 'biologicalProcess' | fv= 'bp' | fv= 'pathology' | fv= 'path' | fv= 'complexAbundance' | fv= 'complex' | fv= 'translocation' | fv= 'tloc' | fv= 'cellSecretion' | fv= 'sec' | fv= 'cellSurfaceExpression' | fv= 'surf' | fv= 'reaction' | fv= 'rxn' | fv= 'compositeAbundance' | fv= 'composite' | fv= 'fusion' | fv= 'fus' | fv= 'degradation' | fv= 'deg' | fv= 'molecularActivity' | fv= 'act' | fv= 'catalyticActivity' | fv= 'cat' | fv= 'kinaseActivity' | fv= 'kin' | fv= 'phosphataseActivity' | fv= 'phos' | fv= 'peptidaseActivity' | fv= 'pep' | fv= 'ribosylationActivity' | fv= 'ribo' | fv= 'transcriptionalActivity' | fv= 'tscript' | fv= 'transportActivity' | fv= 'tport' | fv= 'gtpBoundActivity' | fv= 'gtp' | fv= 'chaperoneActivity' | fv= 'chap' | fv= 'proteinModification' | fv= 'pmod' | fv= 'substitution' | fv= 'sub' | fv= 'truncation' | fv= 'trunc' | fv= 'reactants' | fv= 'products' | fv= 'list' ) ) // BELScriptWalker.g:490:5: (fv= 'proteinAbundance' | fv= 'p' | fv= 'rnaAbundance' | fv= 'r' | fv= 'abundance' | fv= 'a' | fv= 'microRNAAbundance' | fv= 'm' | fv= 'geneAbundance' | fv= 'g' | fv= 'biologicalProcess' | fv= 'bp' | fv= 'pathology' | fv= 'path' | fv= 'complexAbundance' | fv= 'complex' | fv= 'translocation' | fv= 'tloc' | fv= 'cellSecretion' | fv= 'sec' | fv= 'cellSurfaceExpression' | fv= 'surf' | fv= 'reaction' | fv= 'rxn' | fv= 'compositeAbundance' | fv= 'composite' | fv= 'fusion' | fv= 'fus' | fv= 'degradation' | fv= 'deg' | fv= 'molecularActivity' | fv= 'act' | fv= 'catalyticActivity' | fv= 'cat' | fv= 'kinaseActivity' | fv= 'kin' | fv= 'phosphataseActivity' | fv= 'phos' | fv= 'peptidaseActivity' | fv= 'pep' | fv= 'ribosylationActivity' | fv= 'ribo' | fv= 'transcriptionalActivity' | fv= 'tscript' | fv= 'transportActivity' | fv= 'tport' | fv= 'gtpBoundActivity' | fv= 'gtp' | fv= 'chaperoneActivity' | fv= 'chap' | fv= 'proteinModification' | fv= 'pmod' | fv= 'substitution' | fv= 'sub' | fv= 'truncation' | fv= 'trunc' | fv= 'reactants' | fv= 'products' | fv= 'list' ) { root_0 = (CommonTree)adaptor.nil(); // BELScriptWalker.g:490:5: (fv= 'proteinAbundance' | fv= 'p' | fv= 'rnaAbundance' | fv= 'r' | fv= 'abundance' | fv= 'a' | fv= 'microRNAAbundance' | fv= 'm' | fv= 'geneAbundance' | fv= 'g' | fv= 'biologicalProcess' | fv= 'bp' | fv= 'pathology' | fv= 'path' | fv= 'complexAbundance' | fv= 'complex' | fv= 'translocation' | fv= 'tloc' | fv= 'cellSecretion' | fv= 'sec' | fv= 'cellSurfaceExpression' | fv= 'surf' | fv= 'reaction' | fv= 'rxn' | fv= 'compositeAbundance' | fv= 'composite' | fv= 'fusion' | fv= 'fus' | fv= 'degradation' | fv= 'deg' | fv= 'molecularActivity' | fv= 'act' | fv= 'catalyticActivity' | fv= 'cat' | fv= 'kinaseActivity' | fv= 'kin' | fv= 'phosphataseActivity' | fv= 'phos' | fv= 'peptidaseActivity' | fv= 'pep' | fv= 'ribosylationActivity' | fv= 'ribo' | fv= 'transcriptionalActivity' | fv= 'tscript' | fv= 'transportActivity' | fv= 'tport' | fv= 'gtpBoundActivity' | fv= 'gtp' | fv= 'chaperoneActivity' | fv= 'chap' | fv= 'proteinModification' | fv= 'pmod' | fv= 'substitution' | fv= 'sub' | fv= 'truncation' | fv= 'trunc' | fv= 'reactants' | fv= 'products' | fv= 'list' ) int alt22=59; switch ( input.LA(1) ) { case 44: { alt22=1; } break; case 45: { alt22=2; } break; case 46: { alt22=3; } break; case 47: { alt22=4; } break; case 48: { alt22=5; } break; case 49: { alt22=6; } break; case 50: { alt22=7; } break; case 51: { alt22=8; } break; case 52: { alt22=9; } break; case 53: { alt22=10; } break; case 54: { alt22=11; } break; case 55: { alt22=12; } break; case 56: { alt22=13; } break; case 57: { alt22=14; } break; case 58: { alt22=15; } break; case 59: { alt22=16; } break; case 60: { alt22=17; } break; case 61: { alt22=18; } break; case 62: { alt22=19; } break; case 63: { alt22=20; } break; case 64: { alt22=21; } break; case 65: { alt22=22; } break; case 66: { alt22=23; } break; case 67: { alt22=24; } break; case 68: { alt22=25; } break; case 69: { alt22=26; } break; case 70: { alt22=27; } break; case 71: { alt22=28; } break; case 72: { alt22=29; } break; case 73: { alt22=30; } break; case 74: { alt22=31; } break; case 75: { alt22=32; } break; case 76: { alt22=33; } break; case 77: { alt22=34; } break; case 78: { alt22=35; } break; case 79: { alt22=36; } break; case 80: { alt22=37; } break; case 81: { alt22=38; } break; case 82: { alt22=39; } break; case 83: { alt22=40; } break; case 84: { alt22=41; } break; case 85: { alt22=42; } break; case 86: { alt22=43; } break; case 87: { alt22=44; } break; case 88: { alt22=45; } break; case 89: { alt22=46; } break; case 90: { alt22=47; } break; case 91: { alt22=48; } break; case 92: { alt22=49; } break; case 93: { alt22=50; } break; case 94: { alt22=51; } break; case 95: { alt22=52; } break; case 96: { alt22=53; } break; case 97: { alt22=54; } break; case 98: { alt22=55; } break; case 99: { alt22=56; } break; case 100: { alt22=57; } break; case 101: { alt22=58; } break; case 102: { alt22=59; } break; default: NoViableAltException nvae = new NoViableAltException("", 22, 0, input); throw nvae; } switch (alt22) { case 1 : // BELScriptWalker.g:491:9: fv= 'proteinAbundance' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,44,FOLLOW_44_in_function819); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 2 : // BELScriptWalker.g:492:9: fv= 'p' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,45,FOLLOW_45_in_function845); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 3 : // BELScriptWalker.g:493:9: fv= 'rnaAbundance' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,46,FOLLOW_46_in_function886); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 4 : // BELScriptWalker.g:494:9: fv= 'r' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,47,FOLLOW_47_in_function916); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 5 : // BELScriptWalker.g:495:9: fv= 'abundance' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,48,FOLLOW_48_in_function957); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 6 : // BELScriptWalker.g:496:9: fv= 'a' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,49,FOLLOW_49_in_function990); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 7 : // BELScriptWalker.g:497:9: fv= 'microRNAAbundance' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,50,FOLLOW_50_in_function1031); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 8 : // BELScriptWalker.g:498:9: fv= 'm' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,51,FOLLOW_51_in_function1056); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 9 : // BELScriptWalker.g:499:9: fv= 'geneAbundance' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,52,FOLLOW_52_in_function1097); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 10 : // BELScriptWalker.g:500:9: fv= 'g' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,53,FOLLOW_53_in_function1126); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 11 : // BELScriptWalker.g:501:9: fv= 'biologicalProcess' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,54,FOLLOW_54_in_function1167); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 12 : // BELScriptWalker.g:502:9: fv= 'bp' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,55,FOLLOW_55_in_function1192); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 13 : // BELScriptWalker.g:503:9: fv= 'pathology' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,56,FOLLOW_56_in_function1232); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 14 : // BELScriptWalker.g:504:9: fv= 'path' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,57,FOLLOW_57_in_function1265); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 15 : // BELScriptWalker.g:505:9: fv= 'complexAbundance' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,58,FOLLOW_58_in_function1303); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 16 : // BELScriptWalker.g:506:9: fv= 'complex' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,59,FOLLOW_59_in_function1329); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 17 : // BELScriptWalker.g:507:9: fv= 'translocation' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,60,FOLLOW_60_in_function1364); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 18 : // BELScriptWalker.g:508:9: fv= 'tloc' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,61,FOLLOW_61_in_function1393); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 19 : // BELScriptWalker.g:509:9: fv= 'cellSecretion' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,62,FOLLOW_62_in_function1431); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 20 : // BELScriptWalker.g:510:9: fv= 'sec' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,63,FOLLOW_63_in_function1460); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 21 : // BELScriptWalker.g:511:9: fv= 'cellSurfaceExpression' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,64,FOLLOW_64_in_function1499); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 22 : // BELScriptWalker.g:512:9: fv= 'surf' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,65,FOLLOW_65_in_function1520); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 23 : // BELScriptWalker.g:513:9: fv= 'reaction' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,66,FOLLOW_66_in_function1558); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 24 : // BELScriptWalker.g:514:9: fv= 'rxn' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,67,FOLLOW_67_in_function1592); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 25 : // BELScriptWalker.g:515:9: fv= 'compositeAbundance' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,68,FOLLOW_68_in_function1631); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 26 : // BELScriptWalker.g:516:9: fv= 'composite' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,69,FOLLOW_69_in_function1655); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 27 : // BELScriptWalker.g:517:9: fv= 'fusion' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,70,FOLLOW_70_in_function1688); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 28 : // BELScriptWalker.g:518:9: fv= 'fus' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,71,FOLLOW_71_in_function1724); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 29 : // BELScriptWalker.g:519:9: fv= 'degradation' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,72,FOLLOW_72_in_function1763); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 30 : // BELScriptWalker.g:520:9: fv= 'deg' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,73,FOLLOW_73_in_function1794); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 31 : // BELScriptWalker.g:521:9: fv= 'molecularActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,74,FOLLOW_74_in_function1833); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 32 : // BELScriptWalker.g:522:9: fv= 'act' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,75,FOLLOW_75_in_function1858); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 33 : // BELScriptWalker.g:523:9: fv= 'catalyticActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,76,FOLLOW_76_in_function1897); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 34 : // BELScriptWalker.g:524:9: fv= 'cat' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,77,FOLLOW_77_in_function1922); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 35 : // BELScriptWalker.g:525:9: fv= 'kinaseActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,78,FOLLOW_78_in_function1961); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 36 : // BELScriptWalker.g:526:9: fv= 'kin' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,79,FOLLOW_79_in_function1989); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 37 : // BELScriptWalker.g:527:9: fv= 'phosphataseActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,80,FOLLOW_80_in_function2028); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 38 : // BELScriptWalker.g:528:9: fv= 'phos' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,81,FOLLOW_81_in_function2051); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 39 : // BELScriptWalker.g:529:9: fv= 'peptidaseActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,82,FOLLOW_82_in_function2089); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 40 : // BELScriptWalker.g:530:9: fv= 'pep' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,83,FOLLOW_83_in_function2114); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 41 : // BELScriptWalker.g:531:9: fv= 'ribosylationActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,84,FOLLOW_84_in_function2153); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 42 : // BELScriptWalker.g:532:9: fv= 'ribo' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,85,FOLLOW_85_in_function2175); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 43 : // BELScriptWalker.g:533:9: fv= 'transcriptionalActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,86,FOLLOW_86_in_function2213); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 44 : // BELScriptWalker.g:534:9: fv= 'tscript' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,87,FOLLOW_87_in_function2232); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 45 : // BELScriptWalker.g:535:9: fv= 'transportActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,88,FOLLOW_88_in_function2267); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 46 : // BELScriptWalker.g:536:9: fv= 'tport' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,89,FOLLOW_89_in_function2292); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 47 : // BELScriptWalker.g:537:9: fv= 'gtpBoundActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,90,FOLLOW_90_in_function2329); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 48 : // BELScriptWalker.g:538:9: fv= 'gtp' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,91,FOLLOW_91_in_function2355); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 49 : // BELScriptWalker.g:539:9: fv= 'chaperoneActivity' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,92,FOLLOW_92_in_function2394); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 50 : // BELScriptWalker.g:540:9: fv= 'chap' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,93,FOLLOW_93_in_function2419); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 51 : // BELScriptWalker.g:541:9: fv= 'proteinModification' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,94,FOLLOW_94_in_function2457); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 52 : // BELScriptWalker.g:542:9: fv= 'pmod' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,95,FOLLOW_95_in_function2480); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 53 : // BELScriptWalker.g:543:9: fv= 'substitution' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,96,FOLLOW_96_in_function2518); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 54 : // BELScriptWalker.g:544:9: fv= 'sub' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,97,FOLLOW_97_in_function2548); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 55 : // BELScriptWalker.g:545:9: fv= 'truncation' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,98,FOLLOW_98_in_function2587); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 56 : // BELScriptWalker.g:546:9: fv= 'trunc' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,99,FOLLOW_99_in_function2619); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 57 : // BELScriptWalker.g:547:9: fv= 'reactants' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,100,FOLLOW_100_in_function2656); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 58 : // BELScriptWalker.g:548:9: fv= 'products' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,101,FOLLOW_101_in_function2689); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; case 59 : // BELScriptWalker.g:549:9: fv= 'list' { _last = (CommonTree)input.LT(1); fv=(CommonTree)match(input,102,FOLLOW_102_in_function2723); fv_tree = (CommonTree)adaptor.dupNode(fv); adaptor.addChild(root_0, fv_tree); retval.r = fv.getText(); } break; } } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "function" public static class relationship_return extends TreeRuleReturnScope { public String r; CommonTree tree; public Object getTree() { return tree; } }; // $ANTLR start "relationship" // BELScriptWalker.g:553:1: relationship returns [String r] : (rv= 'increases' | rv= '->' | rv= 'decreases' | rv= '-|' | rv= 'directlyIncreases' | rv= '=>' | rv= 'directlyDecreases' | rv= '=|' | rv= 'causesNoChange' | rv= 'positiveCorrelation' | rv= 'negativeCorrelation' | rv= 'translatedTo' | rv= '>>' | rv= 'transcribedTo' | rv= ':>' | rv= 'isA' | rv= 'subProcessOf' | rv= 'rateLimitingStepOf' | rv= 'biomarkerFor' | rv= 'prognosticBiomarkerFor' | rv= 'orthologous' | rv= 'analogous' | rv= 'association' | rv= '--' | rv= 'hasMembers' | rv= 'hasComponents' | rv= 'hasMember' | rv= 'hasComponent' ) ; public final BELScriptWalker.relationship_return relationship() throws RecognitionException { BELScriptWalker.relationship_return retval = new BELScriptWalker.relationship_return(); retval.start = input.LT(1); CommonTree root_0 = null; CommonTree _first_0 = null; CommonTree _last = null; CommonTree rv=null; CommonTree rv_tree=null; try { // BELScriptWalker.g:553:32: ( (rv= 'increases' | rv= '->' | rv= 'decreases' | rv= '-|' | rv= 'directlyIncreases' | rv= '=>' | rv= 'directlyDecreases' | rv= '=|' | rv= 'causesNoChange' | rv= 'positiveCorrelation' | rv= 'negativeCorrelation' | rv= 'translatedTo' | rv= '>>' | rv= 'transcribedTo' | rv= ':>' | rv= 'isA' | rv= 'subProcessOf' | rv= 'rateLimitingStepOf' | rv= 'biomarkerFor' | rv= 'prognosticBiomarkerFor' | rv= 'orthologous' | rv= 'analogous' | rv= 'association' | rv= '--' | rv= 'hasMembers' | rv= 'hasComponents' | rv= 'hasMember' | rv= 'hasComponent' ) ) // BELScriptWalker.g:554:5: (rv= 'increases' | rv= '->' | rv= 'decreases' | rv= '-|' | rv= 'directlyIncreases' | rv= '=>' | rv= 'directlyDecreases' | rv= '=|' | rv= 'causesNoChange' | rv= 'positiveCorrelation' | rv= 'negativeCorrelation' | rv= 'translatedTo' | rv= '>>' | rv= 'transcribedTo' | rv= ':>' | rv= 'isA' | rv= 'subProcessOf' | rv= 'rateLimitingStepOf' | rv= 'biomarkerFor' | rv= 'prognosticBiomarkerFor' | rv= 'orthologous' | rv= 'analogous' | rv= 'association' | rv= '--' | rv= 'hasMembers' | rv= 'hasComponents' | rv= 'hasMember' | rv= 'hasComponent' ) { root_0 = (CommonTree)adaptor.nil(); // BELScriptWalker.g:554:5: (rv= 'increases' | rv= '->' | rv= 'decreases' | rv= '-|' | rv= 'directlyIncreases' | rv= '=>' | rv= 'directlyDecreases' | rv= '=|' | rv= 'causesNoChange' | rv= 'positiveCorrelation' | rv= 'negativeCorrelation' | rv= 'translatedTo' | rv= '>>' | rv= 'transcribedTo' | rv= ':>' | rv= 'isA' | rv= 'subProcessOf' | rv= 'rateLimitingStepOf' | rv= 'biomarkerFor' | rv= 'prognosticBiomarkerFor' | rv= 'orthologous' | rv= 'analogous' | rv= 'association' | rv= '--' | rv= 'hasMembers' | rv= 'hasComponents' | rv= 'hasMember' | rv= 'hasComponent' ) int alt23=28; switch ( input.LA(1) ) { case 103: { alt23=1; } break; case 104: { alt23=2; } break; case 105: { alt23=3; } break; case 106: { alt23=4; } break; case 107: { alt23=5; } break; case 108: { alt23=6; } break; case 109: { alt23=7; } break; case 110: { alt23=8; } break; case 111: { alt23=9; } break; case 112: { alt23=10; } break; case 113: { alt23=11; } break; case 114: { alt23=12; } break; case 115: { alt23=13; } break; case 116: { alt23=14; } break; case 117: { alt23=15; } break; case 118: { alt23=16; } break; case 119: { alt23=17; } break; case 120: { alt23=18; } break; case 121: { alt23=19; } break; case 122: { alt23=20; } break; case 123: { alt23=21; } break; case 124: { alt23=22; } break; case 125: { alt23=23; } break; case 126: { alt23=24; } break; case 127: { alt23=25; } break; case 128: { alt23=26; } break; case 129: { alt23=27; } break; case 130: { alt23=28; } break; default: NoViableAltException nvae = new NoViableAltException("", 23, 0, input); throw nvae; } switch (alt23) { case 1 : // BELScriptWalker.g:555:9: rv= 'increases' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,103,FOLLOW_103_in_relationship2785); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 2 : // BELScriptWalker.g:556:9: rv= '->' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,104,FOLLOW_104_in_relationship2818); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 3 : // BELScriptWalker.g:557:9: rv= 'decreases' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,105,FOLLOW_105_in_relationship2858); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 4 : // BELScriptWalker.g:558:9: rv= '-|' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,106,FOLLOW_106_in_relationship2891); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 5 : // BELScriptWalker.g:559:9: rv= 'directlyIncreases' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,107,FOLLOW_107_in_relationship2931); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 6 : // BELScriptWalker.g:560:9: rv= '=>' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,108,FOLLOW_108_in_relationship2956); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 7 : // BELScriptWalker.g:561:9: rv= 'directlyDecreases' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,109,FOLLOW_109_in_relationship2996); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 8 : // BELScriptWalker.g:562:9: rv= '=|' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,110,FOLLOW_110_in_relationship3021); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 9 : // BELScriptWalker.g:563:9: rv= 'causesNoChange' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,111,FOLLOW_111_in_relationship3061); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 10 : // BELScriptWalker.g:564:9: rv= 'positiveCorrelation' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,112,FOLLOW_112_in_relationship3089); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 11 : // BELScriptWalker.g:565:9: rv= 'negativeCorrelation' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,113,FOLLOW_113_in_relationship3112); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 12 : // BELScriptWalker.g:566:9: rv= 'translatedTo' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,114,FOLLOW_114_in_relationship3135); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 13 : // BELScriptWalker.g:567:9: rv= '>>' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,115,FOLLOW_115_in_relationship3165); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 14 : // BELScriptWalker.g:568:9: rv= 'transcribedTo' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,116,FOLLOW_116_in_relationship3205); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 15 : // BELScriptWalker.g:569:9: rv= ':>' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,117,FOLLOW_117_in_relationship3234); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 16 : // BELScriptWalker.g:570:9: rv= 'isA' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,118,FOLLOW_118_in_relationship3274); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 17 : // BELScriptWalker.g:571:9: rv= 'subProcessOf' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,119,FOLLOW_119_in_relationship3313); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 18 : // BELScriptWalker.g:572:9: rv= 'rateLimitingStepOf' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,120,FOLLOW_120_in_relationship3343); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 19 : // BELScriptWalker.g:573:9: rv= 'biomarkerFor' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,121,FOLLOW_121_in_relationship3367); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 20 : // BELScriptWalker.g:574:9: rv= 'prognosticBiomarkerFor' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,122,FOLLOW_122_in_relationship3397); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 21 : // BELScriptWalker.g:575:9: rv= 'orthologous' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,123,FOLLOW_123_in_relationship3417); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 22 : // BELScriptWalker.g:576:9: rv= 'analogous' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,124,FOLLOW_124_in_relationship3448); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 23 : // BELScriptWalker.g:577:9: rv= 'association' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,125,FOLLOW_125_in_relationship3481); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 24 : // BELScriptWalker.g:578:9: rv= '--' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,126,FOLLOW_126_in_relationship3512); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 25 : // BELScriptWalker.g:579:9: rv= 'hasMembers' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,127,FOLLOW_127_in_relationship3552); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 26 : // BELScriptWalker.g:580:9: rv= 'hasComponents' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,128,FOLLOW_128_in_relationship3584); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 27 : // BELScriptWalker.g:581:9: rv= 'hasMember' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,129,FOLLOW_129_in_relationship3613); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; case 28 : // BELScriptWalker.g:582:9: rv= 'hasComponent' { _last = (CommonTree)input.LT(1); rv=(CommonTree)match(input,130,FOLLOW_130_in_relationship3646); rv_tree = (CommonTree)adaptor.dupNode(rv); adaptor.addChild(root_0, rv_tree); retval.r = rv.getText(); } break; } } retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { } return retval; } // $ANTLR end "relationship" // Delegated rules protected DFA2 dfa2 = new DFA2(this); static final String DFA2_eotS = "\14\uffff"; static final String DFA2_eofS = "\14\uffff"; static final String DFA2_minS = "\1\30\1\34\1\6\1\7\10\uffff"; static final String DFA2_maxS = "\1\146\1\40\1\11\1\12\10\uffff"; static final String DFA2_acceptS = "\4\uffff\1\10\1\2\1\1\1\3\1\4\1\5\1\6\1\7"; static final String DFA2_specialS = "\14\uffff}>"; static final String[] DFA2_transitionS = { "\1\2\1\uffff\1\3\1\1\20\uffff\73\4", "\2\6\2\uffff\1\5", "\1\10\1\7\1\uffff\1\11", "\1\13\1\uffff\1\12\1\13", "", "", "", "", "", "", "", "" }; static final short[] DFA2_eot = DFA.unpackEncodedString(DFA2_eotS); static final short[] DFA2_eof = DFA.unpackEncodedString(DFA2_eofS); static final char[] DFA2_min = DFA.unpackEncodedStringToUnsignedChars(DFA2_minS); static final char[] DFA2_max = DFA.unpackEncodedStringToUnsignedChars(DFA2_maxS); static final short[] DFA2_accept = DFA.unpackEncodedString(DFA2_acceptS); static final short[] DFA2_special = DFA.unpackEncodedString(DFA2_specialS); static final short[][] DFA2_transition; static { int numStates = DFA2_transitionS.length; DFA2_transition = new short[numStates][]; for (int i=0; i<numStates; i++) { DFA2_transition[i] = DFA.unpackEncodedString(DFA2_transitionS[i]); } } class DFA2 extends DFA { public DFA2(BaseRecognizer recognizer) { this.recognizer = recognizer; this.decisionNumber = 2; this.eot = DFA2_eot; this.eof = DFA2_eof; this.min = DFA2_min; this.max = DFA2_max; this.accept = DFA2_accept; this.special = DFA2_special; this.transition = DFA2_transition; } public String getDescription() { return "118:5: ( define_namespace | define_annotation | set_annotation | set_document | set_statement_group | unset_statement_group | unset | statement )"; } } public static final BitSet FOLLOW_NEWLINE_in_document67 = new BitSet(new long[]{0xFFFFF0000D000030L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_DOCUMENT_COMMENT_in_document71 = new BitSet(new long[]{0xFFFFF0000D000030L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_record_in_document75 = new BitSet(new long[]{0xFFFFF0000D000030L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_EOF_in_document79 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_define_namespace_in_record98 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_define_annotation_in_record102 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_set_annotation_in_record106 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_set_document_in_record110 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_set_statement_group_in_record114 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_unset_statement_group_in_record118 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_unset_in_record122 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_statement_in_record126 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_24_in_set_document144 = new BitSet(new long[]{0x0000000000000040L}); public static final BitSet FOLLOW_DOCUMENT_KEYWORD_in_set_document148 = new BitSet(new long[]{0x000007F800000000L}); public static final BitSet FOLLOW_document_property_in_set_document153 = new BitSet(new long[]{0x0000000002000000L}); public static final BitSet FOLLOW_25_in_set_document155 = new BitSet(new long[]{0x0000000000000880L}); public static final BitSet FOLLOW_QUOTED_VALUE_in_set_document160 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_OBJECT_IDENT_in_set_document166 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_24_in_set_statement_group185 = new BitSet(new long[]{0x0000000000000200L}); public static final BitSet FOLLOW_STATEMENT_GROUP_KEYWORD_in_set_statement_group187 = new BitSet(new long[]{0x0000000002000000L}); public static final BitSet FOLLOW_25_in_set_statement_group189 = new BitSet(new long[]{0x0000000000000880L}); public static final BitSet FOLLOW_QUOTED_VALUE_in_set_statement_group194 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_OBJECT_IDENT_in_set_statement_group200 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_24_in_set_annotation219 = new BitSet(new long[]{0x0000000000000080L}); public static final BitSet FOLLOW_OBJECT_IDENT_in_set_annotation223 = new BitSet(new long[]{0x0000000002000000L}); public static final BitSet FOLLOW_25_in_set_annotation225 = new BitSet(new long[]{0x0000000000000980L}); public static final BitSet FOLLOW_QUOTED_VALUE_in_set_annotation230 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_VALUE_LIST_in_set_annotation236 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_OBJECT_IDENT_in_set_annotation242 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_26_in_unset_statement_group261 = new BitSet(new long[]{0x0000000000000200L}); public static final BitSet FOLLOW_STATEMENT_GROUP_KEYWORD_in_unset_statement_group263 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_26_in_unset281 = new BitSet(new long[]{0x0000000000000480L}); public static final BitSet FOLLOW_OBJECT_IDENT_in_unset286 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IDENT_LIST_in_unset292 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_27_in_define_namespace312 = new BitSet(new long[]{0x0000000030000000L}); public static final BitSet FOLLOW_28_in_define_namespace318 = new BitSet(new long[]{0x0000000020000000L}); public static final BitSet FOLLOW_29_in_define_namespace322 = new BitSet(new long[]{0x0000000000000080L}); public static final BitSet FOLLOW_OBJECT_IDENT_in_define_namespace328 = new BitSet(new long[]{0x0000000040000000L}); public static final BitSet FOLLOW_30_in_define_namespace330 = new BitSet(new long[]{0x0000000080000000L}); public static final BitSet FOLLOW_31_in_define_namespace332 = new BitSet(new long[]{0x0000000000000800L}); public static final BitSet FOLLOW_QUOTED_VALUE_in_define_namespace336 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_27_in_define_annotation355 = new BitSet(new long[]{0x0000000100000000L}); public static final BitSet FOLLOW_32_in_define_annotation357 = new BitSet(new long[]{0x0000000000000080L}); public static final BitSet FOLLOW_OBJECT_IDENT_in_define_annotation362 = new BitSet(new long[]{0x0000000040000000L}); public static final BitSet FOLLOW_30_in_define_annotation364 = new BitSet(new long[]{0x0000000680000000L}); public static final BitSet FOLLOW_31_in_define_annotation371 = new BitSet(new long[]{0x0000000000000800L}); public static final BitSet FOLLOW_33_in_define_annotation377 = new BitSet(new long[]{0x0000000000000800L}); public static final BitSet FOLLOW_QUOTED_VALUE_in_define_annotation382 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_34_in_define_annotation390 = new BitSet(new long[]{0x0000000000000100L}); public static final BitSet FOLLOW_VALUE_LIST_in_define_annotation394 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_35_in_document_property420 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_36_in_document_property436 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_37_in_document_property448 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_38_in_document_property462 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_39_in_document_property474 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_40_in_document_property487 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_41_in_document_property502 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_42_in_document_property521 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_outer_term_in_statement545 = new BitSet(new long[]{0x0000000000004002L,0xFFFFFF8000000000L,0x0000000000000007L}); public static final BitSet FOLLOW_relationship_in_statement550 = new BitSet(new long[]{0xFFFFF0000D001030L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_OPEN_PAREN_in_statement554 = new BitSet(new long[]{0xFFFFF0000D000030L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_outer_term_in_statement558 = new BitSet(new long[]{0x0000000000000000L,0xFFFFFF8000000000L,0x0000000000000007L}); public static final BitSet FOLLOW_relationship_in_statement562 = new BitSet(new long[]{0xFFFFF0000D000030L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_outer_term_in_statement566 = new BitSet(new long[]{0x0000000000002000L}); public static final BitSet FOLLOW_CLOSE_PAREN_in_statement568 = new BitSet(new long[]{0x0000000000004002L}); public static final BitSet FOLLOW_outer_term_in_statement575 = new BitSet(new long[]{0x0000000000004002L}); public static final BitSet FOLLOW_STATEMENT_COMMENT_in_statement582 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_function_in_outer_term613 = new BitSet(new long[]{0x0000000000001000L}); public static final BitSet FOLLOW_OPEN_PAREN_in_outer_term619 = new BitSet(new long[]{0xFFFFF8000D00A8B0L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_43_in_outer_term626 = new BitSet(new long[]{0xFFFFF8000D0088B0L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_argument_in_outer_term633 = new BitSet(new long[]{0xFFFFF8000D00A8B0L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_CLOSE_PAREN_in_outer_term641 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_param_in_argument665 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_term_in_argument677 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_function_in_term707 = new BitSet(new long[]{0x0000000000001000L}); public static final BitSet FOLLOW_OPEN_PAREN_in_term713 = new BitSet(new long[]{0xFFFFF8000D00A8B0L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_43_in_term719 = new BitSet(new long[]{0xFFFFF8000D0088B0L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_term_in_term727 = new BitSet(new long[]{0xFFFFF8000D00A8B0L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_param_in_term735 = new BitSet(new long[]{0xFFFFF8000D00A8B0L,0x0000007FFFFFFFFFL}); public static final BitSet FOLLOW_CLOSE_PAREN_in_term744 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_NS_PREFIX_in_param772 = new BitSet(new long[]{0x0000000000000880L}); public static final BitSet FOLLOW_OBJECT_IDENT_in_param778 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_QUOTED_VALUE_in_param784 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_44_in_function819 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_45_in_function845 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_46_in_function886 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_47_in_function916 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_48_in_function957 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_49_in_function990 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_50_in_function1031 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_51_in_function1056 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_52_in_function1097 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_53_in_function1126 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_54_in_function1167 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_55_in_function1192 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_56_in_function1232 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_57_in_function1265 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_58_in_function1303 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_59_in_function1329 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_60_in_function1364 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_61_in_function1393 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_62_in_function1431 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_63_in_function1460 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_64_in_function1499 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_65_in_function1520 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_66_in_function1558 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_67_in_function1592 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_68_in_function1631 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_69_in_function1655 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_70_in_function1688 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_71_in_function1724 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_72_in_function1763 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_73_in_function1794 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_74_in_function1833 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_75_in_function1858 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_76_in_function1897 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_77_in_function1922 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_78_in_function1961 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_79_in_function1989 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_80_in_function2028 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_81_in_function2051 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_82_in_function2089 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_83_in_function2114 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_84_in_function2153 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_85_in_function2175 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_86_in_function2213 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_87_in_function2232 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_88_in_function2267 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_89_in_function2292 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_90_in_function2329 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_91_in_function2355 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_92_in_function2394 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_93_in_function2419 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_94_in_function2457 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_95_in_function2480 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_96_in_function2518 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_97_in_function2548 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_98_in_function2587 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_99_in_function2619 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_100_in_function2656 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_101_in_function2689 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_102_in_function2723 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_103_in_relationship2785 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_104_in_relationship2818 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_105_in_relationship2858 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_106_in_relationship2891 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_107_in_relationship2931 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_108_in_relationship2956 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_109_in_relationship2996 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_110_in_relationship3021 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_111_in_relationship3061 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_112_in_relationship3089 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_113_in_relationship3112 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_114_in_relationship3135 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_115_in_relationship3165 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_116_in_relationship3205 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_117_in_relationship3234 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_118_in_relationship3274 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_119_in_relationship3313 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_120_in_relationship3343 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_121_in_relationship3367 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_122_in_relationship3397 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_123_in_relationship3417 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_124_in_relationship3448 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_125_in_relationship3481 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_126_in_relationship3512 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_127_in_relationship3552 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_128_in_relationship3584 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_129_in_relationship3613 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_130_in_relationship3646 = new BitSet(new long[]{0x0000000000000002L}); }