class_docstr: Initializer for XBNWriter class
  
  Parameters
  ----------
  model: BayesianNetwork Instance
      Model to write
  encoding: str(optional)
      Encoding for test data
  prettyprint: Bool(optional)
      Indentation in output XML if true
  
  Reference
  ---------
  http://xml.coverpages.org/xbn-MSdefault19990414.html
  
  Examples
  --------
  >>> writer = XBNWriter(model)
class_docstr_tok: ["Initializer","for","XBNWriter","class","Parameters","--","--","--","--","--","model",":","BayesianNetwork","Instance","Model","to","write","encoding",":","str","(","optional",")","Encoding","for","test","data","prettyprint",":","Bool","(","optional",")","Indentation","in","output","XML","if","true","Reference","--","--","--","--","-","http",":","\/\/xml.coverpages.org\/xbn-MSdefault19990414.html","Examples","--","--","--","--",">",">",">","writer","=","XBNWriter","(","model",")"]
docstr: Inplace prettyprint formatter.
docstr_tok: ["Inplace","prettyprint","formatter","."]
code: def indent(self, elem, level=0):
      """
      Inplace prettyprint formatter.
      """
      i = "\n" + level * "  "
      if len(elem):
          if not elem.text or not elem.text.strip():
              elem.text = i + "  "
          if not elem.tail or not elem.tail.strip():
              elem.tail = i
          for elem in elem:
              self.indent(elem, level + 1)
          if not elem.tail or not elem.tail.strip():
              elem.tail = i
      else:
          if level and (not elem.tail or not elem.tail.strip()):
              elem.tail = i
  
imports: import itertools
  import xml.etree.ElementTree
  import networkx
  import numpy
  from pgmpy.factors.discrete import TabularCPD
  from pgmpy.models import BayesianNetwork
label_desc: Use image node_id 3 for calling the XBNWriter obj's underlying member method code with example usage: obj.indent(elem, level) without return types