class_docstr: A representation of a set of features, usually associated with a word form.
class_docstr_tok: ["A","representation","of","a","set","of","features",",","usually","associated","with","a","word","form","."]
docstr: >>> f1 = MorphosyntacticFeatureBundle(F.neg, N.pos, V.neg, Case.accusative)
  >>> f1.features
  {F: [neg], N: [pos], V: [neg], Case: [accusative]}
docstr_tok: [">",">",">","f1","=","MorphosyntacticFeatureBundle","(","F.neg",",","N.pos",",","V.neg",",","Case.accusative",")",">",">",">","f1.features","{","F",":","[","neg","]",",","N",":","[","pos","]",",","V",":","[","neg","]",",","Case",":","[","accusative","]","}"]
code: def __init__(self, *features: List[MorphosyntacticFeature]) -> None:
      """
      >>> f1 = MorphosyntacticFeatureBundle(F.neg, N.pos, V.neg, Case.accusative)
      >>> f1.features
      {F: [neg], N: [pos], V: [neg], Case: [accusative]}
      """
      self.features = {}
      for feature in features:
          if isinstance(feature, type) and issubclass(
              feature, MorphosyntacticFeature
          ):
              self.features[feature] = Underspecified
          else:
              if type(feature) in self.features:
                  self.features[type(feature)].append(feature)
              else:
                  self.features[type(feature)] = [feature]
  
file_path: cltk/src/cltk/morphology/morphosyntax.py
imports: from typing import Dict, List, Optional, Tuple, Type, Union
  from cltk.core.exceptions import CLTKException
  from cltk.morphology.universal_dependencies_features import *
label_desc: Use image node_id 1 to create a new MorphosyntacticFeatureBundle object  with example: obj = MorphosyntacticFeatureBundle()