Topics
Database schemas
Some databases claim to have no schemas. There is always a schema, even if it is only in the programmers' heads. Newt DB makes that schema explicit in a different place.
A schema on the client
In Newt DB there is no server side schema. Newt DB is object oriented on the client, and the schema is expressed semi formally by Python classes and their data expectations. The Python data model is therefore the real schema language.
Change is expected
Newt schemas are highly dynamic. It is easy to add and remove data elements. The ZODB documentation has tips on schema migration, including how to handle objects that were written by older versions of a class.
What PostgreSQL sees. PostgreSQL sees a fixed set of columns in the newt table, with object state in a jsonb column. The shape of that JSON can change per class and per record, which is why the schema lives in Python.