Class S201AtonInventory
Strongly-typed projection of an S201Dataset as an authoritative AtoN inventory (S-201 Edition 2.0.0).
public sealed class S201AtonInventory
- Inheritance
-
S201AtonInventory
- Inherited Members
Remarks
The inventory exposes typed AtoN objects (structures, equipment, lights, electronic AIS aids), back-resolved equipment ↔ host-structure subordination chains, lifecycle attributes, AtoN status timelines, and aggregation / association graphs.
Projection issues — unresolved xlinks, attribute parse failures, duplicate identifiers — surface as ProjectionDiagnostic entries rather than exceptions. The projection only throws when the source dataset has no features and no information types (i.e. is fully empty).
Distinct from S-125: the S-201 typed model exposes equipment ↔ host-structure subordination, AtoN lifecycle, AtoN status timelines, positioning / fixing-method bindings, AIS-AtoN MMSI, and remote-monitoring-system metadata — none of which appear in the (ECDIS-focused) S-125 typed model.
Properties
Aggregations
AtoN aggregations declared in the dataset.
public IReadOnlyList<S201AtonAggregation> Aggregations { get; init; }
Property Value
Associations
AtoN associations declared in the dataset.
public IReadOnlyList<S201AtonAssociation> Associations { get; init; }
Property Value
AtoNs
Every AtoN object in the dataset, in source order.
public required IReadOnlyList<S201AtonObject> AtoNs { get; init; }
Property Value
DatasetIdentifier
The dataset identifier carried by the source GML Dataset element.
public string? DatasetIdentifier { get; init; }
Property Value
ElectronicAtoNs
Typed view of AtoNs filtered to S201ElectronicAtoNs.
public IReadOnlyList<S201ElectronicAtoN> ElectronicAtoNs { get; init; }
Property Value
Equipment
Typed view of AtoNs filtered to S201Equipment (includes lights).
public IReadOnlyList<S201Equipment> Equipment { get; init; }
Property Value
FixingMethods
Fixing-method records (FC: AtoNFixingMethod).
public IReadOnlyList<S201AtoNFixingMethodRecord> FixingMethods { get; init; }
Property Value
PositioningInformation
Positioning information records (FC: PositioningInformation).
public IReadOnlyList<S201PositioningInformationRecord> PositioningInformation { get; init; }
Property Value
ProductIdentifier
The S-201 product identifier (typically "S-201").
public string? ProductIdentifier { get; init; }
Property Value
Source
The originating feature-bag dataset.
public required S201Dataset Source { get; init; }
Property Value
SpatialQualities
Spatial quality records (FC: SpatialQuality).
public IReadOnlyList<S201SpatialQuality> SpatialQualities { get; init; }
Property Value
StatusInformation
AtoN status information records (FC: AtonStatusInformation).
public IReadOnlyList<S201AtonStatusInformation> StatusInformation { get; init; }
Property Value
Structures
Typed view of AtoNs filtered to S201StructureObjects.
public IReadOnlyList<S201StructureObject> Structures { get; init; }
Property Value
Methods
From(S201Dataset, out IReadOnlyList<ProjectionDiagnostic>)
Projects a feature-bag S201Dataset into the typed
data model. Issues encountered during projection are reported
via diagnostics; the projection only throws
for a fully empty dataset.
public static S201AtonInventory From(S201Dataset dataset, out IReadOnlyList<ProjectionDiagnostic> diagnostics)
Parameters
datasetS201DatasetdiagnosticsIReadOnlyList<ProjectionDiagnostic>
Returns
Exceptions
- InvalidOperationException
Thrown if the dataset contains neither features nor information types.