oceanum.datamesh.Datasource#
- pydantic model oceanum.datamesh.Datasource[source]#
Datasource
- Fields:
- Validators:
- field coordinates: Dict[Coordinates, str] = {}#
- Coordinates in datasource, referenced by standard coordinate keys. The dictionary keys map to coordinates variables in the datasource.
Ensemble: “e”
Rasterband: “b”
Category: “c”
Quantile: “q”
Season: “s”
Month: “m”
Time: “t”
Vertical: “z”
Northing: “y”
Easting: “x”
Station: “s” (Locations assumed stationary, datasource with a multigeometry indexed by station coordinate)
Geometry: “g” (Abstract coordinate - a 2 or 3D geometry that defines a feature location)
Frequency: “f”
Direction: “d”
Other 1: “i” (any other arbitrary coordinate)
Other 2: “j” (any other arbitrary coordinate)
Other 3: “k” (any other arbitrary coordinate)
Example {“t”:”time”,”x”:”longitude”,”y”:”latitude”}
- field created: datetime | None = datetime.datetime(2026, 4, 23, 19, 21, 8, 358383, tzinfo=datetime.timezone.utc)#
Time when the datasource was first created
- field dataschema: Schema | None = Schema(attrs={}, dims={}, coords={}, data_vars={}) (alias 'schema')#
Datasource schema
- field description: str | None = ''#
Description of datasource
- Constraints:
max_length = 1500
- field details: AnyHttpUrl | None = None#
URL to further details about the datasource
- field driver: str [Required]#
- field driver_args: dict | None = {} (alias 'args')#
Driver arguments for datasource. These are driver dependent.
- field expires: datetime | None = None#
Time when the datasource expires and should get automatically deleted
- field geom: Annotated[Point | MultiPoint | Polygon, _GeometryAnnotation] | None = None#
Valid shapely or geoJSON geometry describing the spatial extent of the datasource
- field id: str [Required]#
Unique ID for the datasource
- Constraints:
min_length = 3
max_length = 80
pattern = ^[a-z0-9-_]+$
- Validated by:
- field info: dict | None = {}#
Additional datasource descriptive metadata
- field labels: list | None = []#
Metadata labels related to the datasource. A given label can only be owned by one organisation.
- field modified: datetime | None = datetime.datetime(2026, 4, 23, 19, 21, 8, 358351, tzinfo=datetime.timezone.utc)#
Last time datasource was modified
- field name: str [Required]#
Human readable name for the datasource
- Constraints:
max_length = 128
- field parameters: dict | None = {}#
Additional parameters for accessing datasource
- field parchive: Annotated[timedelta, BeforeValidator(func=parse_period, json_schema_input_type=PydanticUndefined)] | None = None#
Duration of a rolling archive (time before present). Must be a valid ISO8601 interval string or None.
- field pforecast: Annotated[timedelta, BeforeValidator(func=parse_period, json_schema_input_type=PydanticUndefined)] | None = None#
Duration of a forecast horizon (time after present). Must be a valid ISO8601 interval string or None.
- field tags: list | None = []#
Metadata keyword tags related to the datasource
- field tend: datetime | None = None#
Latest time in datasource. Must be a valid ISO8601 datetime string
- field tstart: datetime | None = None#
Earliest time in datasource. Must be a valid ISO8601 datetime string
- model_post_init(context: Any, /) None#
This function is meant to behave like a BaseModel method to initialize private attributes.
It takes context as an argument since that’s what pydantic-core passes when calling it.
- Parameters:
self – The BaseModel instance.
context – The context.
- property attributes#
Datasource global attributes. Note that these are None (undefined) for a summary dataset.
- property bounds#
Bounding box of datasource geographical extent
- Type:
list[float]
- property geometry#
- property variables#
Datasource variables. Note that these are None (undefined) for a summary dataset.