Table of Contents

Class S201Dataset

Namespace
EncDotNet.S100.Datasets.S201
Assembly
EncDotNet.S100.Datasets.S201.dll

Root data model for an S-201 Aids to Navigation Information dataset, parsed from S-100 Part 10b GML encoding via EncDotNet.S100.Datasets.S201.S201DatasetReader.

public sealed class S201Dataset
Inheritance
S201Dataset
Inherited Members

Remarks

S-201 Edition 2.0.0 application schema namespace is http://www.iho.int/S-201/gml/cs0/1.0 and geometry uses the S-100 GML 5.0 profile namespace http://www.iho.int/s100gml/5.0. See the S-201 Edition 2.0.0 product specification (Aids to Navigation Information) and Annex A Data Classification and Encoding Guide for the full feature and attribute model.

Properties

AxisOrder

The outcome of the dataset-level axis-order check (issue #650), or null when the dataset has no positions. When it is Swapped the reader has already read every position longitude first.

public AxisOrderAssessment? AxisOrder { get; init; }

Property Value

AxisOrderAssessment

DatasetIdentifier

The dataset identifier (gml:id of the dataset root).

public string? DatasetIdentifier { get; init; }

Property Value

string

DeclaredEdition

The declared product-specification edition (e.g. "2.0.0") read from DatasetIdentificationInformation/productEdition, or null when the dataset declares none. S-100 Part 10b.

public string? DeclaredEdition { get; init; }

Property Value

string

Features

Feature instances contained in the dataset.

public required IReadOnlyList<S201Feature> Features { get; init; }

Property Value

IReadOnlyList<S201Feature>

InformationTypes

Information type instances contained in the dataset.

public required IReadOnlyList<S201InformationType> InformationTypes { get; init; }

Property Value

IReadOnlyList<S201InformationType>

ProductIdentifier

The product specification identifier (e.g. "S-201").

public string? ProductIdentifier { get; init; }

Property Value

string

Methods

Open(Stream)

Opens an S-201 dataset from a stream.

public static S201Dataset Open(Stream stream)

Parameters

stream Stream

Returns

S201Dataset

Open(string)

Opens an S-201 dataset from a file path.

public static S201Dataset Open(string path)

Parameters

path string

Returns

S201Dataset

ReadMetadata()

Produces the lightweight DatasetMetadata for this parsed dataset: declared specification and raw geographic extent (issue #460).

public DatasetMetadata ReadMetadata()

Returns

DatasetMetadata

ReadMetadata(Stream)

Reads only the lightweight DatasetMetadata for an S-201 dataset from stream (issue #460).

public static DatasetMetadata ReadMetadata(Stream stream)

Parameters

stream Stream

Returns

DatasetMetadata

ReadMetadata(string)

Reads only the lightweight DatasetMetadata for an S-201 dataset at path — its declared specification and geographic extent — for phased / deferred loading (issue #460).

public static DatasetMetadata ReadMetadata(string path)

Parameters

path string

Returns

DatasetMetadata

ResolveReferencedFeatures(S201Feature, string)

Returns the features whose Id matches one of the targets referenced by feature via the given role. Used for resolving association xlinks such as equipment ↔ host structure (S-201 Edition 2.0.0 Annex A — Structure/Equipment association role) without forcing callers to walk the raw FeatureReferences list.

public IEnumerable<S201Feature> ResolveReferencedFeatures(S201Feature feature, string role)

Parameters

feature S201Feature

The source feature whose references to follow.

role string

The xlink role / association name (e.g. "theParentFeature").

Returns

IEnumerable<S201Feature>

ResolveReferencedInformationTypes(S201Feature, string)

Returns the information types whose Id matches one of the bindings on feature via the given role. Used to walk feature → information-type associations such as AtoNStatus (binding to S201InformationType instances of type AtonStatusInformation).

public IEnumerable<S201InformationType> ResolveReferencedInformationTypes(S201Feature feature, string role)

Parameters

feature S201Feature
role string

Returns

IEnumerable<S201InformationType>