first commit (extracted from my code on datapackage.js)