pub struct FlatItem {
pub extensions: Vec<String>,
pub id: String,
pub geometry: Option<Geometry>,
pub bbox: Option<Bbox>,
pub links: Vec<Link>,
pub assets: IndexMap<String, Asset>,
pub collection: Option<String>,
pub properties: Map<String, Value>,
/* private fields */
}Expand description
A FlatItem has all of its properties at the top level.
Some STAC representations, e.g. stac-geoparquet, use this “flat” representation.
Fields§
§extensions: Vec<String>This column is required, but can be empty if no STAC extensions were used.
id: StringRequired, should be unique within each collection
geometry: Option<Geometry>Defines the full footprint of the asset represented by this item, formatted according to RFC 7946, section 3.1.
The footprint should be the default GeoJSON geometry, though additional geometries can be included. Coordinates are specified in Longitude/Latitude or Longitude/Latitude/Elevation based on WGS 84.
bbox: Option<Bbox>Can be a 4 or 6 value vector, depending on dimension of the data.
links: Vec<Link>List of link objects to resources and related URLs.
assets: IndexMap<String, Asset>Dictionary of asset objects that can be downloaded, each with a unique key.
collection: Option<String>The ID of the collection this Item is a part of.
properties: Map<String, Value>Each property should use the relevant Parquet type, and be pulled out of the properties object to be a top-level Parquet field
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for FlatItem
impl<'de> Deserialize<'de> for FlatItem
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 FlatItem
impl RefUnwindSafe for FlatItem
impl Send for FlatItem
impl Sync for FlatItem
impl Unpin for FlatItem
impl UnsafeUnpin for FlatItem
impl UnwindSafe for FlatItem
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FromJson for Twhere
T: DeserializeOwned,
impl<T> FromJson for Twhere
T: DeserializeOwned,
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