add and integrate Component, Schema objects

This commit is contained in:
2024-04-06 18:30:06 -07:00
parent 057e20163d
commit c58bc8cf06
65 changed files with 977 additions and 213 deletions

View File

@@ -11,7 +11,7 @@ Description-Content-Type: text/markdown
Requires-Dist: tqdm
# Overview
`co4` is a package for file conversion and associated database operations. The `CO4` base class
`co3` is a package for file conversion and associated database operations. The `CO3` base class
provides a standard interface for performing conversions, preparing inserts, and
interacting with database schemas that mirror the class hierarchy.
@@ -25,6 +25,23 @@ a known schema.
- **Indexer** to index/cache access queries
- **Manager** to manage storage state (e.g., supported inserts, database syncs)
- **Collector** to collect data for updating storage state
- **Database** to collect data for updating storage state
- **Mapper** to collect data for updating storage state
- **Component** to collect data for updating storage state
**CO4** is an abstract base class that makes it easy to integrate this model with object
**CO3** is an abstract base class that makes it easy to integrate this model with object
hierarchies that mirror a storage schema.
# Detailed structural breakdown
There are a few pillars of the CO3 model that meaningfully group up functionality:
- Database: generic to a Component type, provides basic connection to a database at a
specific address/location. The explicit Component type makes it easy to hook into
appropriately typed functional objects:
* Manager: generic to a Component and Database type, provides a supported set of
state-modifying operations to a constituent database
* Accessor: generic to a Component and Database type, provides a supported set of
state inspection operations on a constituent database
* Indexer:
- Mapper: generic to a Component, serves as the fundamental connective component between
types in the data representation hierarchy (CO3 subclasses) and database Components.

View File

@@ -5,12 +5,13 @@ co3/__init__.py
co3/accessor.py
co3/co3.py
co3/collector.py
co3/component.py
co3/composer.py
co3/database.py
co3/indexer.py
co3/manager.py
co3/mapper.py
co3/relation.py
co3/schema.py
co3.egg-info/PKG-INFO
co3.egg-info/SOURCES.txt
co3.egg-info/dependency_links.txt
@@ -20,6 +21,7 @@ co3/accessors/__init__.py
co3/accessors/fts.py
co3/accessors/sql.py
co3/accessors/vss.py
co3/components/__init__.py
co3/databases/__init__.py
co3/databases/fts.py
co3/databases/sql.py
@@ -28,7 +30,8 @@ co3/managers/__init__.py
co3/managers/fts.py
co3/managers/sql.py
co3/managers/vss.py
co3/relations/__init__.py
co3/schemas/__init__.py
co3/util/__init__.py
co3/util/db.py
co3/util/regex.py
co3/util/regex.py
co3/util/types.py