Skip to content

free_text

stac_fastapi.extensions.core.free_text.free_text

Free-text extension.

FreeTextAdvancedExtension

Bases: ApiExtension

Free-text Extension.

The Free-text extension adds an additional q parameter to /search requests which allows the caller to perform free-text queries against STAC metadata.

stac-api-extensions/freetext-search?tab=readme-ov-file#advanced

Source code in stac_fastapi/extensions/core/free_text/free_text.py
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
@attr.s
class FreeTextAdvancedExtension(ApiExtension):
    """Free-text Extension.

    The Free-text extension adds an additional `q` parameter to `/search` requests which
    allows the caller to perform free-text queries against STAC metadata.

    https://github.com/stac-api-extensions/freetext-search?tab=readme-ov-file#advanced

    """

    GET = FreeTextAdvancedExtensionGetRequest
    POST = FreeTextAdvancedExtensionPostRequest

    conformance_classes: List[str] = attr.ib(
        default=[
            FreeTextConformanceClasses.SEARCH_ADVANCED,
        ]
    )
    schema_href: Optional[str] = attr.ib(default=None)

    def register(self, app: FastAPI) -> None:
        """Register the extension with a FastAPI application.

        Args:
            app: target FastAPI application.

        Returns:
            None
        """
        pass

register

register(app: FastAPI) -> None

Register the extension with a FastAPI application.

Parameters:

  • app (FastAPI) –

    target FastAPI application.

Returns:

  • None

    None

Source code in stac_fastapi/extensions/core/free_text/free_text.py
 97
 98
 99
100
101
102
103
104
105
106
def register(self, app: FastAPI) -> None:
    """Register the extension with a FastAPI application.

    Args:
        app: target FastAPI application.

    Returns:
        None
    """
    pass

FreeTextConformanceClasses

Bases: str, Enum

Conformance classes for the Free-Text extension.

See stac-api-extensions/freetext-search

Source code in stac_fastapi/extensions/core/free_text/free_text.py
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
class FreeTextConformanceClasses(str, Enum):
    """Conformance classes for the Free-Text extension.

    See https://github.com/stac-api-extensions/freetext-search

    """

    # https://github.com/stac-api-extensions/freetext-search?tab=readme-ov-file#basic
    SEARCH = "https://api.stacspec.org/v1.0.0-rc.1/item-search#free-text"
    ITEMS = "https://api.stacspec.org/v1.0.0-rc.1/ogcapi-features#free-text"
    COLLECTIONS = "https://api.stacspec.org/v1.0.0-rc.1/collection-search#free-text"

    # https://github.com/stac-api-extensions/freetext-search?tab=readme-ov-file#advanced
    SEARCH_ADVANCED = (
        "https://api.stacspec.org/v1.0.0-rc.1/item-search#advanced-free-text"
    )
    ITEMS_ADVANCED = (
        "https://api.stacspec.org/v1.0.0-rc.1/ogcapi-features#advanced-free-text"
    )
    COLLECTIONS_ADVANCED = (
        "https://api.stacspec.org/v1.0.0-rc.1/collection-search#advanced-free-text"
    )

FreeTextExtension

Bases: ApiExtension

Free-text Extension.

The Free-text extension adds an additional q parameter to /search requests which allows the caller to perform free-text queries against STAC metadata.

stac-api-extensions/freetext-search?tab=readme-ov-file#basic

Source code in stac_fastapi/extensions/core/free_text/free_text.py
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
@attr.s
class FreeTextExtension(ApiExtension):
    """Free-text Extension.

    The Free-text extension adds an additional `q` parameter to `/search` requests which
    allows the caller to perform free-text queries against STAC metadata.

    https://github.com/stac-api-extensions/freetext-search?tab=readme-ov-file#basic

    """

    GET = FreeTextExtensionGetRequest
    POST = FreeTextExtensionPostRequest

    conformance_classes: List[str] = attr.ib(
        default=[
            FreeTextConformanceClasses.SEARCH,
        ]
    )
    schema_href: Optional[str] = attr.ib(default=None)

    def register(self, app: FastAPI) -> None:
        """Register the extension with a FastAPI application.

        Args:
            app: target FastAPI application.

        Returns:
            None
        """
        pass

register

register(app: FastAPI) -> None

Register the extension with a FastAPI application.

Parameters:

  • app (FastAPI) –

    target FastAPI application.

Returns:

  • None

    None

Source code in stac_fastapi/extensions/core/free_text/free_text.py
64
65
66
67
68
69
70
71
72
73
def register(self, app: FastAPI) -> None:
    """Register the extension with a FastAPI application.

    Args:
        app: target FastAPI application.

    Returns:
        None
    """
    pass