pub struct Catalog {
pub version: Version,
pub extensions: Vec<String>,
pub id: String,
pub title: Option<String>,
pub description: String,
pub links: Vec<Link>,
pub additional_fields: Map<String, Value>,
/* private fields */
}
Expand description
A STAC Catalog object represents a logical group of other Catalog
,
Collection, and Item objects.
These Item
s can be linked to directly from a Catalog
, or the Catalog
can link to other Catalogs (often called sub-catalogs) that contain links to
Collection
s and Item
s. The division of sub-catalogs is up to the
implementor, but is generally done to aid the ease of online browsing by
people.
A Catalog
object will typically be the entry point into a STAC catalog.
Their purpose is discovery: to be browsed by people or be crawled by clients
to build a searchable index.
Fields§
§version: Version
The STAC version the Catalog
implements.
extensions: Vec<String>
A list of extension identifiers the Catalog
implements.
id: String
Identifier for the Catalog
.
title: Option<String>
A short descriptive one-line title for the Catalog
.
description: String
Detailed multi-line description to fully explain the Catalog
.
CommonMark 0.29 syntax MAY be used for rich text representation.
links: Vec<Link>
A list of references to other documents.
additional_fields: Map<String, Value>
Additional fields not part of the Catalog specification.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Catalog
impl<'de> Deserialize<'de> for Catalog
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>,
Source§impl Fields for Catalog
impl Fields for Catalog
Source§fn fields_mut(&mut self) -> &mut Map<String, Value>
fn fields_mut(&mut self) -> &mut Map<String, Value>
Source§fn set_field<S: Serialize>(
&mut self,
key: impl ToString,
value: S,
) -> Result<Option<Value>>
fn set_field<S: Serialize>( &mut self, key: impl ToString, value: S, ) -> Result<Option<Value>>
Source§fn fields_with_prefix<D: DeserializeOwned>(&self, prefix: &str) -> Result<D>
fn fields_with_prefix<D: DeserializeOwned>(&self, prefix: &str) -> Result<D>
Source§fn set_fields_with_prefix<S: Serialize>(
&mut self,
prefix: &str,
value: S,
) -> Result<()>
fn set_fields_with_prefix<S: Serialize>( &mut self, prefix: &str, value: S, ) -> Result<()>
Source§fn remove_fields_with_prefix(&mut self, prefix: &str)
fn remove_fields_with_prefix(&mut self, prefix: &str)
Source§impl FromGeoparquet for Catalog
impl FromGeoparquet for Catalog
Source§impl FromNdjson for Catalog
impl FromNdjson for Catalog
Source§impl IntoGeoparquet for Catalog
impl IntoGeoparquet for Catalog
Source§fn into_geoparquet_writer(
self,
_: impl Write + Send,
_: Option<Compression>,
) -> Result<(), Error>
fn into_geoparquet_writer( self, _: impl Write + Send, _: Option<Compression>, ) -> Result<(), Error>
Source§fn into_geoparquet_path(
self,
path: impl AsRef<Path>,
compression: Option<Compression>,
) -> Result<()>
fn into_geoparquet_path( self, path: impl AsRef<Path>, compression: Option<Compression>, ) -> Result<()>
Source§fn into_geoparquet_vec(
self,
compression: Option<Compression>,
) -> Result<Vec<u8>>
fn into_geoparquet_vec( self, compression: Option<Compression>, ) -> Result<Vec<u8>>
Source§impl Links for Catalog
impl Links for Catalog
Source§fn links_mut(&mut self) -> &mut Vec<Link>
fn links_mut(&mut self) -> &mut Vec<Link>
Source§fn link(&self, rel: &str) -> Option<&Link>
fn link(&self, rel: &str) -> Option<&Link>
Source§fn iter_child_links(&self) -> Box<dyn Iterator<Item = &Link> + '_>
fn iter_child_links(&self) -> Box<dyn Iterator<Item = &Link> + '_>
Source§fn iter_item_links(&self) -> Box<dyn Iterator<Item = &Link> + '_>
fn iter_item_links(&self) -> Box<dyn Iterator<Item = &Link> + '_>
Source§fn make_links_absolute(&mut self) -> Result<()>
fn make_links_absolute(&mut self) -> Result<()>
Source§fn make_links_relative(&mut self) -> Result<()>
fn make_links_relative(&mut self) -> Result<()>
Source§fn remove_relative_links(&mut self)
fn remove_relative_links(&mut self)
Source§fn remove_structural_links(&mut self)
fn remove_structural_links(&mut self)
Source§impl ToNdjson for Catalog
impl ToNdjson for Catalog
impl StructuralPartialEq for Catalog
Auto Trait Implementations§
impl Freeze for Catalog
impl RefUnwindSafe for Catalog
impl Send for Catalog
impl Sync for Catalog
impl Unpin for Catalog
impl UnwindSafe for Catalog
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FromJson for Twhere
T: DeserializeOwned + SelfHref,
impl<T> FromJson for Twhere
T: DeserializeOwned + SelfHref,
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