The schema of 3Di schematization files
Project description
threedi-schema
The schema of 3Di schematisation files.
This project exposes:
A ThreediDatabase object to interact with schematisation files.
A ModelSchema object (ThreediDatabase().schema) for adapting schema versions (called “migration”).
The 3Di schema as SQLAlchemy models and python Enum classes.*
*This package exposes SQLAlchemy models of the schematisation files directly. A minor release of this package may change these models and will be backwards incompatible. If the SQLAlchemy models are used, we strongly advise to fix the minor version as follows: threedi-schema==0.214.*. Otherwise, just fixing the major version is sufficient.
Example
The following code sample shows how you can upgrade a schematisation file:
from threedi_schema import ThreediDatabase db = ThreediDatabase("<Path to your sqlite file>") db.schema.upgrade()
The following code sample shows how you can list Channel objects:
from threedi_schema import models # NB: Ensure that you pin the minor version of threedi-schema # when using models (or constants). channels = db.get_session().query(models.Channel).all()
Command-line interface
Migrate to the latest schema version:
threedi_schema -s path/to/model.sqlite migrate
Ensure presence of spatial indexes:
threedi_schema -s path/to/model.sqlite index
Installation
Install with:
$ pip install threedi-schema
Changelog of threedi-schema
0.214.3 (2023-01-19)
Adapted versioning: prefix existing versions with 0.
Fixed deprecation warnings of Geoalchemy2 0.13.0
0.214.2 (2023-01-17)
Fixed packaging (also include migrations).
0.214.1 (2023-01-17)
Fixed packaging.
0.214.0 (2023-01-17)
Initial project structure created with cookiecutter and https://github.com/nens/cookiecutter-python-template
Ported code from threedi-modelchecker, rearranged into ‘domain’, ‘application’, ‘infrastructure’, ‘migrations’.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for threedi_schema-0.214.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c618e1160118255174b0052bc74e75a75ebf54e09bcf06b69e77e3893332a83d |
|
MD5 | 06e7ce11252748402ee3409f378dfb26 |
|
BLAKE2b-256 | b7da5c0fc7c29416cb04b0ad928ecaf506c815897866b047ce67535a2891a3ed |