You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Combine Classes STACAPIObjectMixin and Conformance
The STACAPIObjectMixin is a class that takes in a Conformance class to determine conformance. Combine the logic into a single Conformance class that can be added to other classes, currently:
Client: Used to determine basic required conformance initially
Search: Used to determine conformance of search endpoints/parameters
Conformance is not currently used, and the code for handling non-conformance needs to be added/updated.
I see this working as follows:
you can always open any STAC catalog-like object with Client
Most (all?) functions added in the Client class (which inherits from PySTAC Catalog) should require a conformance check. If non-conformant a ConformanceError is thrown with details.
If there is no conformsTo array, then assume this is a static catalog. Client will functionally work as a PySTAC Catalog, but most (all?) functions should return a ConformanceErrror
There should be an override parameter, ignore_conformance to the Client.open() function
Conformance is also used to determine if certain parameters to the ItemSearch class are allowed. Thus, the ItemSearch class should be passed a ConformanceClass that can be used to check if specific query parameters are allowed. (e.g., if ItemSearch gets a field kwarg and the field conformance is not present, a ConformanceError should be thrown.
The text was updated successfully, but these errors were encountered:
Combine Classes STACAPIObjectMixin and Conformance
The STACAPIObjectMixin is a class that takes in a Conformance class to determine conformance. Combine the logic into a single Conformance class that can be added to other classes, currently:
Conformance is not currently used, and the code for handling non-conformance needs to be added/updated.
I see this working as follows:
ignore_conformance
to the Client.open() functionfield
kwarg and the field conformance is not present, a ConformanceError should be thrown.The text was updated successfully, but these errors were encountered: