Explicit parameter names, split common to own types, site_id under resource#29
Merged
gabor-lbl merged 47 commits intodoe-iri:mainfrom Feb 7, 2026
Merged
Explicit parameter names, split common to own types, site_id under resource#29gabor-lbl merged 47 commits intodoe-iri:mainfrom
gabor-lbl merged 47 commits intodoe-iri:mainfrom
Conversation
…scovery endpoint This pull requests includes: - Implement /api/v1 to list metadata; - Implement /facility api (most fields are optional, and implemented based on the specification) - Capabilities, project include forbidExtraQueryParams to make validation happy. - Parse Raw query_string (catch duplicate keys) - Add HTTP 304 handling and return correct header
…scovery endpoint This pull requests includes: - Implement /api/v1 to list metadata; - Implement /facility api (most fields are optional, and implemented based on the specification) - Capabilities, project include forbidExtraQueryParams to make validation happy. - Parse Raw query_string (catch duplicate keys) - Add HTTP 304 handling and return correct header
Move common validators and base models into routers/dependencies and update imports across routers and schemas to use the new shared location. This keeps API behavior unchanged. No functional API changes — purely structural and validation hygiene:
…scovery endpoint This pull requests includes: - Implement /api/v1 to list metadata; - Implement /facility api (most fields are optional, and implemented based on the specification) - Capabilities, project include forbidExtraQueryParams to make validation happy. - Parse Raw query_string (catch duplicate keys) - Add HTTP 304 handling and return correct header
…scovery endpoint This pull requests includes: - Implement /api/v1 to list metadata; - Implement /facility api (most fields are optional, and implemented based on the specification) - Capabilities, project include forbidExtraQueryParams to make validation happy. - Parse Raw query_string (catch duplicate keys) - Add HTTP 304 handling and return correct header
Move common validators and base models into routers/dependencies and update imports across routers and schemas to use the new shared location. This keeps API behavior unchanged. No functional API changes — purely structural and validation hygiene:
…normalization This pull request introduces: - Use and add **kwargs to all adapter interfaces (with a shared warning function for unused parameters). This enables facilities to implement on their own pace, while continue to be compatible. - Use explicit keyword args - Add common pagination helper and expand filtering based on input values; - Unify datetime handling, normalize to UTC and use it in find;
This includes: - application/problem+json for error responses - Generate URL-safe instance values - Normalize non-string validation error into strings (fastapi validation can give list/dict) - Exclude None/empty fields from locations/capabilities reponses - Capability (according to spec) should use NamedObject, but overrides last_modified as optional.
Make adapter forward compatible. add filtering, pagination, datetime …
gabor-lbl
reviewed
Feb 7, 2026
|
|
||
| capability_ids: list[str] = Field(exclude=True) | ||
| # NOTE (TBR): If site_id is required, then located_at_uri should be also required. This can be easily identified by Site.self_uri | ||
| # Is there a specific Resource, that has no Site? |
Contributor
There was a problem hiding this comment.
I would imagine every IRI implementation has at least 1 site.
Re. localted_at_uri, that's something that could go into a client lib.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request includes:
Other small changes:
Some TODOs/Discussion points: