pub struct Root {
pub catalog: Catalog,
pub conformance: Conformance,
}
Expand description
The root landing page of a STAC API.
In a STAC API, the root endpoint (Landing Page) has the following characteristics:
- The returned JSON is a STAC Catalog, and provides any number of ‘child’ links to navigate to additional Catalog, Collection, and Item objects.
- The
links
attribute is part of a STAC Catalog, and provides a list of relations to API endpoints. Some of these endpoints can exist on any path (e.g., sub-catalogs) and some have a specified path (e.g.,/search
), so the client must inspect therel
(relationship) to understand what capabilities are offered at each location. - The
conformsTo
section provides the capabilities of this service. This is the field that indicates to clients that this is a STAC API and how to access conformance classes, including this one. The relevant conformance URIs are listed in each part of the API specification. If a conformance URI is listed then the service must implement all of the required capabilities.
Fields§
§catalog: Catalog
The stac::Catalog.
conformance: Conformance
Provides the capabilities of this service.
This is the field that indicates to clients that this is a STAC API and how to access conformance classes, including this one. The relevant conformance URIs are listed in each part of the API specification. If a conformance URI is listed then the service must implement all of the required capabilities.
Note the conformsTo
array follows the same structure of the OGC API -
Features declaration of conformance
classes,
except it is part of the landing page instead of in the JSON response
from the /conformance
endpoint. This is different from how the OGC API
advertises conformance, as STAC feels it is important for clients to
understand conformance from a single request to the landing page.
Implementers who implement the OGC API - Features and/or STAC API -
Features conformance classes must also implement the /conformance
endpoint.
The scope of the conformance classes declared in the
conformsTo
field and the /conformance
endpoint are limited to the
STAC API Catalog that declares them. A STAC API Catalog may link to
sub-catalogs within it via child
links that declare different
conformance classes. This is useful when an entire catalog cannot be
searched against to support the STAC API - Item Search conformance
class, perhaps because it uses multiple databases to store items, but
sub-catalogs whose items are all in one database can support search.
#[serde(rename = “conformsTo”)]
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Root
impl<'de> Deserialize<'de> for Root
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for Root
impl RefUnwindSafe for Root
impl Send for Root
impl Sync for Root
impl Unpin for Root
impl UnwindSafe for Root
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more