code: def _complement_tag_options(options):
      
      if not all(nt in options for nt in _TAGS):
          tags = options.get("tags", {})
          for ntype, tag in _TAGS.items():
              options[ntype] = tags.get(ntype, tag)
  
      return options
docs: :param options: Keyword options :: dict
  
      >>> ref = _TAGS.copy()
      >>> ref["text"] = "#text"
      >>> opts = _complement_tag_options({"tags": {"text": ref["text"]}})
      >>> del opts["tags"]  # To simplify comparison.
      >>> sorted(opts.items())
      [('attrs', '@attrs'), ('children', '@children'), ('text', '#text')]