Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jakeroggenbuck/typeschemalib

A yaml like schema that can be used to check dictionaries for correct schema
https://github.com/jakeroggenbuck/typeschemalib

pip schema yaml

Last synced: about 1 month ago
JSON representation

A yaml like schema that can be used to check dictionaries for correct schema

Awesome Lists containing this project

README

        

# typeschemalib
A yaml like schema that can be used to check dictionaries for correct schema

## Schema file
#### schema example
```
point: Int
my_string: Str
grade: Float
```

#### data example
```json
{"point": 45, "my_string": "Hey", "grade": 4.5}
```

## Checking data for correct schema
### Test parse with stml file
```py
from typeschemalib import typeschemalib

if __name__ == "__main__":
data = {"point": 45, "my_string": "Hey", "grade": 4.5}

# Validate data from schema file
schema = "test.stml"
valid = typeschemalib.schema_check(schema, data)
print(valid)

# Validate data from list of schema
schema = ["point: Int", "my_string: Str", "grade: Int"]
valid = typeschemalib.schema_check(schema, data)
print(valid)

# Validate data from dict of values
schema = {"point": "Int", "my_string": "Str", "grade": "Int"}
valid = typeschemalib.schema_check(schema, data)
print(valid)
```

## Todo
Make schema have regex

Make documentation for stml writer

Add object type and class checker, isinstance issubclass `time: DateTimeObject`