Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] Define GTFS Data Models with basic DB-like functionality #345

Open
3 tasks
e-lo opened this issue Apr 16, 2024 · 0 comments
Open
3 tasks

[FEATURE] Define GTFS Data Models with basic DB-like functionality #345

e-lo opened this issue Apr 16, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@e-lo
Copy link
Collaborator

e-lo commented Apr 16, 2024

User Story

As a developer, I'd like to rely on GTFS being in a specific format with specific types.
As a developer, I'd like abstract basic low-level functionality like foreign key validation to something happening in background.
As a user, I'd like to get clear error messages when my data is not valid so I understand what is wrong and how to fix it.

Priority

High

Level of Effort

Med-High

Resolution

  • Define basic GTFS tables as a Pandera schema
  • Define additional needs for Wrangler as subclasses of GTFS Pandera Schemas and write converters between them
  • Write custom Mixin class models/_base/db/DBModelMixin which abstracts foreign key validation and other generalizable tasks.

Tests

Tests are in /tests/test_models

@e-lo e-lo added the enhancement New feature or request label Apr 16, 2024
@e-lo e-lo added this to the v1.0 milestone Apr 16, 2024
@e-lo e-lo self-assigned this Apr 16, 2024
e-lo added a commit that referenced this issue Apr 16, 2024
Create base set of types and classes implemented in pandera and pydantic to efficiently validate GTFS and network data and foreign keys.

Fixes #266, #344 #123, and #345
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant