Filter#
{
"$schema": "https://json-schema.org/draft/2020-12/schema#",
"$id": "https://hdfgroup.org/schemas/hdf5/json/filters.schema.json",
"title": "HDF5/JSON Filters Schema",
"description": "JSON Schema describing supported HDF5 filters.",
"type": "object",
"$defs": {
"filter": {
"oneOf": [
{
"$ref": "#/$defs/deflate_filter"
},
{
"$ref": "#/$defs/fletcher32_filter"
},
{
"$ref": "#/$defs/lzf_filter"
},
{
"$ref": "#/$defs/nbit_filter"
},
{
"$ref": "#/$defs/scaleoffset_filter"
},
{
"$ref": "#/$defs/shuffle_filter"
},
{
"$ref": "#/$defs/szip_filter"
},
{
"$ref": "#/$defs/other_filter"
}
]
},
"other_filter": {
"type": "object",
"properties": {
"class": {
"const": "H5Z_FILTER_USER"
},
"id": {
"type": "integer",
"exclusiveMinimum": 0
},
"parameters": {
"type": "array",
"minItems": 1,
"items": {
"type": "integer",
"exclusiveMinimum": 0
}
}
},
"required": [
"class",
"id"
]
},
"deflate_filter": {
"type": "object",
"properties": {
"class": {
"const": "H5Z_FILTER_DEFLATE"
},
"id": {
"const": 1
},
"level": {
"type": "integer",
"minimum": 0,
"maximum": 9
}
},
"required": [
"class"
]
},
"fletcher32_filter": {
"type": "object",
"properties": {
"class": {
"const": "H5Z_FILTER_FLETCHER32"
},
"id": {
"const": 3
}
},
"required": [
"class"
]
},
"lzf_filter": {
"type": "object",
"properties": {
"class": {
"const": "H5Z_FILTER_LZF"
},
"id": {
"const": 32000
}
},
"required": [
"class"
]
},
"nbit_filter": {
"type": "object",
"properties": {
"class": {
"const": "H5Z_FILTER_NBIT"
},
"id": {
"const": 5
}
},
"required": [
"class"
]
},
"scaleoffset_filter": {
"type": "object",
"properties": {
"class": {
"const": "H5Z_FILTER_SCALEOFFSET"
},
"id": {
"const": 6
},
"scaleType": {
"type": "string",
"enum": [
"H5Z_SO_FLOAT_DSCALE",
"H5Z_SO_FLOAT_ESCALE",
"H5Z_SO_INT"
]
},
"scaleOffset": {
"type": "integer",
"minimum": 0
}
},
"required": [
"class",
"scaleType",
"scaleOffset"
]
},
"shuffle_filter": {
"type": "object",
"properties": {
"class": {
"const": "H5Z_FILTER_SHUFFLE"
},
"id": {
"const": 2
}
},
"required": [
"class"
]
},
"szip_filter": {
"type": "object",
"properties": {
"class": {
"const": "H5Z_FILTER_SZIP"
},
"id": {
"const": 4
},
"bitsPerPixel": {
"type": "integer",
"exclusiveMinimum": 0
},
"pixelsPerBlock": {
"type": "integer",
"exclusiveMinimum": 0
},
"pixelsPerScanline": {
"type": "integer",
"exclusiveMinimum": 0
},
"coding": {
"type": "string",
"enum": [
"H5_SZIP_EC_OPTION_MASK",
"H5_SZIP_NN_OPTION_MASK"
]
}
},
"required": [
"class"
]
}
}
}