Class S100FeatureCatalogue
A feature catalogue (ISO 19110 / S-100 Part 5) — the lens through which an S100Dataset's features are read. Because decoding a feature's type name and attributes presupposes a feature catalogue, feature access lives here rather than on S100Dataset.
public sealed class S100FeatureCatalogue : IDisposable
- Inheritance
-
S100FeatureCatalogue
- Implements
- Inherited Members
Remarks
Use Bundled(string) for the official catalogue shipped in
EncDotNet.S100.Specifications, or FromStream(Stream) to
supply your own.
Methods
Bundled(string)
The official feature catalogue bundled in
EncDotNet.S100.Specifications for the given product specification.
public static S100FeatureCatalogue Bundled(string productSpec)
Parameters
productSpecstringProduct specification name (e.g.
"S-101").
Returns
Dispose()
Releases the catalogue parse cache held for a caller-supplied catalogue. A no-op for the bundled catalogue (which holds no per-instance resources).
public void Dispose()
EnumerateFeatures(S100Dataset)
Enumerates a lightweight summary of every feature in dataset,
with type names resolved through this catalogue.
public IReadOnlyList<FeatureSummary> EnumerateFeatures(S100Dataset dataset)
Parameters
datasetS100DatasetThe dataset to read features from.
Returns
- IReadOnlyList<FeatureSummary>
One FeatureSummary per feature; empty for coverage products.
FromStream(Stream)
A caller-supplied feature catalogue read from featureCatalogueXml.
The stream is buffered, so the caller may dispose it immediately after this call.
public static S100FeatureCatalogue FromStream(Stream featureCatalogueXml)
Parameters
featureCatalogueXmlStream
Returns
GetFeature(S100Dataset, string)
Returns information about the feature identified by featureRef,
decoded against this catalogue, or null if it cannot be found.
public FeatureInfo? GetFeature(S100Dataset dataset, string featureRef)
Parameters
datasetS100DatasetThe dataset to read the feature from.
featureRefstringThe feature reference string (dataset-specific id).