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

Can/Should Platformics support implicit many:many relationships? #67

Open
jgadling opened this issue Jun 27, 2024 · 0 comments
Open

Can/Should Platformics support implicit many:many relationships? #67

jgadling opened this issue Jun 27, 2024 · 0 comments

Comments

@jgadling
Copy link
Contributor

jgadling commented Jun 27, 2024

LinkML supports native list fields, and some schemas (example here) use this functionality to express many:many relationships between classes. Even if LinkML supports list fields natively, these are usually represented by a join table when mapped to an RDBMS. The official LinkML -> SQLAlchemy codegen handles these by creating a join table and using SA's secondary argument to make the relationship behave more like a simple list relationship on each side (example here)

Right now Platformics requires all many:many relationships to have an explicit Entity type of their own, so if a student is in multiple classes, schema authors are required to create an explicit StudentClass entity with a 1:many relationship between itself and students, and a 1:many relation between itself and classes.

What this ticket means:

  • Decide whether platformics can/should support implicit many:many relationships, and document the decision
  • Write up a spec for how this relationship should behave at the SA and GQL levels
  • Estimate the level of effort to implement the spec
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant