diff --git a/data/json/bool_attr.json b/data/json/bool_attr.json index 6d4d24d..ff092b9 100644 --- a/data/json/bool_attr.json +++ b/data/json/bool_attr.json @@ -20,7 +20,7 @@ "class": "H5T_INTEGER" }, "class": "H5T_ENUM", - "mapping": [ + "members": [ { "name": "FALSE", "value": 0 diff --git a/data/json/bool_dset.json b/data/json/bool_dset.json index 11f19e0..29e46d8 100644 --- a/data/json/bool_dset.json +++ b/data/json/bool_dset.json @@ -24,7 +24,7 @@ "class": "H5T_INTEGER" }, "class": "H5T_ENUM", - "mapping": [ + "members": [ { "name": "FALSE", "value": 0 diff --git a/data/json/enum_attr.json b/data/json/enum_attr.json index e39425e..9e9d94a 100644 --- a/data/json/enum_attr.json +++ b/data/json/enum_attr.json @@ -21,7 +21,7 @@ "class": "H5T_INTEGER" }, "class": "H5T_ENUM", - "mapping": [ + "members": [ { "name": "GAS", "value": 2 diff --git a/data/json/enum_dset.json b/data/json/enum_dset.json index 0829169..d2afcd4 100644 --- a/data/json/enum_dset.json +++ b/data/json/enum_dset.json @@ -25,7 +25,7 @@ "class": "H5T_INTEGER" }, "class": "H5T_ENUM", - "mapping": [ + "members": [ { "name": "GAS", "value": 2 diff --git a/src/h5json/hdf5db.py b/src/h5json/hdf5db.py index 112fb86..db48eda 100644 --- a/src/h5json/hdf5db.py +++ b/src/h5json/hdf5db.py @@ -797,7 +797,7 @@ def getObjByPath(self, path): def getObjectByUuid(self, col_type, obj_uuid): # col_type should be either "datasets", "groups", or "datatypes" if col_type not in ("datasets", "groups", "datatypes"): - msg = "Unexpectd error, invalid col_type: [" + col_type + "]" + msg = "Unexpected error, invalid col_type: [" + col_type + "]" self.log.error(msg) raise IOError(errno.EIO, msg) if col_type == "groups" and obj_uuid == self.dbGrp.attrs["rootUUID"]: diff --git a/src/h5json/hdf5dtype.py b/src/h5json/hdf5dtype.py index fecf38f..9c565ce 100644 --- a/src/h5json/hdf5dtype.py +++ b/src/h5json/hdf5dtype.py @@ -735,9 +735,13 @@ def createBaseDataType(typeItem): if base_json["class"] != "H5T_INTEGER": msg = "Only integer base types can be used with enum type" raise TypeError(msg) - if "mapping" not in typeItem: + if "mapping" in typeItem: + mapping = typeItem["mapping"] + elif "members" in typeItem: + mapping = typeItem["members"] # backward-compatibility for hdf5-json + else: raise KeyError("'mapping' not provided for enum type") - mapping = typeItem["mapping"] + if len(mapping) == 0: raise KeyError("empty enum map")