Table of Contents

Class S104StationSeriesDataset

Namespace
EncDotNet.S100.Datasets.S104
Assembly
EncDotNet.S100.Datasets.S104.dll

Root data model for an S-104 Water Level dataset encoded as fixed-station time series in data coding format 1 or 8 (S-100 Part 10c §10.2.1).

public sealed class S104StationSeriesDataset
Inheritance
S104StationSeriesDataset
Inherited Members

Remarks

Station-series encodings are structurally different from the gridded dcf2 path modelled by S104Dataset: instead of a 2-D grid of values per time-step, each station carries an independent 1-D series of (height, trend) samples plus its own start/end timestamps and sampling interval. The two shapes share the S-104 Feature Catalogue's WaterLevel feature; the distinction is encoding, not taxonomy.

Properties

AxisOrder

The outcome of the dataset-level axis-order check on the station positions (issue #650), or null when there are no positions. When it is Swapped the reader has already swapped every station's latitude and longitude.

public AxisOrderAssessment? AxisOrder { get; init; }

Property Value

AxisOrderAssessment

DataCodingFormat

Data coding format — 1 for time-major fixed stations or 8 for station-major fixed stations (S-100 Part 10c §10.2.1).

public int DataCodingFormat { get; init; }

Property Value

int

DeclaredProductSpecification

The raw productSpecification string declared on the dataset root (e.g. "INT.IHO.S-104.2.0.0"), or null when the attribute is absent. S-100 Part 10c §10.2.1. Carried on the dataset itself so consumers holding only the dataset (coverage sources, catalog payloads) can report its declared edition.

public string? DeclaredProductSpecification { get; init; }

Property Value

string

Epoch

Epoch of the coordinate reference system (e.g. "G1762").

public string? Epoch { get; init; }

Property Value

string

GeographicIdentifier

A geographic description of the dataset coverage area.

public string? GeographicIdentifier { get; init; }

Property Value

string

HorizontalCRS

EPSG code of the horizontal coordinate reference system.

public int? HorizontalCRS { get; init; }

Property Value

int?

IssueDate

Issue date of the dataset (ISO 8601).

public string? IssueDate { get; init; }

Property Value

string

IssueTime

Issue time of the dataset as written (issueTime, e.g. 135227Z or 13:45:43.63); S100IssueTime combines it with IssueDate.

public string? IssueTime { get; init; }

Property Value

string

MaxTime

Latest sample timestamp across all stations, or null when Stations is empty.

public DateTime? MaxTime { get; init; }

Property Value

DateTime?

Metadata

Reference to an associated metadata file.

public string? Metadata { get; init; }

Property Value

string

MethodWaterLevelProduct

Method or source used to compute water level values (e.g. model name or "astronomical prediction").

public string? MethodWaterLevelProduct { get; init; }

Property Value

string

MinTime

Earliest sample timestamp across all stations, or null when Stations is empty.

public DateTime? MinTime { get; init; }

Property Value

DateTime?

Stations

Time-series stations contained in the dataset.

public required IReadOnlyList<WaterLevelStation> Stations { get; init; }

Property Value

IReadOnlyList<WaterLevelStation>

VerticalDatum

The S-100 verticalDatum code declared on the dataset root, or null when the attribute is absent (S-104 Ed 2.0.0 §10.2.4; S-100 register codelist, source identifier 996). Resolve to a label with EncDotNet.S100.DataModel.VerticalDatums.GetLabel.

public int? VerticalDatum { get; init; }

Property Value

int?

WaterLevelTrendThreshold

Threshold (in metres) used by viewer portrayal to distinguish "above" vs. "below" water-level reference. Read from the root-level waterLevelTrendThreshold attribute when present (UKHO astronomical-prediction files supply it); null when absent.

public double? WaterLevelTrendThreshold { get; init; }

Property Value

double?