__init__.py 989 B

12345678910111213141516171819202122232425262728293031323334
  1. import json
  2. import os
  3. path = os.path.dirname(__file__)
  4. def load_schema(version, name='isp'):
  5. """
  6. Load a schema from ./``version``/``name``.json and return it.
  7. """
  8. schemapath = os.path.join(path, str(version), '%s.json'%(name,))
  9. with open(schemapath) as f:
  10. return json.load(f)
  11. versions = {
  12. 0.1: load_schema('0.1')
  13. }
  14. latest = versions[0.1]
  15. def deps_for_version(version):
  16. return {
  17. 'http://json-schema.org/geo': load_schema(version, 'geo'),
  18. 'http://json-schema.org/address': load_schema(version, 'address'),
  19. 'http://json-schema.org/geojson/geojson.json#': load_schema(version, 'geojson/geojson'),
  20. 'http://json-schema.org/geojson/geometry.json#': load_schema(version, 'geojson/geometry'),
  21. 'http://json-schema.org/geojson/bbox.json#': load_schema(version, 'geojson/bbox'),
  22. 'http://json-schema.org/geojson/crs.json#': load_schema(version, 'geojson/crs'),
  23. }
  24. __all__ = ['path', 'versions', 'latest']