@@ -107,19 +107,25 @@ class ODMLReader:
107107 json_odml_doc = ODMLReader(parser='JSON').from_file("odml_doc.json")
108108 """
109109
110- def __init__ (self , parser = 'XML' ):
110+ def __init__ (self , parser = 'XML' , show_warnings = True ):
111+ """
112+ :param parser: odml parser; supported are 'XML', 'JSON', 'YAML' and 'RDF'.
113+ :param show_warnings: Toggle whether to print warnings to the command line.
114+ """
111115 self .doc = None # odML document
112116 self .parsed_doc = None # Python dictionary object equivalent
113117 parser = parser .upper ()
114118 if parser not in SUPPORTED_PARSERS :
115119 raise NotImplementedError ("'%s' odML parser does not exist!" % parser )
116120 self .parser = parser
121+ self .show_warnings = show_warnings
117122 self .warnings = []
118123
119124 def from_file (self , file , doc_format = None ):
120125
121126 if self .parser == 'XML' :
122- par = xmlparser .XMLReader (ignore_errors = True )
127+ par = xmlparser .XMLReader (ignore_errors = True ,
128+ show_warnings = self .show_warnings )
123129 self .warnings = par .warnings
124130 self .doc = par .from_file (file )
125131 return self .doc
@@ -132,7 +138,8 @@ def from_file(self, file, doc_format=None):
132138 print (err )
133139 return
134140
135- self .doc = DictReader ().to_odml (self .parsed_doc )
141+ par = DictReader (show_warnings = self .show_warnings )
142+ self .doc = par .to_odml (self .parsed_doc )
136143 # Provide original file name via the in memory document
137144 self .doc ._origin_file_name = basename (file )
138145 return self .doc
@@ -145,7 +152,8 @@ def from_file(self, file, doc_format=None):
145152 print ("JSON Decoder Error: %s" % err )
146153 return
147154
148- self .doc = DictReader ().to_odml (self .parsed_doc )
155+ par = DictReader (show_warnings = self .show_warnings )
156+ self .doc = par .to_odml (self .parsed_doc )
149157 # Provide original file name via the in memory document
150158 self .doc ._origin_file_name = basename (file )
151159 return self .doc
0 commit comments