class_docstr: Initialisation of XMLBIFReader object.
  
  Parameters
  ----------
  path : file or str
      File of XMLBIF data
      File of XMLBIF data
  
  string : str
      String of XMLBIF data
  
  Examples
  --------
  # xmlbif_test.xml is the file present in
  # http://www.cs.cmu.edu/~fgcozman/Research/InterchangeFormat/
  >>> from pgmpy.readwrite import XMLBIFReader
  >>> reader = XMLBIFReader("xmlbif_test.xml")
  >>> model = reader.get_model()
  
  Reference
  ---------
  [1] https://www.cs.cmu.edu/afs/cs/user/fgcozman/www/Research/InterchangeFormat/
docstr: Returns the states of variables present in the network
  
  Examples
  --------
  >>> reader = XMLBIF.XMLBIFReader("xmlbif_test.xml")
  >>> reader.get_states()
  {'bowel-problem': ['true', 'false'],
   'dog-out': ['true', 'false'],
   'family-out': ['true', 'false'],
   'hear-bark': ['true', 'false'],
   'light-on': ['true', 'false']}
docstr_tok: ["Returns","the","states","of","variables","present","in","the","network","Examples","--","--","--","--",">",">",">","reader","=","XMLBIF.XMLBIFReader","(","``","xmlbif_test.xml","''",")",">",">",">","reader.get_states","(",")","{","'bowel-problem","'",":","[","'true","'",",","'false","'","]",",","'dog-out","'",":","[","'true","'",",","'false","'","]",",","'family-out","'",":","[","'true","'",",","'false","'","]",",","'hear-bark","'",":","[","'true","'",",","'false","'","]",",","'light-on","'",":","[","'true","'",",","'false","'","]","}"]
code: def get_states(self):
      """
      Returns the states of variables present in the network
  
      Examples
      --------
      >>> reader = XMLBIF.XMLBIFReader("xmlbif_test.xml")
      >>> reader.get_states()
      {'bowel-problem': ['true', 'false'],
       'dog-out': ['true', 'false'],
       'family-out': ['true', 'false'],
       'hear-bark': ['true', 'false'],
       'light-on': ['true', 'false']}
      """
      variable_states = {
          variable.find("NAME").text: [
              outcome.text for outcome in variable.findall("OUTCOME")
          ]
          for variable in self.network.findall("VARIABLE")
      }
      return variable_states
  
imports: import xml.etree.ElementTree
  from io import BytesIO
  from itertools import chain
  import numpy
  import pyparsing
  from pgmpy.factors.discrete import State, TabularCPD
  from pgmpy.models import BayesianNetwork
  from pgmpy.utils import compat_fns
label_desc: Use image node_id 4 for calling the XMLBIFReader obj's underlying member method code with example usage: obj.get_states() and returns: variable_states