class_docstr: Parse BCP-47 composite language tags
  
  Supports all the main subtags, and the 'u-sd' extension:
  
  >>> from nltk.corpus import bcp47
  >>> bcp47.name('oc-gascon-u-sd-fr64')
  'Occitan (post 1500): Gascon: Pyrénées-Atlantiques'
  
  Can load a conversion table to Wikidata Q-codes:
  >>> bcp47.load_wiki_q()
  >>> bcp47.wiki_q['en-GI-spanglis']
  'Q79388'
docstr: Concatenate subtag values
docstr_tok: ["Concatenate","subtag","values"]
code: def lang2str(self, lg_record):
      """Concatenate subtag values"""
      name = f"{lg_record['language']}"
      for label in [
          "extlang",
          "script",
          "region",
          "variant",
          "extension",
      ]:
          if label in lg_record:
              name += f": {lg_record[label]}"
      return name
  
file_path: nltk/nltk/corpus/reader/bcp47.py
imports: import re
  from warnings import warn
  from xml.etree import ElementTree
  from nltk.corpus.reader import CorpusReader
label_desc: Use image node_id 8 for calling the BCP47CorpusReader obj's underlying member method code with example usage: obj.lang2str(lg_record) and returns: name