User Guide# Contents DLite Concepts Datamodel hierarchy Metadata semantics references Representing a datamodel (entity) dlite-validate Type system Simple unified access to all data types Errors and exceptions Reading error messages Python exceptions Controlling error messages Accessing errors at C-level Collections Semantics of a collection Example Storage plugins / Drivers Content Introduction How to make storage plugins available Using storages implicitly from Python Working with storages in Python Writing Python storage plugins Working with storages from C and Fortran MongoDB storage plugin Quick guide Initialize the MongoClient with more options Connect to Azure MongoDB Protocol plugins Directly access to protocols Creating protocol plugins Search paths Setting environment variables Appending to DLite path variables Using entry points Mappings Content Introduction Example Transactions Transaction parent and immutability Memory management Tools dlite-validate dlite-getuuid dlite-codegen dlite-env Code generation Content Introduction Example Custom extension of the metadata struct Code generation of meta-metadata Writing a template Configure behavior changes Environment variables General environment variables Generic environment variables DLite-specific environment variables Environment variables for controlling error handling Path handling when using the pre-packaged wheel (Linux, Windows) Features Short vocabulary