libera_utils.io.umm_g.UMMGranule#

class libera_utils.io.umm_g.UMMGranule(*, GranuleUR: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1), ~annotated_types.MaxLen(max_length=250)], ProviderDates: ~typing.Annotated[list[~libera_utils.io.umm_g.ProviderDateType], ~annotated_types.MinLen(min_length=1), ~annotated_types.MaxLen(max_length=4)], CollectionReference: ~libera_utils.io.umm_g.CollectionReferenceType, MetadataSpecification: ~libera_utils.io.umm_g.MetadataSpecificationType = <factory>, AccessConstraints: ~libera_utils.io.umm_g.AccessConstraintsType | None = None, DataGranule: ~libera_utils.io.umm_g.DataGranuleType | None = None, PGEVersionClass: ~libera_utils.io.umm_g.PGEVersionClassType | None = None, TemporalExtent: ~libera_utils.io.umm_g.TemporalExtentType | None = None, SpatialExtent: ~libera_utils.io.umm_g.SpatialExtentType | None = None, OrbitCalculatedSpatialDomains: ~types.Annotated[list[~libera_utils.io.umm_g.OrbitCalculatedSpatialDomainType] | None, ~annotated_types.MinLen(min_length=1)] = None, MeasuredParameters: ~types.Annotated[list[~libera_utils.io.umm_g.MeasuredParameterType] | None, ~annotated_types.MinLen(min_length=1)] = None, Platforms: ~types.Annotated[list[~libera_utils.io.umm_g.PlatformType] | None, ~annotated_types.MinLen(min_length=1)] = None, Projects: ~types.Annotated[list[~libera_utils.io.umm_g.ProjectType] | None, ~annotated_types.MinLen(min_length=1)] = None, AdditionalAttributes: ~types.Annotated[list[~libera_utils.io.umm_g.AdditionalAttributeType] | None, ~annotated_types.MinLen(min_length=1)] = None, InputGranules: ~types.Annotated[list[~typing.Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=1), MaxLen(max_length=500)])]] | None, ~annotated_types.MinLen(min_length=1)] = None, TilingIdentificationSystem: ~libera_utils.io.umm_g.TilingIdentificationSystemType | None = None, CloudCover: float | None = None, RelatedUrls: ~types.Annotated[list[~libera_utils.io.umm_g.RelatedUrlType] | None, ~annotated_types.MinLen(min_length=1)] = None, NativeProjectionNames: list[~libera_utils.io.umm_g.ProjectionNameEnum] | None = None, GridMappingNames: list[~typing.Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=1), MaxLen(max_length=1024)])]] | None = None)#

Bases: BaseModel

The Unified Metadata Model (UMM) for Granule (UMM-G) defines the metadata structure for describing individual data granules in NASA’s Common Metadata Repository (CMR).

Attributes:
model_extra

Get extra fields set during validation.

model_fields_set

Returns the set of fields that have been explicitly set on this model instance.

Methods

copy(*[, include, exclude, update, deep])

Returns a copy of the model.

model_construct([_fields_set])

Creates a new instance of the Model class with validated data.

model_copy(*[, update, deep])

!!! abstract "Usage Documentation"

model_dump(*[, mode, include, exclude, ...])

!!! abstract "Usage Documentation"

model_dump_json(*[, indent, ensure_ascii, ...])

!!! abstract "Usage Documentation"

model_json_schema([by_alias, ref_template, ...])

Generates a JSON schema for a model class.

model_parametrized_name(params)

Compute the class name for parametrizations of generic classes.

model_post_init(context, /)

Override this method to perform additional initialization after __init__ and model_construct.

model_rebuild(*[, force, raise_errors, ...])

Try to rebuild the pydantic-core schema for the model.

model_validate(obj, *[, strict, extra, ...])

Validate a pydantic model instance.

model_validate_json(json_data, *[, strict, ...])

!!! abstract "Usage Documentation"

model_validate_strings(obj, *[, strict, ...])

Validate the given object with string data against the Pydantic model.

construct

dict

from_dataset

from_orm

json

parse_file

parse_obj

parse_raw

schema

schema_json

update_forward_refs

validate

__init__(**data: Any) None#

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Methods

from_dataset(input_dataset, **kwargs)

Attributes

model_computed_fields

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_extra

Get extra fields set during validation.

model_fields

model_fields_set

Returns the set of fields that have been explicitly set on this model instance.

GranuleUR

ProviderDates

CollectionReference

MetadataSpecification

AccessConstraints

DataGranule

PGEVersionClass

TemporalExtent

SpatialExtent

OrbitCalculatedSpatialDomains

MeasuredParameters

Platforms

Projects

AdditionalAttributes

InputGranules

TilingIdentificationSystem

CloudCover

RelatedUrls

NativeProjectionNames

GridMappingNames

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

property model_extra: dict[str, Any] | None#

Get extra fields set during validation.

Returns:

A dictionary of extra fields, or None if config.extra is not set to “allow”.

property model_fields_set: set[str]#

Returns the set of fields that have been explicitly set on this model instance.

Returns:

A set of strings representing the fields that have been set,

i.e. that were not filled from defaults.