Skip to content

Module stac_fastapi.extensions.core.filter.filter

Filter Extension.

Classes

FilterConformanceClasses

class FilterConformanceClasses(
    /,
    *args,
    **kwargs
)

Conformance classes for the Filter extension.

See stac-api-extensions/filter

Ancestors (in MRO)

  • builtins.str
  • enum.Enum

Class variables

ACCENT_CASE_INSENSITIVE_COMPARISON
ADVANCED_COMPARISON_OPERATORS
ARITHMETIC
ARRAYS
BASIC_CQL2
BASIC_SPATIAL_OPERATORS
CQL2_JSON
CQL2_TEXT
FEATURES_FILTER
FILTER
FUNCTIONS
ITEM_SEARCH_FILTER
PROPERTY_PROPERTY
SPATIAL_OPERATORS
TEMPORAL_OPERATORS
name
value

FilterExtension

class FilterExtension(
    schema_href: Union[str, NoneType] = None,
    client: Union[stac_fastapi.types.core.AsyncBaseFiltersClient, stac_fastapi.types.core.BaseFiltersClient] = NOTHING,
    conformance_classes: List[str] = [<FilterConformanceClasses.FILTER: 'http://www.opengis.net/spec/ogcapi-features-3/1.0/conf/filter'>, <FilterConformanceClasses.FEATURES_FILTER: 'http://www.opengis.net/spec/ogcapi-features-3/1.0/conf/features-filter'>, <FilterConformanceClasses.ITEM_SEARCH_FILTER: 'https://api.stacspec.org/v1.0.0-rc.2/item-search#filter'>, <FilterConformanceClasses.BASIC_CQL2: 'http://www.opengis.net/spec/cql2/1.0/conf/basic-cql2'>, <FilterConformanceClasses.CQL2_JSON: 'http://www.opengis.net/spec/cql2/1.0/conf/cql2-json'>, <FilterConformanceClasses.CQL2_TEXT: 'http://www.opengis.net/spec/cql2/1.0/conf/cql2-text'>],
    router: fastapi.routing.APIRouter = NOTHING,
    response_class: Type[starlette.responses.Response] = <class 'stac_fastapi.api.models.JSONSchemaResponse'>
)

Filter Extension.

The filter extension adds several endpoints which allow the retrieval of queryables and provides an expressive mechanism for searching based on Item

Attributes

Name Type Description Default
client None Queryables endpoint logic None
conformance_classes None Conformance classes provided by the extension None

Ancestors (in MRO)

  • stac_fastapi.types.extension.ApiExtension
  • abc.ABC

Class variables

GET
POST

Methods

get_request_model

def get_request_model(
    self,
    verb: Union[str, NoneType] = 'GET'
) -> Union[pydantic.main.BaseModel, NoneType]

Return the request model for the extension.method.

The model can differ based on HTTP verb

register

def register(
    self,
    app: fastapi.applications.FastAPI
) -> None

Register the extension with a FastAPI application.

Parameters:

Name Type Description Default
app None target FastAPI application. None

Returns:

Type Description
None None