Skip to main content

Ontic

Welcome to Ontic, a package designed with making it easy to handle data objects. Ontic provides a pure data object representations that support object-style and dict-style attribute access. In addition, Ontic supports schema definition to aid in the validation and management of Ontic object instances.

By way of a quick preview:

  from ontic.ontic_type import OnticType, create_ontic_type, validate_object
  from ontic.schema_type import SchemaType
  # Define the schema
  schema = SchemaType(
  prop1={'type':'str','required':True},
  prop2={'type':'int','min':1}) 
  # Define an ontic type
  AType = create_ontic_type('AType', schema)
  # Use AType to create a data instance
  obj = AType()
  # Show off object and dict style property access
  obj.prop1 = 'Some Value'
  obj['prop2'] = 3
  # And the validation
  validate_object(obj)

Documentation

For the latest documentation, visit http://neoinsanity.github.io/ontic/

Getting Ontic

Installation

Use pip to install ontic.

pip install ontic

Source

The latest stable release source of Ontic can be found on the master branch at https://github.com/neoinsanity/ontic/tree/master.

For the latest development code, use the develop branch at https://github.com/neoinsanity/ontic. Please note that the development branch may change without notification.

To install Ontic from source utilize the setup.py:

python setup.py install

Project Development

If you are interested in developing Ontic code, utilize the helper scripts in the ontic/bin directory.

Setup the Development Environment

Prior to running the dev setup scripts, ensure that you have virtualenv installed. All setup commands are assumed to be run from the project root, which is the directory containing the setup.py file.

Prep the development environment with the command:

bin/dev_setup.sh

This command will setup the virtualenv for the project in the directory /venv. It will also install the Ontic in a develop mode, with the creation of a development egg file.

Enable the Development Environment

To make it easy to ensure a correctly configured development session, utilize the command:

. bin/enable_dev.sh

or

source bin/enable_dev.sh

Note that the script must be sourced, as it will enable a virtualenv session and add the bin directory scripts to environment PATH.

Running Tests

To run the unit tests:

run_tests.sh

Building Documentation

To run the documentation generation:

doc_build.sh

Metadata

Release files for ontic 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ontic 1.0.0
File Size Uploaded Provenance Actions
ontic-1.0.0.tar.gz 19.5 kB Without provenance Details for ontic-1.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for ontic 1.0.0
File Interpreter ABI Platform Actions
ontic-1.0.0-py3-none-any.whl Python 3 none any Details for ontic-1.0.0-py3-none-any.whl

Total release size: 40.6 kB

Release files / ontic-1.0.0.tar.gz

Download URL ontic-1.0.0.tar.gz
Size 19.5 kB
Tags Source
SHA-256 checksum
How to use checksums
51b1f49bb934f9b3e635aec92521fd156c0faeb98ea4dc4fb7fc3b6eb04abaed
BLAKE2b-256 checksum
How to use checksums
4ed97979c509be8a02fb8c971b4b3dba7a7a47b203fb272248f8de5b55e5e6d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.5

Release files / ontic-1.0.0-py3-none-any.whl

Download URL ontic-1.0.0-py3-none-any.whl
Size 21.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e3761de3d5fc9ae813cc15e78c8a3ca1c662860ff289e62eda45e5f9bc8b4741
BLAKE2b-256 checksum
How to use checksums
c0022973ac4a9a6d1fec32160a4d614d5a03cdd3c0c3d0e7351d3947827710ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.5

Security for ontic 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files No provenance

0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page