Ted Hart

I’m a senior data scientist in silicon valley and adjunct faculty at the University of Vermont. I build things for data: things that process it, parse it, visualize it, and analyze it. I like my beer cold, my snow deep, my mountains high, and my data open. I am a recovering academic.

Ted Hart


ecologist / data scientist / developer

MDTools 0.0.2

Back in December I had the opportunity to go to an iDigBio hackathon. While there I worked on some code to add EML metadata to Darwin Core Archives. I was hoping to do this, and was looking around for an easy way to create metadata in Python, hoping for something like the EML package for R. <!-- more --> Unfortunately I had no such luck and went down the rabbit hole of making my own tool for this purpose. I've finally completed it, and called it MDTools. It's a general purpose metadata module that makes creating XML metadata easy(ier?). I've written some extensive documentation over on the project webpage that you can peruse. The module is up on pypi for easy installation via ~~~pip~~~, and the source is of course available over on github.

Currently the module is very flexible and ideally would serve as a dependency for people hoping to create standard specific packages, like a python version of the EML package. The structure of elements is easy enough to create with a bit of python to extract data from a specific source, and create metadata objects that can be written out to XML. Alternatively, it accepts a flat file format input that individual users can write, and then easily read in the files to create metadata objects. So what should I change? What should I add? Is this a poor man's PyXB?