Class AxisOrderAssessment
The result of Assess(IEnumerable<GeoPosition>, BoundingBox?, string?, bool, bool): whether a dataset's
positions are latitude first, the evidence behind the decision, and the
counts that support it. Readers attach it to the dataset model so hosts can
report it (s100 info, validation findings, the viewer's dataset
list).
public sealed record AxisOrderAssessment : IEquatable<AxisOrderAssessment>
- Inheritance
-
AxisOrderAssessment
- Implements
- Inherited Members
Properties
DeclaredExtent
The declared extent used as the anchor, if any.
public BoundingBox? DeclaredExtent { get; init; }
Property Value
Evidence
The anchor the decision rests on.
public required AxisOrderEvidence Evidence { get; init; }
Property Value
ExtentMayBeSwapped
Whether the positions fit the declared extent only swapped, but the extent is an ordinal GML envelope too loose around them to say whether the positions or the envelope are the swapped ones. The outcome is then Inconsistent.
public bool ExtentMayBeSwapped { get; init; }
Property Value
FitAsEncoded
The number of positions inside the declared extent as encoded, or 0 when there is no declared extent.
public int FitAsEncoded { get; init; }
Property Value
FitSwapped
The number of positions inside the declared extent with latitude and longitude swapped, or 0 when there is no declared extent.
public int FitSwapped { get; init; }
Property Value
IsNotice
Whether the outcome deserves a notice: anything other than AsEncoded.
public bool IsNotice { get; }
Property Value
IsWarning
Whether the outcome is a warning: the positions were swapped, or do not fit the declared extent. Unverified is a notice but not a warning.
public bool IsWarning { get; }
Property Value
Normalized
Whether the reader swapped the positions. True exactly when Outcome is Swapped and the reader normalises; a reader that only reports (for example for gridded coverages, whose georeferencing it does not rewrite) leaves this false.
public bool Normalized { get; init; }
Property Value
OutOfPhysicalBounds
The number of positions whose encoded latitude is beyond ±90°.
public int OutOfPhysicalBounds { get; init; }
Property Value
Outcome
The decision.
public required AxisOrderOutcome Outcome { get; init; }
Property Value
PositionCount
The number of positions checked.
public required int PositionCount { get; init; }
Property Value
Source
What the positions were checked from, for messages (for example
"/WaterLevel/WaterLevel.01/Positioning/geometryValues" or
"gml:pos/gml:posList").
public string? Source { get; init; }
Property Value
Methods
BuildMessage()
Builds a one-sentence, human-readable description of the outcome.
public string BuildMessage()