docs: def convert_text_to_CONLL( text, feature_generator ):
      ''' Converts given estnltk Text object into CONLL format and returns as a 
          string.
          Uses given *feature_generator* to produce fields ID, FORM, LEMMA, CPOSTAG, 
          POSTAG, FEATS for each token.
          Fields to predict (HEAD, DEPREL) will be left empty.
          This method is used in preparing parsing & testing data for MaltParser.
          
          Parameters
          -----------
          text : estnltk.text.Text
              Morphologically analysed text from which the CONLL file is generated;
              
          feature_generator : CONLLFeatGenerator
              An instance of CONLLFeatGenerator, which has method *generate_features()* 
              for generating morphological features for a single token;
          
          The aimed format looks something like this:
          1	Öö	öö	S	S	sg|nom	_	xxx	_	_
          2	oli	ole	V	V	indic|impf|ps3|sg	_	xxx	_	_
          3	täiesti	täiesti	D	D	_	_	xxx	_	_
          4	tuuletu	tuuletu	A	A	sg|nom	_	xxx	_	_
          5	.	.	Z	Z	Fst	_	xxx	_	_
      '''
      from estnltk.text import Text
      if not isinstance( text, Text ):
          raise Exception('(!) Unexpected type of input argument! Expected EstNLTK\'s Text. ')
      try:
          granularity = feature_generator.parseScope
      except AttributeError:
          granularity = SENTENCES
      assert granularity in [SENTENCES, CLAUSES], '(!) Unsupported granularity: "'+str(granularity)+'"!'
      sentenceStrs = []
      for sentence_text in text.split_by( granularity ):
          sentence_text[WORDS] = __sort_analyses( sentence_text[WORDS] )
          for i in range(len( sentence_text[WORDS] )):
              # Generate features  ID, FORM, LEMMA, CPOSTAG, POSTAG, FEATS
              strForm = feature_generator.generate_features( sentence_text, i )
              # *** HEAD  (syntactic parent)
              strForm.append( '_' )
              strForm.append( '\t' )
              # *** DEPREL  (label of the syntactic relation)
              strForm.append( 'xxx' )
              strForm.append( '\t' )
              # *** PHEAD
              strForm.append( '_' )
              strForm.append( '\t' )
              # *** PDEPREL
              strForm.append( '_' )
              sentenceStrs.append( ''.join( strForm ) )
          sentenceStrs.append( '' )
      return '\n'.join( sentenceStrs )