Class S128CatalogueEntry
Abstract base for the three S-128 product feature classes
(ElectronicProduct, PhysicalProduct, S100Service).
public abstract class S128CatalogueEntry
- Inheritance
-
S128CatalogueEntry
- Derived
- Inherited Members
Remarks
The strongly-typed projection of an S128Dataset exposes products through this base type so that callers can iterate the catalogue uniformly without pattern matching on the concrete subclass. Use FeatureType or runtime type tests when product-class dispatch is required.
Properties
Classification
The catalogue element classification text (S-128 § 12 catalogueElementClassification).
public string? Classification { get; init; }
Property Value
Coordinates
Coordinates of the source feature (semantics depend on GeometryKind).
public IReadOnlyList<GeoPosition> Coordinates { get; init; }
Property Value
EditionNumber
The product edition number (S-128 § 12 attribute editionNumber).
public int? EditionNumber { get; init; }
Property Value
- int?
ExtraAttributes
Source attributes that the typed model did not consume.
public IReadOnlyDictionary<string, string> ExtraAttributes { get; init; }
Property Value
FeatureType
The product feature class (ElectronicProduct / PhysicalProduct / S100Service).
public required string FeatureType { get; init; }
Property Value
GeometryKind
Geometry primitive kind of the source feature.
public S128GeometryKind GeometryKind { get; init; }
Property Value
Id
The GML identifier of the source feature.
public required string Id { get; init; }
Property Value
IssueDate
The product issue date (S-128 § 12 attribute issueDate).
public DateTimeOffset? IssueDate { get; init; }
Property Value
NotForNavigation
Whether the feature carries notForNavigation="true".
public bool? NotForNavigation { get; init; }
Property Value
- bool?
OnlineResources
Online-resource records projected from onlineResource complex attributes.
public IReadOnlyList<S128OnlineResource> OnlineResources { get; init; }
Property Value
ProductNumber
The product number / dataset name carried by the feature (S-128 § 12 attribute productNumber, falling back to datasetName).
public string? ProductNumber { get; init; }
Property Value
ProductSpecificationName
Referenced product specification name (e.g. "S-101", "S-104") from productSpecification/name.
public string? ProductSpecificationName { get; init; }
Property Value
ProductSpecificationVersion
Referenced product specification version (from productSpecification/version).
public string? ProductSpecificationVersion { get; init; }
Property Value
RelatedProducts
All theReference cross-references whose mapping category did
not classify as supersession. Raw category text is preserved so
callers can dispatch on future enumeration extensions without an
enum revision (S-128 § 12).
public IReadOnlyList<S128ProductReference> RelatedProducts { get; }
Property Value
Source
The originating parsed feature.
public required S128Feature Source { get; init; }
Property Value
SupersededBy
Resolved entries that supersede this one — the inverse traversal of Supersedes.
public IReadOnlyList<S128CatalogueEntry> SupersededBy { get; }
Property Value
Supersedes
Resolved targets that this entry supersedes — populated from
theReference xlinks whose companion
ProductMapping/categoryOfProductMapping classifies as
HigherPriorityAlternative
(S-128 § 12).
public IReadOnlyList<S128CatalogueEntry> Supersedes { get; }
Property Value
UpdateDate
The product update / edition date (updateDate falling back to editionDate).
public DateTimeOffset? UpdateDate { get; init; }
Property Value
UpdateNumber
The product update number (S-128 § 12 attribute updateNumber).
public int? UpdateNumber { get; init; }
Property Value
- int?