docstr: Convert the CoNLL-U format input data to a dictionary format output data.
  Input: list of token fields loaded from the CoNLL-U format data, where the outmost list represents a list of sentences, and the inside list represents all fields of a token.
  Output: a list of list of dictionaries for each token in each sentence in the document.
docstr_tok: ["Convert","the","CoNLL-U","format","input","data","to","a","dictionary","format","output","data",".","Input",":","list","of","token","fields","loaded","from","the","CoNLL-U","format","data",",","where","the","outmost","list","represents","a","list","of","sentences",",","and","the","inside","list","represents","all","fields","of","a","token",".","Output",":","a","list","of","list","of","dictionaries","for","each","token","in","each","sentence","in","the","document","."]
code: def convert_conll(doc_conll):
      """Convert the CoNLL-U format input data to a dictionary format output data.
      Input: list of token fields loaded from the CoNLL-U format data, where the outmost list represents a list of sentences, and the inside list represents all fields of a token.
      Output: a list of list of dictionaries for each token in each sentence in the document.
      """
      doc_dict = []
      doc_empty = []
      for sent_idx, sent_conll in enumerate(doc_conll):
          sent_dict = []
          sent_empty = []
          for token_idx, token_conll in enumerate(sent_conll):
              try:
                  token_dict = CoNLL.convert_conll_token(token_conll)
              except ValueError as e:
                  raise ValueError(
                      "Could not process sentence %d token %d: %s"
                      % (sent_idx, token_idx, str(e))
                  ) from e
              if "." in token_dict[ID]:
                  token_dict[ID] = tuple(
                      int(x)
                      for x in token_dict[ID].split(".", maxsplit=1)
                  )
                  sent_empty.append(token_dict)
              else:
                  token_dict[ID] = tuple(
                      int(x)
                      for x in token_dict[ID].split("-", maxsplit=1)
                  )
                  sent_dict.append(token_dict)
          doc_dict.append(sent_dict)
          doc_empty.append(sent_empty)
      return doc_dict, doc_empty
  
file_path: stanza/stanza/utils/conll.py
imports: import os
  import io
  from zipfile import ZipFile
  from stanza.models.common.doc import Document
  from stanza.models.common.doc import ID, TEXT, LEMMA, UPOS, XPOS, FEATS, HEAD, DEPREL, DEPS, MISC, NER, START_CHAR, END_CHAR
  from stanza.models.common.doc import FIELD_TO_IDX, FIELD_NUM
label_desc: Use image node_id 2 for calling the CoNLL obj's underlying member method code with example usage: obj.convert_conll(doc_conll) and returns: doc_dict,  doc_empty