code: public final BELScriptParser.document_property_return document_property() throws RecognitionException {
          BELScriptParser.document_property_return retval = new BELScriptParser.document_property_return();
          retval.start = input.LT(1);
  
          Object root_0 = null;
  
          Token set47=null;
  
          Object set47_tree=null;
  
          try {
              // BELScript.g:121:18: ( 'Authors' | 'ContactInfo' | 'Copyright' | 'Description' | 'Disclaimer' | 'Licenses' | 'Name' | 'Version' )
              // BELScript.g:
              {
              root_0 = (Object)adaptor.nil();
  
              set47=(Token)input.LT(1);
              if ( (input.LA(1)>=35 && input.LA(1)<=42) ) {
                  input.consume();
                  adaptor.addChild(root_0, (Object)adaptor.create(set47));
                  state.errorRecovery=false;
              }
              else {
                  MismatchedSetException mse = new MismatchedSetException(null,input);
                  throw mse;
              }
  
  
              }
  
              retval.stop = input.LT(-1);
  
              retval.tree = (Object)adaptor.rulePostProcessing(root_0);
              adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
  
          }
          catch (RecognitionException re) {
              reportError(re);
              recover(input,re);
      	retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re);
  
          }
          finally {
          }
          return retval;
      }
docs: BELScript.g:121:1: document_property : ( 'Authors' | 'ContactInfo' | 'Copyright' | 'Description' | 'Disclaimer' | 'Licenses' | 'Name' | 'Version' );