code: public final EObject ruleReferenceOrLiteral() throws RecognitionException {
          EObject current = null;
  
          AntlrDatatypeRuleToken lv_name_0_0 = null;
  
  
           enterRule(); 
              
          try {
              // InternalSimpleAntlr.g:1241:28: ( ( (lv_name_0_0= ruleQName ) ) )
              // InternalSimpleAntlr.g:1242:1: ( (lv_name_0_0= ruleQName ) )
              {
              // InternalSimpleAntlr.g:1242:1: ( (lv_name_0_0= ruleQName ) )
              // InternalSimpleAntlr.g:1243:1: (lv_name_0_0= ruleQName )
              {
              // InternalSimpleAntlr.g:1243:1: (lv_name_0_0= ruleQName )
              // InternalSimpleAntlr.g:1244:3: lv_name_0_0= ruleQName
              {
              if ( state.backtracking==0 ) {
                 
                	        newCompositeNode(grammarAccess.getReferenceOrLiteralAccess().getNameQNameParserRuleCall_0()); 
                	    
              }
              pushFollow(FOLLOW_2);
              lv_name_0_0=ruleQName();
  
              state._fsp--;
              if (state.failed) return current;
              if ( state.backtracking==0 ) {
  
                	        if (current==null) {
                	            current = createModelElementForParent(grammarAccess.getReferenceOrLiteralRule());
                	        }
                       		set(
                       			current, 
                       			"name",
                        		lv_name_0_0, 
                        		"org.eclipse.xtext.generator.parser.antlr.debug.SimpleAntlr.QName");
                	        afterParserOrEnumRuleCall();
                	    
              }
  
              }
  
  
              }
  
  
              }
  
              if ( state.backtracking==0 ) {
                 leaveRule(); 
              }
          }
           
              catch (RecognitionException re) { 
                  recover(input,re); 
                  appendSkippedTokens();
              } 
          finally {
          }
          return current;
      }
docs: InternalSimpleAntlr.g:1238:1: ruleReferenceOrLiteral returns [EObject current=null] : ( (lv_name_0_0= ruleQName ) ) ;